def test_parse_no_json(): generated_events = [] with pytest.raises(ValueError) as err: for event in beatmapset_event_parser.parse(soupify("")): generated_events.append(event) assert len(generated_events) == 0 assert "Missing either json-events or json-users" in str(err)
<a class="beatmap-discussion-user-card__user-link" href="https://osu.ppy.sh/users/197805"> <span class="beatmap-discussion-user-card__user-text u-ellipsis-overflow">Niva</span> </a> <a class="beatmap-discussion-user-card__user-modding-history-link" href="https://osu.ppy.sh/users/197805/modding" title="View modding history"> <i class="fas fa-align-left"></i> </a> </div> <div class="beatmap-discussion-user-card__user-badge"> <div class="user-group-badge user-group-badge--alumni"></div> </div> </div> <div class="beatmap-discussion-user-card__user-stripe"></div> </div> <div class="beatmap-discussion-post__message-container"> <div class="beatmap-discussion-post__message">((in a more serious note tho : 04:05:694 (1) - aimod tells that this slider's end is not snapped properly))</div> <div class="beatmap-discussion-post__info-container"> <span class="beatmap-discussion-post__info"><time class="js-timeago" datetime="2019-12-05T16:50:10+00:00" title="December 5, 2019 at 4:50:10 PM UTC">about 2 hours ago</time></span> </div> </div> </div> </div> </div> <div class="beatmap-discussion__line beatmap-discussion__line--resolved"></div> </div> </div> </div> </div> """ soup: BeautifulSoup = soupify(HTML)
USER_JSON = """ [ { "avatar_url": "https://a.ppy.sh/10660777?1589014084.jpeg", "country_code": "TH", "default_group": "default", "id": 10660777, "is_active": true, "is_bot": false, "is_online": true, "is_supporter": true, "last_visit": "2020-10-17T16:08:00+00:00", "pm_friends_only": false, "profile_colour": null, "username": "******", "groups": [] } ] """ HTML = f""" <script id="json-events" type="application/json"> {EVENTS_JSON} </script> <script id="json-users" type="application/json"> {USER_JSON} </script> """ soup = soupify(HTML)