|
1 | | -import pytest |
2 | 1 | import json |
| 2 | + |
| 3 | +import pytest |
| 4 | + |
3 | 5 | from nba_api.library.http import NBAHTTP, NBAResponse |
4 | 6 | from nba_api.live.nba.endpoints import boxscore |
5 | 7 | from nba_api.live.wnba.library.http import WNBALiveHTTP |
6 | 8 |
|
7 | | - |
8 | 9 | content = { |
9 | 10 | "meta": { |
10 | 11 | "version": 1, |
11 | 12 | "code": 200, |
12 | 13 | "request": "http://nba.cloud/games/1022500153/boxscore?Format=json", |
13 | | - "time": "2025-07-24 23:07:22.884009" |
| 14 | + "time": "2025-07-24 23:07:22.884009", |
14 | 15 | }, |
15 | 16 | "game": { |
16 | 17 | "gameId": "1022500153", |
|
34 | 35 | "arenaCity": "Indianapolis", |
35 | 36 | "arenaState": "IN", |
36 | 37 | "arenaCountry": "US", |
37 | | - "arenaTimezone": "America/Indiana/Indianapolis" |
| 38 | + "arenaTimezone": "America/Indiana/Indianapolis", |
38 | 39 | }, |
39 | 40 | "officials": [ |
40 | 41 | { |
|
44 | 45 | "firstName": "Amy", |
45 | 46 | "familyName": "Bonner", |
46 | 47 | "jerseyNum": "31", |
47 | | - "assignment": "OFFICIAL2" |
| 48 | + "assignment": "OFFICIAL2", |
48 | 49 | }, |
49 | 50 | ], |
50 | 51 | "homeTeam": { |
|
55 | 56 | "score": 80, |
56 | 57 | "inBonus": "1", |
57 | 58 | "timeoutsRemaining": 1, |
58 | | - "periods": [ |
59 | | - { |
60 | | - "period": 1, |
61 | | - "periodType": "REGULAR", |
62 | | - "score": 18 |
63 | | - } |
64 | | - ], |
| 59 | + "periods": [{"period": 1, "periodType": "REGULAR", "score": 18}], |
65 | 60 | "players": [ |
66 | 61 | { |
67 | 62 | "status": "ACTIVE", |
|
105 | 100 | "turnovers": 0, |
106 | 101 | "twoPointersAttempted": 1, |
107 | 102 | "twoPointersMade": 1, |
108 | | - "twoPointersPercentage": 1.0 |
| 103 | + "twoPointersPercentage": 1.0, |
109 | 104 | }, |
110 | 105 | "name": "Sophie Cunningham", |
111 | 106 | "nameI": "S. Cunningham", |
112 | 107 | "firstName": "Sophie", |
113 | | - "familyName": "Cunningham" |
| 108 | + "familyName": "Cunningham", |
114 | 109 | } |
115 | 110 | ], |
116 | 111 | "statistics": { |
|
175 | 170 | "turnoversTotal": 14, |
176 | 171 | "twoPointersAttempted": 48, |
177 | 172 | "twoPointersMade": 18, |
178 | | - "twoPointersPercentage": 0.375 |
179 | | - } |
| 173 | + "twoPointersPercentage": 0.375, |
| 174 | + }, |
180 | 175 | }, |
181 | 176 | "awayTeam": { |
182 | 177 | "teamId": 1611661319, |
|
186 | 181 | "score": 70, |
187 | 182 | "inBonus": "0", |
188 | 183 | "timeoutsRemaining": 1, |
189 | | - "periods": [ |
190 | | - { |
191 | | - "period": 1, |
192 | | - "periodType": "REGULAR", |
193 | | - "score": 18 |
194 | | - } |
195 | | - ], |
| 184 | + "periods": [{"period": 1, "periodType": "REGULAR", "score": 18}], |
196 | 185 | "players": [ |
197 | 186 | { |
198 | 187 | "status": "ACTIVE", |
|
236 | 225 | "turnovers": 1, |
237 | 226 | "twoPointersAttempted": 10, |
238 | 227 | "twoPointersMade": 7, |
239 | | - "twoPointersPercentage": 0.7 |
| 228 | + "twoPointersPercentage": 0.7, |
240 | 229 | }, |
241 | 230 | "name": "Jackie Young", |
242 | 231 | "nameI": "J. Young", |
243 | 232 | "firstName": "Jackie", |
244 | | - "familyName": "Young" |
| 233 | + "familyName": "Young", |
245 | 234 | }, |
246 | 235 | ], |
247 | 236 | "statistics": { |
248 | | - "assists": 12, |
249 | | - "assistsTurnoverRatio": 0.857142857142857, |
250 | | - "benchPoints": 4, |
251 | | - "biggestLead": 8, |
252 | | - "biggestLeadScore": "26-18", |
253 | | - "biggestScoringRun": 14, |
254 | | - "biggestScoringRunScore": "26-18", |
255 | | - "blocks": 3, |
256 | | - "blocksReceived": 1, |
257 | | - "fastBreakPointsAttempted": 9, |
258 | | - "fastBreakPointsMade": 1, |
259 | | - "fastBreakPointsPercentage": 0.111111111111111, |
260 | | - "fieldGoalsAttempted": 67, |
261 | | - "fieldGoalsEffectiveAdjusted": 0.417910447761194, |
262 | | - "fieldGoalsMade": 27, |
263 | | - "fieldGoalsPercentage": 0.402985074626866, |
264 | | - "foulsOffensive": 3, |
265 | | - "foulsDrawn": 16, |
266 | | - "foulsPersonal": 21, |
267 | | - "foulsTeam": 18, |
268 | | - "foulsTechnical": 0, |
269 | | - "foulsTeamTechnical": 0, |
270 | | - "freeThrowsAttempted": 17, |
271 | | - "freeThrowsMade": 14, |
272 | | - "freeThrowsPercentage": 0.823529411764706, |
273 | | - "leadChanges": 11, |
274 | | - "minutes": "PT200M00.00S", |
275 | | - "minutesCalculated": "PT200M", |
276 | | - "points": 70, |
277 | | - "pointsAgainst": 80, |
278 | | - "pointsFastBreak": 2, |
279 | | - "pointsFromTurnovers": 16, |
280 | | - "pointsInThePaint": 38, |
281 | | - "pointsInThePaintAttempted": 40, |
282 | | - "pointsInThePaintMade": 19, |
283 | | - "pointsInThePaintPercentage": 0.475, |
284 | | - "pointsSecondChance": 10, |
285 | | - "reboundsDefensive": 28, |
286 | | - "reboundsOffensive": 9, |
287 | | - "reboundsPersonal": 37, |
288 | | - "reboundsTeam": 5, |
289 | | - "reboundsTeamDefensive": 1, |
290 | | - "reboundsTeamOffensive": 4, |
291 | | - "reboundsTotal": 42, |
292 | | - "secondChancePointsAttempted": 8, |
293 | | - "secondChancePointsMade": 5, |
294 | | - "secondChancePointsPercentage": 0.625, |
295 | | - "steals": 7, |
296 | | - "teamFieldGoalAttempts": 0, |
297 | | - "threePointersAttempted": 15, |
298 | | - "threePointersMade": 2, |
299 | | - "threePointersPercentage": 0.133333333333333, |
300 | | - "timeLeading": "PT12M21.00S", |
301 | | - "timesTied": 5, |
302 | | - "trueShootingAttempts": 74.48, |
303 | | - "trueShootingPercentage": 0.469924812030075, |
304 | | - "turnovers": 14, |
305 | | - "turnoversTeam": 0, |
306 | | - "turnoversTotal": 14, |
307 | | - "twoPointersAttempted": 52, |
308 | | - "twoPointersMade": 25, |
309 | | - "twoPointersPercentage": 0.480769230769231 |
310 | | - } |
311 | | - } |
312 | | - } |
| 237 | + "assists": 12, |
| 238 | + "assistsTurnoverRatio": 0.857142857142857, |
| 239 | + "benchPoints": 4, |
| 240 | + "biggestLead": 8, |
| 241 | + "biggestLeadScore": "26-18", |
| 242 | + "biggestScoringRun": 14, |
| 243 | + "biggestScoringRunScore": "26-18", |
| 244 | + "blocks": 3, |
| 245 | + "blocksReceived": 1, |
| 246 | + "fastBreakPointsAttempted": 9, |
| 247 | + "fastBreakPointsMade": 1, |
| 248 | + "fastBreakPointsPercentage": 0.111111111111111, |
| 249 | + "fieldGoalsAttempted": 67, |
| 250 | + "fieldGoalsEffectiveAdjusted": 0.417910447761194, |
| 251 | + "fieldGoalsMade": 27, |
| 252 | + "fieldGoalsPercentage": 0.402985074626866, |
| 253 | + "foulsOffensive": 3, |
| 254 | + "foulsDrawn": 16, |
| 255 | + "foulsPersonal": 21, |
| 256 | + "foulsTeam": 18, |
| 257 | + "foulsTechnical": 0, |
| 258 | + "foulsTeamTechnical": 0, |
| 259 | + "freeThrowsAttempted": 17, |
| 260 | + "freeThrowsMade": 14, |
| 261 | + "freeThrowsPercentage": 0.823529411764706, |
| 262 | + "leadChanges": 11, |
| 263 | + "minutes": "PT200M00.00S", |
| 264 | + "minutesCalculated": "PT200M", |
| 265 | + "points": 70, |
| 266 | + "pointsAgainst": 80, |
| 267 | + "pointsFastBreak": 2, |
| 268 | + "pointsFromTurnovers": 16, |
| 269 | + "pointsInThePaint": 38, |
| 270 | + "pointsInThePaintAttempted": 40, |
| 271 | + "pointsInThePaintMade": 19, |
| 272 | + "pointsInThePaintPercentage": 0.475, |
| 273 | + "pointsSecondChance": 10, |
| 274 | + "reboundsDefensive": 28, |
| 275 | + "reboundsOffensive": 9, |
| 276 | + "reboundsPersonal": 37, |
| 277 | + "reboundsTeam": 5, |
| 278 | + "reboundsTeamDefensive": 1, |
| 279 | + "reboundsTeamOffensive": 4, |
| 280 | + "reboundsTotal": 42, |
| 281 | + "secondChancePointsAttempted": 8, |
| 282 | + "secondChancePointsMade": 5, |
| 283 | + "secondChancePointsPercentage": 0.625, |
| 284 | + "steals": 7, |
| 285 | + "teamFieldGoalAttempts": 0, |
| 286 | + "threePointersAttempted": 15, |
| 287 | + "threePointersMade": 2, |
| 288 | + "threePointersPercentage": 0.133333333333333, |
| 289 | + "timeLeading": "PT12M21.00S", |
| 290 | + "timesTied": 5, |
| 291 | + "trueShootingAttempts": 74.48, |
| 292 | + "trueShootingPercentage": 0.469924812030075, |
| 293 | + "turnovers": 14, |
| 294 | + "turnoversTeam": 0, |
| 295 | + "turnoversTotal": 14, |
| 296 | + "twoPointersAttempted": 52, |
| 297 | + "twoPointersMade": 25, |
| 298 | + "twoPointersPercentage": 0.480769230769231, |
| 299 | + }, |
| 300 | + }, |
| 301 | + }, |
313 | 302 | } |
314 | 303 | game_details = { |
315 | 304 | "gameId": "1022500153", |
|
336 | 325 | "score": 80, |
337 | 326 | "inBonus": "1", |
338 | 327 | "timeoutsRemaining": 1, |
339 | | - "periods": [ |
340 | | - { |
341 | | - "period": 1, |
342 | | - "periodType": "REGULAR", |
343 | | - "score": 18 |
344 | | - } |
345 | | - ], |
| 328 | + "periods": [{"period": 1, "periodType": "REGULAR", "score": 18}], |
346 | 329 | "statistics": { |
347 | 330 | "assists": 17, |
348 | 331 | "assistsTurnoverRatio": 1.21428571428571, |
|
405 | 388 | "turnoversTotal": 14, |
406 | 389 | "twoPointersAttempted": 48, |
407 | 390 | "twoPointersMade": 18, |
408 | | - "twoPointersPercentage": 0.375 |
409 | | - } |
| 391 | + "twoPointersPercentage": 0.375, |
| 392 | + }, |
410 | 393 | } |
411 | 394 | away_team_stats = { |
412 | 395 | "teamId": 1611661319, |
|
416 | 399 | "score": 70, |
417 | 400 | "inBonus": "0", |
418 | 401 | "timeoutsRemaining": 1, |
419 | | - "periods": [ |
420 | | - { |
421 | | - "period": 1, |
422 | | - "periodType": "REGULAR", |
423 | | - "score": 18 |
424 | | - } |
425 | | - ], |
| 402 | + "periods": [{"period": 1, "periodType": "REGULAR", "score": 18}], |
426 | 403 | "statistics": { |
427 | 404 | "assists": 12, |
428 | 405 | "assistsTurnoverRatio": 0.857142857142857, |
|
485 | 462 | "turnoversTotal": 14, |
486 | 463 | "twoPointersAttempted": 52, |
487 | 464 | "twoPointersMade": 25, |
488 | | - "twoPointersPercentage": 0.480769230769231 |
489 | | - } |
| 465 | + "twoPointersPercentage": 0.480769230769231, |
| 466 | + }, |
490 | 467 | } |
491 | 468 |
|
492 | 469 | game_id = "1022500153" |
493 | 470 |
|
494 | 471 |
|
495 | 472 | @pytest.fixture |
496 | 473 | def nba_http_patch(monkeypatch): |
497 | | - class MockResponse(object): |
| 474 | + class MockResponse: |
498 | 475 | def __init__(*args, **kwargs): |
499 | 476 | pass |
500 | 477 |
|
|
0 commit comments