public void CanDiscoverSingleService()
        {
            DeregisterServices(_host127001, _startPort127001);

            ServiceDiscoveryGrpc.ServiceDiscoveryGrpcClient client = GetClient();

            DiscoverServicesResponse response = client.DiscoverServices(
                new DiscoverServicesRequest
            {
                ServiceName = _serviceName,
                MaxCount    = 1
            });

            Assert.AreEqual(1, response.ServiceLocations.Count);

            ServiceLocationMsg serviceLocation = response.ServiceLocations[0];

            Assert.AreEqual(_serviceName, serviceLocation.ServiceName);
            Assert.AreEqual(_localHost, serviceLocation.HostName);
        }
        public void CanDiscoverManyServices()
        {
            DeregisterServices(_host127001, _startPort127001);

            ServiceDiscoveryGrpc.ServiceDiscoveryGrpcClient client = GetClient();

            DiscoverServicesResponse response = client.DiscoverServices(
                new DiscoverServicesRequest
            {
                ServiceName = _serviceName,
                MaxCount    = 3
            });

            Assert.AreEqual(3, response.ServiceLocations.Count);

            foreach (var serviceLocation in response.ServiceLocations)
            {
                Assert.AreEqual(_serviceName, serviceLocation.ServiceName);
                Assert.AreEqual(_localHost, serviceLocation.HostName);
                Assert.True(serviceLocation.Port >= _startPort &&
                            serviceLocation.Port < _startPort + _serviceCount);
            }
        }