public void CreateClientServerOnly()
        {
            var interfaceImplementationTypePairs = new[]
                {
                    new InterfaceImplementationTypePair(typeof(IMyService), typeof(ClientServerOnlyServer))
                };
            factory = new ServiceImplementationFactory(serviceDescriptionBuilder, rpcClientServer, interfaceImplementationTypePairs);

            var service = (ClientServerOnlyServer)factory.CreateImplementation("MyService", null).Implementation;
            Assert.That(service.ClientServer, Is.EqualTo(rpcClientServer));
        }
        public void CreateComplete()
        {
            var interfaceImplementationTypePairs = new[]
                {
                    new InterfaceImplementationTypePair(typeof(IMyService), typeof(CompleteService))
                };
            factory = new ServiceImplementationFactory(serviceDescriptionBuilder, rpcClientServer, interfaceImplementationTypePairs);

            var service = (CompleteService)factory.CreateImplementation("MyService", "myscope").Implementation;
            Assert.That(service.ClientServer, Is.EqualTo(rpcClientServer));
            Assert.That(service.Scope, Is.EqualTo("myscope"));
        }
        public void CreateParameterless()
        {
            var interfaceImplementationTypePairs = new[]
                {
                    new InterfaceImplementationTypePair(typeof(IMyService), typeof(ParameterlessService))
                };
            factory = new ServiceImplementationFactory(serviceDescriptionBuilder, rpcClientServer, interfaceImplementationTypePairs);

            factory.CreateImplementation("MyService", null);
        }