public void ManageWebServiceInputViewModel_Properties()
        {
            var mod = new MyWebModel();
            var act = new WebGetActivity()
            {
                SourceId = mod.Sources[0].Id,
                Outputs  = new List <IServiceOutputMapping> {
                    new ServiceOutputMapping("a", "b", "c"), new ServiceOutputMapping("d", "e", "f")
                },
                Headers = new List <INameValue> {
                    new NameValue("a", "x")
                },
                QueryString = "Bob the builder",
                ServiceName = "dsfBob"
            };

            var webget = new WebServiceGetViewModel(ModelItemUtils.CreateModelItem(act), mod);

            var vm  = new ManageWebServiceInputViewModel(webget, mod);
            var lst = new List <IServiceInput>();

            vm.InputArea.Inputs = lst;
            Assert.AreEqual(lst.Count, vm.InputArea.Inputs.Count);
            var lsto = new List <IServiceOutputMapping>();

            vm.OutputArea.Outputs = lsto;
            Assert.AreEqual(lsto, vm.OutputArea.Outputs);
            vm.TestResults = "bob";
            Assert.AreEqual("bob", vm.TestResults);
            vm.TestResultsAvailable = true;
            Assert.IsTrue(vm.TestResultsAvailable);
            vm.OkSelected = true;
            Assert.IsTrue(vm.OkSelected);
            vm.IsTestResultsEmptyRows = true;
            Assert.IsTrue(vm.IsTestResultsEmptyRows);
            vm.IsTesting = true;
            Assert.IsTrue(vm.IsTesting);
            vm.PasteResponseVisible = true;
            Assert.IsTrue(vm.PasteResponseVisible);
            vm.PasteResponseAvailable = true;
            Assert.IsTrue(vm.PasteResponseAvailable);
            var b = new WebServiceDefinition()
            {
                Headers = new List <INameValue>()
                {
                    new NameValue("a", "b")
                }
            };

            vm.Model = b;
            Assert.IsNotNull(vm.Model);
        }
        public void TestWebService_Execute_Source_NotFound_ExpectHasError()
        {
            var serializer = new Dev2JsonSerializer();
            var sut        = new TestWebService();

            var webService = new WebServiceDefinition();

            var values = new Dictionary <string, StringBuilder>
            {
                { "WebService", webService.SerializeToJsonStringBuilder() }
            };

            var result = sut.Execute(values, null);

            var executeMessage = serializer.Deserialize <ExecuteMessage>(result);

            Assert.IsNotNull(result);
            Assert.IsTrue(executeMessage.HasError);
            Assert.IsTrue(executeMessage.Message.Contains("Parameter name: source"));
        }
示例#3
0
        public IWebService ToModel()
        {
            var webServiceDefinition = new WebServiceDefinition
            {
                Inputs         = InputsFromModel(),
                OutputMappings = new List <IServiceOutputMapping>(),
                Source         = SourceRegion.SelectedSource,
                Name           = "",
                Path           = "",
                Id             = Guid.NewGuid(),
                Headers        = InputArea.Headers.Select(value => new NameValue {
                    Name = value.Name, Value = value.Value
                } as INameValue).ToList(),
                QueryString = InputArea.QueryString,
                RequestUrl  = SourceRegion.SelectedSource.HostName,
                Response    = "",
                Method      = WebRequestMethod.Delete
            };

            return(webServiceDefinition);
        }
示例#4
0
        public void SaveWebService_Execute_FormDataParameters_NotNull_ExpectSuccess()
        {
            var testFileKey   = "testFileKey";
            var testFileName  = "testFileName";
            var testFileValue = "testFileContent";

            var testTextKey   = "testTextKey";
            var testTextValue = "testTextValue";

            var resourcePath = "c:\\path/to/save/resource.ext";

            var serializer = new Dev2JsonSerializer();

            var mockResourceCatalog = new Mock <IResourceCatalog>();

            mockResourceCatalog.Setup(o => o.GetResource <WebSource>(Guid.Empty, Guid.Empty))
            .Returns(new Mock <WebSource>().Object)
            .Verifiable();
            mockResourceCatalog.Setup(o => o.SaveResource(It.IsAny <Guid>(), It.IsAny <IResource>(), It.IsAny <string>()))
            .Verifiable();

            var mockExplorerServerResourceRepository = new Mock <IExplorerServerResourceRepository>();

            mockExplorerServerResourceRepository.Setup(o => o.UpdateItem(It.IsAny <IResource>()))
            .Verifiable();

            var saveWebService = new SaveWebService
            {
                ResourceCatalogue  = mockResourceCatalog.Object,
                ServerExplorerRepo = mockExplorerServerResourceRepository.Object
            };

            var mockWebClientWrapper = new Mock <IWebClientWrapper>();

            var mockWebSource = new Mock <IWebSource>();

            mockWebSource.Setup(o => o.Address).Returns("http://address.co.za/examples");
            mockWebSource.Setup(o => o.Client).Returns(mockWebClientWrapper.Object);
            mockWebSource.Setup(o => o.AuthenticationType).Returns(AuthenticationType.Anonymous);

            var serviceOutputMapping = new ServiceOutputMapping("from", "=", "[[rec().a]]");
            var webService           = new WebServiceDefinition
            {
                Path           = resourcePath,
                Source         = new WebServiceSourceDefinition(),
                OutputMappings = new List <IServiceOutputMapping> {
                    serviceOutputMapping
                },
                Headers            = new List <INameValue>(),
                FormDataParameters = new List <IFormDataParameters>
                {
                    new FormDataConditionExpression
                    {
                        Key  = testFileKey,
                        Cond = new FormDataConditionFile
                        {
                            FileBase64 = testFileValue,
                            FileName   = testFileName
                        }
                    }.ToFormDataParameter(),
                    new FormDataConditionExpression
                    {
                        Key  = testTextKey,
                        Cond = new FormDataConditionText
                        {
                            Value = testTextValue
                        }
                    }.ToFormDataParameter()
                },
                IsManualChecked   = false,
                IsFormDataChecked = true,
            };

            var values = new Dictionary <string, StringBuilder>
            {
                { "Webservice", serializer.SerializeToBuilder(webService) }
            };

            var result         = saveWebService.Execute(values, null);
            var executeMessage = serializer.Deserialize <ExecuteMessage>(result);

            Assert.IsNotNull(result);
            Assert.IsFalse(executeMessage.HasError);
            mockResourceCatalog.Verify(o => o.GetResource <WebSource>(Guid.Empty, Guid.Empty), Times.Once);
            mockResourceCatalog.Verify(o => o.SaveResource(Guid.Empty, It.IsAny <IResource>(), resourcePath), Times.Once);
            mockExplorerServerResourceRepository.Verify(o => o.UpdateItem(It.IsAny <IResource>()), Times.Once);
        }