async def test_multicast_scan( udns_server: fake_udns.FakeUdns, multicast_scan: Scanner, ): udns_server.add_service( fake_udns.mrp_service("Apple TV", "Apple TV MRP", MRP_ID_1, address=IP_1)) udns_server.add_service( fake_udns.homesharing_service("abcd", "Apple TV HS 2", HSGID, address=IP_2)) udns_server.add_service( fake_udns.device_service("efgh", "Apple TV Device", address=IP_3)) atvs = await multicast_scan() assert len(atvs) == 3 # First device dev1 = _get_atv(atvs, IP_1) assert dev1 assert dev1.identifier == MRP_ID_1 # Second device dev2 = _get_atv(atvs, IP_2) assert dev2 assert dev2.identifier == "abcd" # Third device dev3 = _get_atv(atvs, IP_3) assert dev3 assert dev3.identifier == "efgh"
async def test_scan_no_homesharing(self): self.server.add_service( fake_udns.device_service('Apple TV', 'Apple TV Device')) atvs = await self.scan() self.assertEqual(len(atvs), 1) self.assertDevice(atvs[0], 'Apple TV Device', IP_LOCALHOST, 'Apple TV', Protocol.DMAP, 3689)
async def test_scan_no_homesharing(udns_server, udns_scan): udns_server.add_service(fake_udns.device_service("Apple TV", "Apple TV Device")) atvs = await udns_scan() assert len(atvs) == 1 assert_device( atvs[0], "Apple TV Device", IP_LOCALHOST, "Apple TV", Protocol.DMAP, 3689 )
async def test_multicast_scan_no_home_sharing(udns_server, multicast_scan): udns_server.add_service( fake_udns.device_service("efgh", "Apple TV Device", addresses=[IP_3])) atvs = await multicast_scan() assert len(atvs) == 1 assert_device(atvs[0], "Apple TV Device", ip_address(IP_3), "efgh", Protocol.DMAP, 3689)
async def test_multicast_scan_home_sharing_merge(udns_server, multicast_scan): udns_server.add_service( fake_udns.device_service("efgh", "Apple TV Device", address=IP_3)) udns_server.add_service( fake_udns.homesharing_service("efgh", "Apple TV Device", HSGID, address=IP_3)) atvs = await multicast_scan() assert len(atvs) == 1 assert_device(atvs[0], "Apple TV Device", ip_address(IP_3), "efgh", Protocol.DMAP, 3689, HSGID)
async def test_unicast_scan_no_homesharing(udns_server, unicast_scan): udns_server.add_service( fake_udns.device_service("Apple TV", "Apple TV Device", address=IP_2)) atvs = await unicast_scan() assert len(atvs) == 1 assert_device( atvs[0], "Apple TV Device", ip_address(IP_2), "Apple TV", Protocol.DMAP, 3689, )
async def test_multicast_scan_mrp(udns_server, multicast_scan): udns_server.add_service( fake_udns.mrp_service("Apple TV 1", "Apple TV MRP 1", MRP_ID_1, addresses=[IP_1])) udns_server.add_service( fake_udns.device_service("efgh", "Apple TV Device", addresses=[IP_3])) atvs = await multicast_scan(protocol=Protocol.MRP) assert len(atvs) == 1 dev1 = _get_atv(atvs, IP_1) assert dev1 assert dev1.name == "Apple TV MRP 1" assert dev1.get_service(Protocol.MRP)
async def test_unicast_scan_no_homesharing(udns_server, unicast_scan): udns_server.add_service( fake_udns.device_service(DMAP_SERVICE_NAME, DMAP_NAME, addresses=[IP_1])) atvs = await unicast_scan() assert len(atvs) == 1 assert_device( atvs[0], DMAP_NAME, ip_address(IP_1), DMAP_SERVICE_NAME, Protocol.DMAP, 3689, )
async def test_multicast_scan_home_sharing_merge(udns_server, multicast_scan): udns_server.add_service( fake_udns.device_service(DMAP_SERVICE_NAME, DMAP_NAME, addresses=[IP_1])) udns_server.add_service( fake_udns.homesharing_service(DMAP_SERVICE_NAME, DMAP_NAME, DMAP_HSGID, addresses=[IP_1])) atvs = await multicast_scan() assert len(atvs) == 1 assert_device( atvs[0], DMAP_NAME, ip_address(IP_1), DMAP_SERVICE_NAME, Protocol.DMAP, 3689, DMAP_HSGID, )