def METHOD_NAME(self):
    server = self.nodes[SERVER]
    client = self.nodes[CLIENT]
    # Start the server & client devices.
    server.start()
    self.simulator.go(config.LEADER_STARTUP_DELAY)
    self.assertEqual(server.get_state(), 'leader')
    client.start()
    self.simulator.go(config.ROUTER_STARTUP_DELAY)
    self.assertEqual(client.get_state(), 'router')
    server.srp_server_set_enabled(True)
    client.srp_client_enable_auto_start_mode()
    self.simulator.go(5)
    # Register a single service with 3 subtypes and verify that it worked.
    client.srp_client_set_host_name('host1')
    client.srp_client_set_host_address('2001::1')
    client.srp_client_add_service('ins1', '_srv._udp,_s1,_s2,_s3', 1977)
    self.simulator.go(2)
    self.check_service_on_client_and_server(server, client)
    # Remove the service on client
    client.srp_client_remove_service('ins1', '_srv._udp')
    self.simulator.go(2)
    client_services = client.srp_client_get_services()
    self.assertEqual(len(client_services), 0)
    server_services = server.srp_server_get_services()
    self.assertEqual(len(server_services), 1)
    server_service = server_services[0]
    self.assertEqual(server_service['fullname'], 'ins1._srv._udp.default.service.arpa.')
    self.assertEqual(server_service['instance'], 'ins1')
    self.assertEqual(server_service['name'], '_srv._udp')
    self.assertEqual(server_service['deleted'], 'true')
    # Register the same service again.
    client.srp_client_add_service('ins1', '_srv._udp,_s1,_s2,_s3', 1977)
    self.simulator.go(2)
    self.check_service_on_client_and_server(server, client)