Exemplo n.º 1
0
def test_get_streams_metadata_raises_attribute_exception_for_invalid_params(param, value):
    responses.add(responses.GET,
                  '{}streams/metadata'.format(BASE_HELIX_URL),
                  body=json.dumps(example_get_streams_metadata_response),
                  status=200,
                  content_type='application/json')

    client = TwitchHelix('client id')

    kwargs = {param: value}
    with pytest.raises(TwitchAttributeException):
        client.get_streams_metadata(**kwargs)

    assert len(responses.calls) == 0
Exemplo n.º 2
0
def test_get_streams_metadata_next_returns_stream_metadata_object():
    responses.add(
        responses.GET,
        "{}streams/metadata".format(BASE_HELIX_URL),
        body=json.dumps(example_get_streams_metadata_response),
        status=200,
        content_type="application/json",
    )

    client = TwitchHelix("client id")
    streams_metadata = client.get_streams_metadata()

    metadata = streams_metadata.next()

    assert len(responses.calls) == 1
    assert isinstance(streams_metadata, APICursor)
    assert (
        streams_metadata._cursor
        == example_get_streams_metadata_response["pagination"]["cursor"]
    )

    assert isinstance(metadata, StreamMetadata)
    assert (
        metadata.user_id == example_get_streams_metadata_response["data"][0]["user_id"]
    )
    assert (
        metadata.game_id == example_get_streams_metadata_response["data"][0]["game_id"]
    )
Exemplo n.º 3
0
def test_get_streams_metadata_returns_api_cursor():
    responses.add(responses.GET,
                  '{}streams/metadata'.format(BASE_HELIX_URL),
                  body=json.dumps(example_get_streams_metadata_response),
                  status=200,
                  content_type='application/json')

    client = TwitchHelix('client id')
    streams_metadata = client.get_streams_metadata()

    assert len(responses.calls) == 1
    assert isinstance(streams_metadata, APICursor)
Exemplo n.º 4
0
def test_get_streams_metadata_next_returns_stream_metadata_object():
    responses.add(responses.GET,
                  '{}streams/metadata'.format(BASE_HELIX_URL),
                  body=json.dumps(example_get_streams_metadata_response),
                  status=200,
                  content_type='application/json')

    client = TwitchHelix('client id')
    streams_metadata = client.get_streams_metadata()

    metadata = streams_metadata.next()

    assert len(responses.calls) == 1
    assert isinstance(streams_metadata, APICursor)
    assert streams_metadata._cursor == example_get_streams_metadata_response['pagination']['cursor']

    assert isinstance(metadata, StreamMetadata)
    assert metadata.user_id == example_get_streams_metadata_response['data'][0]['user_id']
    assert metadata.game_id == example_get_streams_metadata_response['data'][0]['game_id']
Exemplo n.º 5
0
def test_get_streams_metadata_passes_all_params_to_request():
    responses.add(
        responses.GET,
        "{}streams/metadata".format(BASE_HELIX_URL),
        body=json.dumps(example_get_streams_metadata_response),
        status=200,
        content_type="application/json",
    )

    client = TwitchHelix("client id")
    streams_metadata = client.get_streams_metadata(
        after="eyJiIjpudWxsLCJhIjp7Ik9mZnNldCI6MjB9fQ==",
        before="eyJiIjp7Ik9mZnNldCI6MH0sImEiOnsiT2Zmc2V0Ijo0MH19==",
        community_ids=[
            "848d95be-90b3-44a5-b143-6e373754c382",
            "fd0eab99-832a-4d7e-8cc0-04d73deb2e54",
        ],
        page_size=100,
        game_ids=["417752", "29307"],
        languages=["en"],
        user_ids=["23161357"],
        user_logins=["lirik"],
    )

    metadata = streams_metadata.next()

    assert len(responses.calls) == 1
    assert isinstance(streams_metadata, APICursor)
    assert isinstance(metadata, StreamMetadata)

    url = responses.calls[0].request.url
    assert url.startswith("https://api.twitch.tv/helix/streams/metadata?")
    assert "after=eyJiIjpudWxsLCJhIjp7Ik9mZnNldCI6MjB9fQ%3D%3D" in url
    assert "before=eyJiIjp7Ik9mZnNldCI6MH0sImEiOnsiT2Zmc2V0Ijo0MH19%3D%3D" in url
    assert "community_id=848d95be-90b3-44a5-b143-6e373754c382" in url
    assert "community_id=fd0eab99-832a-4d7e-8cc0-04d73deb2e54" in url
    assert "first=100" in url
    assert "game_id=417752" in url
    assert "game_id=29307" in url
    assert "language=en" in url
    assert "user_id=23161357" in url
    assert "user_login=lirik" in url
Exemplo n.º 6
0
def test_get_streams_metadata_passes_all_params_to_request():
    responses.add(responses.GET,
                  '{}streams/metadata'.format(BASE_HELIX_URL),
                  body=json.dumps(example_get_streams_metadata_response),
                  status=200,
                  content_type='application/json')

    client = TwitchHelix('client id')
    streams_metadata = client.get_streams_metadata(
        after='eyJiIjpudWxsLCJhIjp7Ik9mZnNldCI6MjB9fQ==',
        before='eyJiIjp7Ik9mZnNldCI6MH0sImEiOnsiT2Zmc2V0Ijo0MH19==',
        community_ids=[
            '848d95be-90b3-44a5-b143-6e373754c382',
            'fd0eab99-832a-4d7e-8cc0-04d73deb2e54'
        ],
        page_size=100,
        game_ids=['417752', '29307'],
        languages=['en'],
        user_ids=['23161357'],
        user_logins=['lirik']
    )

    metadata = streams_metadata.next()

    assert len(responses.calls) == 1
    assert isinstance(streams_metadata, APICursor)
    assert isinstance(metadata, StreamMetadata)

    url = responses.calls[0].request.url
    assert url.startswith('https://api.twitch.tv/helix/streams/metadata?')
    assert 'after=eyJiIjpudWxsLCJhIjp7Ik9mZnNldCI6MjB9fQ%3D%3D' in url
    assert 'before=eyJiIjp7Ik9mZnNldCI6MH0sImEiOnsiT2Zmc2V0Ijo0MH19%3D%3D' in url
    assert 'community_id=848d95be-90b3-44a5-b143-6e373754c382' in url
    assert 'community_id=fd0eab99-832a-4d7e-8cc0-04d73deb2e54' in url
    assert 'first=100' in url
    assert 'game_id=417752' in url
    assert 'game_id=29307' in url
    assert 'language=en' in url
    assert 'user_id=23161357' in url
    assert 'user_login=lirik' in url
Exemplo n.º 7
0
#print(channel.display_name)


client = TwitchHelix(client_id='x2nlpgpmb4nn6m1o1vby49mif3qeqy')
streams_iterator = client.get_streams(page_size=100)
for stream in islice(streams_iterator, 0, 5):
    print(stream)

client = TwitchClient(client_id='x2nlpgpmb4nn6m1o1vby49mif3qeqy')
users = client.users.translate_usernames_to_ids(['vektv', 'jukes','officialf0xey'])
for user in users:
  print('{}: {}'.format(user.name, user.id))


client = TwitchHelix(client_id='x2nlpgpmb4nn6m1o1vby49mif3qeqy')
streams_iterator = client.get_streams_metadata(page_size=100,user_ids=[77208443])
for stream in islice(streams_iterator, 0, 5):
    print(stream)

client = TwitchHelix(client_id='x2nlpgpmb4nn6m1o1vby49mif3qeqy')
games_iterator = client.get_top_games(page_size=100)
for game in islice(games_iterator, 0, 10):
    print(game)

print("\n")
client = TwitchHelix(client_id='x2nlpgpmb4nn6m1o1vby49mif3qeqy')
#games_iterator = client.get_games(game_ids=['509658'])#names=['Counter-Strike: Global Offensive'])
games_iterator = client.get_games(names=["Counter-Strike: Global Offensive","FIFA 19","NHL 19"])
for game in islice(games_iterator, 0, 10):
    print(game)
Exemplo n.º 8
0
def streams_metadata():
    client = TwitchHelix()
    streams_metadata_iterator = client.get_streams_metadata()
    for metadata in islice(streams_metadata_iterator, 0, 10):
        print(metadata)