def test_discoverable_adding_service_works(dns_sd): discoverable = dns_sd.ServiceContainer() service = dns_sd.Service(type_='foo') discoverable.add_service(service) assert service in discoverable.services
def test_registering_services_from_service_container_works(dns_sd, sd): service = dns_sd.Service() discoverable = dns_sd.ServiceContainer() discoverable.services.append(service) sd.register(discoverable) assert service in sd.services
def test_discoverable_all_services_ready_set_services_ready(dns_sd): discoverable = dns_sd.ServiceContainer() service1 = dns_sd.Service(type_='foo') discoverable.add_service(service1) service2 = dns_sd.Service(type_='bar') discoverable.add_service(service2) service1.ready = True service2.ready = True assert discoverable.services_ready is True
def test_discoverable_remvoing_anything_else_fails(dns_sd): discoverable = dns_sd.ServiceContainer() item = object() try: discoverable.remove_service(item) assert False except TypeError: assert True assert item not in discoverable.services
def test_discoverable_services_ready_changed_calls_callback(dns_sd): cb_called = [False] def cb(_): cb_called[0] = True discoverable = dns_sd.ServiceContainer() discoverable.on_services_ready_changed.append(cb) discoverable.services_ready = True assert cb_called[0] is True