コード例 #1
0
        public async Task SimpleFunctionTest()
        {
            var(senderSocket, receiverSocket) = SocketHelper.GetSocketPair();

            await using var dispacher    = new BaseConnectionDispatcher(new BaseConnectionDispatcherOptions());
            using var senderConnection   = new BaseConnection(new SocketCap(senderSocket), dispacher, new BaseConnectionOptions());
            using var receiverConnection = new BaseConnection(new SocketCap(receiverSocket), dispacher, new BaseConnectionOptions());

            var mockTestService = new Mock <ITestService>();

            mockTestService.Setup(n => n.Unary1Async(It.IsAny <TestParam>(), It.IsAny <CancellationToken>())).Returns(new ValueTask <TestResult>(new TestResult(1)));

            var client = new TestService.Client(senderConnection, BytesPool.Shared);
            var server = new TestService.Server(mockTestService.Object, receiverConnection, BytesPool.Shared);

            var eventLoop = server.EventLoopAsync();

            var testResult1 = await client.Unary1Async(new TestParam(1), default);

            mockTestService.Verify(n => n.Unary1Async(new TestParam(1), default), Times.AtMostOnce());

            await client.DisposeAsync();

            await Assert.ThrowsAsync <ChannelClosedException>(() => eventLoop);
        }
コード例 #2
0
        public string Get()
        {
            // RPC - use Thrift
            using (TTransport transport = new TSocket("192.168.0.92", 8885))
            {
                using (TProtocol protocol = new TBinaryProtocol(transport))
                {
                    using (var serviceClient = new TestService.Client(protocol))
                    {
                        transport.Open();
                        TrxnRecord record = new TrxnRecord
                        {
                            TrxnId     = 10000001,
                            TrxnName   = "fxy",
                            TrxnAmount = 12,
                            TrxnType   = "MM",
                            Remark     = "test rpc thrift"
                        };
                        var result = serviceClient.Save(record);

                        return(Convert.ToInt32(result) == 0 ? "Trxn Success" : "Trxn Failed");
                    }
                }
            }
        }
コード例 #3
0
ファイル: UnitTest1.cs プロジェクト: Aresyl/LY.Thrift
        public void TestMethod1()
        {
            TTransport transport = new TSocket("127.0.0.1", 8503);
            TProtocol  protocol  = new TBinaryProtocol(transport);
            var        client    = new  TestService.Client(protocol);

            transport.Open();
            var send = new TestRequestModel()
            {
                Ee = "0987"
            };
            var result = client.Test(send);

            Console.WriteLine(result);
        }