from disco.gateway.events import GatewayEvent, Resumed


def create_resumed_payload():
    return GatewayEvent.from_dispatch(None, {
        't': 'RESUMED',
        'd': {
            '_trace': ['test', '1', '2', '3'],
        }
    })


def test_from_dispatch():
    event = create_resumed_payload()
    assert isinstance(event, Resumed)
    assert event.trace == ['test', '1', '2', '3']


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {
        't': 'GUILD_ROLE_CREATE',
        'd': {
            'role': {
                'id': 1,
                'name': 'test',
                'color': 1,
                'hoist': True,
                'position': 0,
                'permissions': 0,
                'managed': False,
                'mentionable': False,
            },
            'guild_id': 2,
        }
    })

    assert event.guild_id == 2
    assert event.role.guild_id == 2


def test_guild_role_update_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {
        't': 'GUILD_ROLE_UPDATE',
        'd': {
            'role': {
                'id': 1,
                'name': 'test',
                'color': 1,
                'hoist': True,
                'position': 0,
                'permissions': 0,
                'managed': False,
                'mentionable': False,
            },
            'guild_id': 2,
        }
    })

    assert event.guild_id == 2
    assert event.role.guild_id == 2

b66a2798027c82303948565329310e1ad39b9f60
<mask token>


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_CREATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2


<mask token>

<mask token>


def create_resumed_payload():
    return GatewayEvent.from_dispatch(None, {'t': 'RESUMED', 'd': {'_trace':
        ['test', '1', '2', '3']}})


def test_from_dispatch():
    event = create_resumed_payload()
    assert isinstance(event, Resumed)
    assert event.trace == ['test', '1', '2', '3']


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_CREATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2


<mask token>

<mask token>


def create_resumed_payload():
    return GatewayEvent.from_dispatch(None, {'t': 'RESUMED', 'd': {'_trace':
        ['test', '1', '2', '3']}})


def test_from_dispatch():
    event = create_resumed_payload()
    assert isinstance(event, Resumed)
    assert event.trace == ['test', '1', '2', '3']


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_CREATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2


def test_guild_role_update_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_UPDATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2

from disco.gateway.events import GatewayEvent, Resumed


def create_resumed_payload():
    return GatewayEvent.from_dispatch(None, {'t': 'RESUMED', 'd': {'_trace':
        ['test', '1', '2', '3']}})


def test_from_dispatch():
    event = create_resumed_payload()
    assert isinstance(event, Resumed)
    assert event.trace == ['test', '1', '2', '3']


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_CREATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2


def test_guild_role_update_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {'t': 'GUILD_ROLE_UPDATE', 'd':
        {'role': {'id': 1, 'name': 'test', 'color': 1, 'hoist': True,
        'position': 0, 'permissions': 0, 'managed': False, 'mentionable': 
        False}, 'guild_id': 2}})
    assert event.guild_id == 2
    assert event.role.guild_id == 2

from disco.gateway.events import GatewayEvent, Resumed


def create_resumed_payload():
    return GatewayEvent.from_dispatch(None, {
        't': 'RESUMED',
        'd': {
            '_trace': ['test', '1', '2', '3'],
        }
    })


def test_from_dispatch():
    event = create_resumed_payload()
    assert isinstance(event, Resumed)
    assert event.trace == ['test', '1', '2', '3']


def test_event_creation(benchmark):
    benchmark(create_resumed_payload)


def test_guild_role_create_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {
        't': 'GUILD_ROLE_CREATE',
        'd': {
            'role': {
                'id': 1,
                'name': 'test',
                'color': 1,
                'hoist': True,
                'position': 0,
                'permissions': 0,
                'managed': False,
                'mentionable': False,
            },
            'guild_id': 2,
        }
    })

    assert event.guild_id == 2
    assert event.role.guild_id == 2


def test_guild_role_update_guild_id_attach():
    event = GatewayEvent.from_dispatch(None, {
        't': 'GUILD_ROLE_UPDATE',
        'd': {
            'role': {
                'id': 1,
                'name': 'test',
                'color': 1,
                'hoist': True,
                'position': 0,
                'permissions': 0,
                'managed': False,
                'mentionable': False,
            },
            'guild_id': 2,
        }
    })

    assert event.guild_id == 2
    assert event.role.guild_id == 2
