public void Webget_TestActionSetSourceAndTestClickOkHasQueryStringAndHeadersRecSet()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            webget.ManageServiceInputViewModel = new InputViewForTest(webget, mod);
            webget.SourceRegion.SelectedSource = webget.SourceRegion.Sources.First();
            webget.InputArea.Headers.Add(new NameValue("[[a]]", "asa"));
            webget.InputArea.QueryString = "the [[b().a]]";
#pragma warning disable 4014
            webget.TestInputCommand.Execute();
            webget.ManageServiceInputViewModel.TestCommand.Execute(null);
            webget.ManageServiceInputViewModel.IsEnabled          = true;
            webget.ManageServiceInputViewModel.OutputArea.Outputs = new List <IServiceOutputMapping> {
                new ServiceOutputMapping("a", "b", "c"), new ServiceOutputMapping("a", "b", "c"), new ServiceOutputMapping("a", "b", "c")
            };
            webget.ManageServiceInputViewModel.OkCommand.Execute(null);
#pragma warning restore 4014
            //------------Execute Test---------------------------
            Assert.IsTrue(webget.SourceRegion.IsEnabled);
            Assert.IsTrue(webget.OutputsRegion.IsEnabled);
            Assert.IsTrue(webget.InputArea.IsEnabled);
            Assert.IsTrue(webget.ErrorRegion.IsEnabled);
            Assert.IsTrue(webget.ManageServiceInputViewModel.InputArea.Inputs.Count == 2);
            Assert.IsTrue(webget.ManageServiceInputViewModel.InputArea.Inputs.First().Name == "[[b().a]]");
            Assert.IsTrue(webget.ManageServiceInputViewModel.InputArea.Inputs.Last().Name == "[[a]]");
            Assert.AreEqual(0, webget.ManageServiceInputViewModel.Errors.Count);
            //------------Assert Results-------------------------
        }
        public void Webget_TestActionSetSourceAndTestClickOkHasserialisationIssue()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();

            mod.IsTextResponse = true;
            var act = new WebGetActivity();

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

            webget.ManageServiceInputViewModel = new InputViewForTest(webget, mod);
            webget.SourceRegion.SelectedSource = webget.SourceRegion.Sources.First();
#pragma warning disable 4014
            webget.TestInputCommand.Execute();
            webget.ManageServiceInputViewModel.TestCommand.Execute(null);
            webget.ManageServiceInputViewModel.IsEnabled = true;
            webget.ManageServiceInputViewModel.OkCommand.Execute(null);
#pragma warning restore 4014
            //------------Execute Test---------------------------

            Assert.AreEqual(webget.OutputsRegion.Outputs.First().MappedFrom, "Result");

            //------------Assert Results-------------------------
        }
        public void Webget_TestActionSetSourceAndTestClickOkHasMappingsErrorFromServer()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();

            mod.HasRecError = true;
            var act = new WebGetActivity();

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

            webget.ManageServiceInputViewModel = new InputViewForTest(webget, mod);
            webget.SourceRegion.SelectedSource = webget.SourceRegion.Sources.First();
#pragma warning disable 4014
            webget.TestInputCommand.Execute();
            webget.ManageServiceInputViewModel.TestCommand.Execute(null);
            webget.ManageServiceInputViewModel.IsEnabled          = true;
            webget.ManageServiceInputViewModel.OutputArea.Outputs = new List <IServiceOutputMapping> {
                new ServiceOutputMapping("a", "b", "c"), new ServiceOutputMapping("a", "b", "c"), new ServiceOutputMapping("a", "b", "c")
            };
            webget.ManageServiceInputViewModel.OkCommand.Execute(null);
#pragma warning restore 4014
            //------------Execute Test---------------------------

            Assert.IsTrue(webget.ErrorRegion.IsEnabled);

            //------------Assert Results-------------------------
        }
        public void Webget_TestActionSetSource()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            webget.ManageServiceInputViewModel = new InputViewForTest(webget, mod);
            webget.SourceRegion.SelectedSource = webget.SourceRegion.Sources.First();
            webget.SourceRegion.SelectedSource.AuthenticationType = AuthenticationType.Public;
            webget.SourceRegion.SelectedSource.UserName           = "";
            webget.SourceRegion.SelectedSource.Password           = "";
            webget.SourceRegion.SelectedSource.Path = "";
            //------------Execute Test---------------------------
            var hashCode = webget.SourceRegion.SelectedSource.GetHashCode();

            Assert.IsTrue(webget.SourceRegion.IsEnabled);
            Assert.IsFalse(webget.OutputsRegion.IsEnabled);
            Assert.IsTrue(webget.InputArea.IsEnabled);
            Assert.IsTrue(webget.ErrorRegion.IsEnabled);
            Assert.AreEqual("", webget.SourceRegion.SelectedSource.UserName);
            Assert.AreEqual("", webget.SourceRegion.SelectedSource.Password);
            Assert.AreEqual(AuthenticationType.Public, webget.SourceRegion.SelectedSource.AuthenticationType);
            Assert.AreEqual("", webget.SourceRegion.SelectedSource.Path);
            Assert.AreEqual(hashCode, webget.SourceRegion.SelectedSource.GetHashCode());
            //------------Assert Results-------------------------
        }
        public void Webget_MethodName_ClearErrors()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            //------------Execute Test---------------------------
            webget.ClearValidationMemoWithNoFoundError();
            //------------Assert Results-------------------------
            Assert.IsNull(webget.Errors);
            Assert.AreEqual(webget.DesignValidationErrors.Count, 1);
        }
        public void Webget_MethodName_ValidateExpectErrors()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            webget.Validate();
            //------------Execute Test---------------------------
            Assert.AreEqual(webget.Errors.Count, 1);
            Assert.AreEqual(webget.DesignValidationErrors.Count, 2);

            //------------Assert Results-------------------------
        }
        public void Webget_Ctor_EmptyModelItem()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            //------------Execute Test---------------------------
            Assert.IsTrue(webget.SourceRegion.IsEnabled);
            Assert.IsFalse(webget.OutputsRegion.IsEnabled);
            Assert.IsFalse(webget.InputArea.IsEnabled);
            Assert.IsTrue(webget.ErrorRegion.IsEnabled);

            //------------Assert Results-------------------------
        }
        public void GetHeaderRegion_GivenIsNew_ShouldReturnInputArea()
        {
            //------------Setup for test--------------------------
            var id  = Guid.NewGuid();
            var mod = new MyWebModel();
            var act = new WebGetActivity();

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

            //------------Execute Test---------------------------
            Assert.IsTrue(webget.SourceRegion.IsEnabled);
            Assert.IsFalse(webget.OutputsRegion.IsEnabled);
            Assert.IsFalse(webget.InputArea.IsEnabled);
            Assert.IsTrue(webget.ErrorRegion.IsEnabled);

            //------------Assert Results-------------------------
            Assert.AreSame(webget.InputArea, webget.GetHeaderRegion());
        }
        public void WebGetDesignerViewModel_UpdateHelp_ShouldCallToHelpViewMode()
        {
            //------------Setup for test--------------------------
            var mockMainViewModel = new Mock <IShellViewModel>();
            var mockHelpViewModel = new Mock <IHelpWindowViewModel>();

            mockHelpViewModel.Setup(model => model.UpdateHelpText(It.IsAny <string>())).Verifiable();
            mockMainViewModel.Setup(model => model.HelpViewModel).Returns(mockHelpViewModel.Object);
            CustomContainer.Register(mockMainViewModel.Object);

            var mod       = new MyWebModel();
            var act       = new WebGetActivity();
            var viewModel = new WebServiceGetViewModel(ModelItemUtils.CreateModelItem(act), mod);

            //------------Execute Test---------------------------
            viewModel.UpdateHelpDescriptor("help");
            //------------Assert Results-------------------------
            mockHelpViewModel.Verify(model => model.UpdateHelpText(It.IsAny <string>()), Times.Once());
        }