(self)
| 65 | client.disconnect() |
| 66 | |
| 67 | def test_find_servers2(self): |
| 68 | client = Client(self.discovery.endpoint.geturl()) |
| 69 | client.connect() |
| 70 | try: |
| 71 | servers = client.find_servers() |
| 72 | # Use 2 different RegistrationServices, as it does not allow duplicate registrations. |
| 73 | with RegistrationService() as regService1, RegistrationService() as regService2: |
| 74 | # Register to server with uri1 |
| 75 | new_app_uri1 = "urn:freeopcua:python:server:test_discovery1" |
| 76 | self.srv.set_application_uri(new_app_uri1) |
| 77 | regService1.register_to_discovery(self.srv, self.discovery.endpoint.geturl(), period=0) |
| 78 | # Register to server with uri2 |
| 79 | new_app_uri2 = "urn:freeopcua:python:test_discovery2" |
| 80 | self.srv.set_application_uri(new_app_uri2) |
| 81 | regService2.register_to_discovery(self.srv, self.discovery.endpoint.geturl(), period=0) |
| 82 | # Check for 2 registrations |
| 83 | time.sleep(0.1) # let server register registration |
| 84 | new_servers = client.find_servers() |
| 85 | self.assertEqual(len(new_servers) - len(servers) , 2) |
| 86 | self.assertFalse(new_app_uri1 in [s.ApplicationUri for s in servers]) |
| 87 | self.assertFalse(new_app_uri2 in [s.ApplicationUri for s in servers]) |
| 88 | self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) |
| 89 | self.assertTrue(new_app_uri2 in [s.ApplicationUri for s in new_servers]) |
| 90 | # now do a query with filter |
| 91 | new_servers = client.find_servers(["urn:freeopcua:python:server"]) |
| 92 | self.assertEqual(len(new_servers) - len(servers) , 0) |
| 93 | self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) |
| 94 | self.assertFalse(new_app_uri2 in [s.ApplicationUri for s in new_servers]) |
| 95 | # now do a query with filter |
| 96 | new_servers = client.find_servers(["urn:freeopcua:python"]) |
| 97 | self.assertEqual(len(new_servers) - len(servers) , 2) |
| 98 | self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) |
| 99 | self.assertTrue(new_app_uri2 in [s.ApplicationUri for s in new_servers]) |
| 100 | finally: |
| 101 | client.disconnect() |
| 102 | |
| 103 | |
| 104 | """ |
nothing calls this directly
no test coverage detected