def test_badgeclass_fetch_assertion(client, mocker): mocker.patch("badgrclient.BadgrClient._call_api") test_badge = BadgeClass(client, eid="s0ziri1LRpyrZs6cNQVnHw") test_badge.fetch_assertions("*****@*****.**") BadgrClient._call_api.assert_called_once_with( "/v2/badgeclasses/s0ziri1LRpyrZs6cNQVnHw/assertions", params={"recipient": "*****@*****.**"}, )
def test_create_badgeclass(client, mocker): mocker.patch("badgrclient.BadgrClient._call_api") BadgeClass(client).create( "Speak Up!", client.encode_image(TEST_IMAGE_PATH_PNG), "Participated in an IRC meeting.", "aeIo_u", criteria_url="https://github.com/dtgay/badges/blob/master/docs/badges.rst", # noqa: E501 tags=["irc", "community"], ) BadgrClient._call_api.assert_called_once_with( "/v2/badgeclasses", "POST", data={ "name": "Speak Up!", "issuer": "aeIo_u", "description": "Participated in an IRC meeting.", "criteria_url": "https://github.com/dtgay/badges/blob/master/docs/badges.rst", # noqa: E501 "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQYV2Ng+M9QDwADgQF/iwmQSQAAAABJRU5ErkJggg==", # noqa: E501 "tags": ["irc", "community"], "alignments": [], "expires": None, "criteria_text": None, }, )
def test_init_badgeclass_with_badge_name(loaded_badges_client, mocker): badge_to_test = TEST_BADGES[0] new_badgeclass = BadgeClass( loaded_badges_client, badge_name=badge_to_test.get("name"), issuer_eid="test", ) assert new_badgeclass.entityId == badge_to_test.get("entityId")
def test_create_badge_class_with_non_unique_name(loaded_badges_client): existing_badge = TEST_BADGES[0] with pytest.raises(BadgrClientError): BadgeClass(loaded_badges_client).create( name=existing_badge.get("name"), criteria_text="hahahaha", issuer_eid="test", image="idk", description="something", )
def loaded_badges_client(unique_badge_client, mocker): return_val = [ BadgeClass(unique_badge_client).set_data(get_badgeclass_data(**data)) for data in TEST_BADGES ] mocker.patch("badgrclient.Issuer.fetch_badgeclasses", return_value=return_val) unique_badge_client.load_badge_names("test") return unique_badge_client