Beispiel #1
0
        public void ServerReturnsBigData_EnsureReceivedOnClient()
        {
            ITestContractAsync channel = CreateChannel();

            Server()
            .Setup(v => v.FunctionReturningHugeData())
            .Returns(() => Enumerable.Repeat(0, 1000).Select(_ => CompositeType.CreateRandom()).ToList());

            List <CompositeType> result = channel.FunctionReturningHugeData();

            Assert.Equal(1000, result.Count);
        }
Beispiel #2
0
        public void ClientSendsBigData_EnsureReceivedOnServer()
        {
            ITestContractAsync channel = CreateChannel();
            var data = Enumerable.Repeat(0, 1000).Select(_ => CompositeType.CreateRandom()).ToList();

            Mock <ITestContract> server = Server();

            server.Setup(v => v.MethodTakingHugeData(It.IsAny <List <CompositeType> >()))
            .Callback <List <CompositeType> >(v => Assert.Equal(1000, v.Count));

            channel.MethodTakingHugeData(data);

            server.Verify(v => v.MethodTakingHugeData(It.IsAny <List <CompositeType> >()));
        }
Beispiel #3
0
        public void LongOperation_TimeoutSet_EnsureCallTimeouted()
        {
            IClientPipeline pipeline = CreatePipeline();

            pipeline.Find <CommunicationMiddleware>().ResponseTimeout = TimeSpan.FromSeconds(0.1);

            ITestContractAsync client = CreateChannel(pipeline);

            CompositeType arg = CompositeType.CreateRandom();

            Mock <ITestContract> server = Server();

            server.Setup(v => v.SimpleMethodWithComplexParameter(arg)).Callback(() => Thread.Sleep(TimeSpan.FromSeconds(10)));
            Assert.Throws <TimeoutException>(() => client.SimpleMethodWithComplexParameter(arg));
        }