示例#1
0
        public async Task Invoke_NoInput_NoOutput_ShouldInvokeFunctionAsync()
        {
            RfcErrorInfo errorInfo;
            IRfcFunction function = new RfcFunction(_interopMock.Object, RfcConnectionHandle, FunctionHandle);
            var          result   = await function.InvokeAsync();

            _interopMock.Verify(x => x.Invoke(RfcConnectionHandle, FunctionHandle, out errorInfo), Times.Once);
        }
示例#2
0
        public async Task Invoke_WithInput_NoOutput_ShouldMapInputAsync()
        {
            RfcErrorInfo errorInfo;
            IRfcFunction function = new RfcFunction(_interopMock.Object, RfcConnectionHandle, FunctionHandle);

            var result = await function.InvokeAsync(new { Value = 123 });

            _interopMock.Verify(x => x.SetInt(FunctionHandle, "VALUE", 123, out errorInfo), Times.Once);
            _interopMock.Verify(x => x.Invoke(RfcConnectionHandle, FunctionHandle, out errorInfo), Times.Once);
        }
示例#3
0
        public async Task Invoke_WithInput_WithOutput_ShouldMapInputAndOutputAsync()
        {
            int          value = 456;
            RfcErrorInfo errorInfo;

            _interopMock.Setup(x => x.GetInt(It.IsAny <IntPtr>(), It.IsAny <string>(), out value, out errorInfo));
            IRfcFunction function = new RfcFunction(_interopMock.Object, RfcConnectionHandle, FunctionHandle);

            OutputModel result = await function.InvokeAsync <OutputModel>(new { Value = 123 });

            _interopMock.Verify(x => x.SetInt(FunctionHandle, "VALUE", 123, out errorInfo), Times.Once);
            _interopMock.Verify(x => x.Invoke(RfcConnectionHandle, FunctionHandle, out errorInfo), Times.Once);
            _interopMock.Verify(x => x.GetInt(FunctionHandle, "VALUE", out value, out errorInfo), Times.Once);
        }
示例#4
0
        public async Task Invoke_NoInput_WithOutput_ShouldMapOutputAsync()
        {
            int          value = 456;
            RfcErrorInfo errorInfo;

            _interopMock.Setup(x => x.GetInt(FunctionHandle, "VALUE", out value, out errorInfo));
            IRfcFunction function = new RfcFunction(_interopMock.Object, RfcConnectionHandle, FunctionHandle);

            OutputModel result = await function.InvokeAsync <OutputModel>();

            result.Should().NotBeNull();
            result.Value.Should().Be(value);
            _interopMock.Verify(x => x.GetInt(FunctionHandle, "VALUE", out value, out errorInfo), Times.Once);
            _interopMock.Verify(x => x.Invoke(RfcConnectionHandle, FunctionHandle, out errorInfo), Times.Once);
        }