Beispiel #1
0
    def test_multiple_with_state(self):
        channel_names = list(reversed(sorted(list(multiple_with_state['payload']['channels']))))
        response = PNHereNowResult.from_json(multiple_with_state, channel_names)
        channels = response.channels

        assert response.total_channels == 2
        assert response.total_occupancy == 2
        assert isinstance(channels, list)
        assert len(channels) == 2

        if channels[0].channel_name == channel_names[0]:
            channel1 = channels[0]
            channel2 = channels[1]
        else:
            channel1 = channels[1]
            channel2 = channels[0]

        assert channel1.channel_name == channel_names[0]
        assert channel1.occupancy == multiple_with_state['payload']['channels'][channel1.channel_name]['occupancy']
        assert len(channel1.occupants) == 1

        occupants = channel1.occupants[0]

        assert occupants.state['name'] == "Alex"
        assert occupants.state['count'] == 5
        assert occupants.uuid == multiple_with_state['payload']['channels'][channel1.channel_name]['uuids'][0]['uuid']

        assert channel2.channel_name == channel_names[1]
        assert channel2.occupancy == multiple_with_state['payload']['channels'][channel2.channel_name]['occupancy']
        assert len(channel2.occupants) == 1

        occupants = channel2.occupants[0]

        assert occupants.state is None
        assert occupants.uuid == multiple_with_state['payload']['channels'][channel2.channel_name]['uuids'][0]['uuid']
Beispiel #2
0
    def test_multiple(self):
        channel_names = list(multiple['payload']['channels'])
        response = PNHereNowResult.from_json(multiple, channel_names)
        channels = response.channels

        assert response.total_channels == 2
        assert response.total_occupancy == 2
        assert isinstance(channels, list)
        assert len(channels) == 2

        channel1 = channels[0]

        assert channel1.channel_name == channel_names[0]
        assert channel1.occupancy == multiple['payload']['channels'][channel_names[0]]['occupancy']
        assert len(channel1.occupants) == 1

        occupants = channel1.occupants[0]

        assert occupants.state is None
        assert occupants.uuid == multiple['payload']['channels'][channel_names[0]]['uuids'][0]

        channel2 = channels[1]

        assert channel2.channel_name == channel_names[1]
        assert channel2.occupancy == multiple['payload']['channels'][channel_names[1]]['occupancy']
        assert len(channel2.occupants) == 1

        occupants = channel2.occupants[0]

        assert occupants.state is None
        assert occupants.uuid == multiple['payload']['channels'][channel_names[1]]['uuids'][0]
Beispiel #3
0
    def test_empty_multiple(self):
        channel_names = ['blah']
        response = PNHereNowResult.from_json(empty_multiple, channel_names)
        channels = response.channels

        assert response.total_channels == 1
        assert response.total_occupancy == 0
        assert isinstance(channels, list)
        assert len(channels) == 1
Beispiel #4
0
    def test_single_disable_uuids(self):
        channel_names = ['blah']
        response = PNHereNowResult.from_json(single_disable_uuids, channel_names)
        channels = response.channels

        assert response.total_channels == 1
        assert response.total_occupancy == 1
        assert isinstance(channels, list)
        assert len(channels) == 1

        channel = channels[0]

        assert channel.channel_name == 'blah'
        assert channel.occupancy == 1
        assert len(channel.occupants) == 0
Beispiel #5
0
    def test_single_with_state(self):
        channel_names = ['blah']
        response = PNHereNowResult.from_json(single_with_state, channel_names)
        channels = response.channels

        assert response.total_channels == 1
        assert response.total_occupancy == 1
        assert isinstance(channels, list)
        assert len(channels) == 1

        channel = channels[0]

        assert channel.channel_name == 'blah'
        assert channel.occupancy == 1
        assert len(channel.occupants) == 1

        occupants = channel.occupants[0]

        assert occupants.uuid == single_with_state['uuids'][0]['uuid']
        assert occupants.state == single_with_state['uuids'][0]['state']
Beispiel #6
0
    def test_multiple_disable_uuids(self):
        channel_names = list(multiple_disable_uuids['payload']['channels'])
        response = PNHereNowResult.from_json(multiple_disable_uuids, channel_names)
        channels = response.channels

        assert response.total_channels == 2
        assert response.total_occupancy == 2
        assert isinstance(channels, list)
        assert len(channels) == 2

        channel1 = channels[0]

        assert channel1.channel_name == channel_names[0]
        assert channel1.occupancy == multiple_disable_uuids['payload']['channels'][channel_names[0]]['occupancy']
        assert channel1.occupants is None

        channel2 = channels[1]

        assert channel2.channel_name == channel_names[1]
        assert channel2.occupancy == multiple_disable_uuids['payload']['channels'][channel_names[1]]['occupancy']
        assert channel2.occupants is None
 def test_here_now(self):
     assert str(PNHereNowResult(
         7, 4,
         None)) == "HereNow Result total occupancy: 4, total channels: 7"
Beispiel #8
0
 def create_response(self, envelope):
     return PNHereNowResult.from_json(envelope, self._channels)