Ejemplo n.º 1
0
        public void ActivityHelper_WithKeyProperty_SetSwitchKeyProperty_Dev2Switch()
        {
            var uniqueId     = Guid.NewGuid().ToString();
            var calcActivity = new DsfCalculateActivity {
                UniqueID = uniqueId
            };
            var flowStep = new FlowStep {
                Action = calcActivity
            };

            //---------------Set up test pack-------------------
            using (var viewModel = new SwitchDesignerViewModel(CreateSwitchModelItem(flowStep), "Switch"))
            {
                var mySwitch = new Dev2Switch
                {
                    SwitchExpression = "[[a]]"
                };

                var parentNodeProperty = viewModel.ModelItem.Properties["Cases"].Dictionary;

                //------------Setup for test--------------------------
                var switchCaseFirst = ModelItemUtils.CreateModelItem(parentNodeProperty.First());
                var switchCaseLast  = ModelItemUtils.CreateModelItem(parentNodeProperty.Last());
                ActivityHelper.SetSwitchKeyProperty(mySwitch, switchCaseFirst);

                var modelItemFirst = switchCaseFirst.Properties["Value"].Value.Properties["Action"].Value;
                var modelItemLast  = switchCaseLast.Properties["Value"].Value.Properties["Action"].Value;

                Assert.AreEqual(uniqueId, modelItemFirst.Properties["UniqueID"].ComputedValue);
                Assert.IsNull(modelItemLast);
            }
        }
Ejemplo n.º 2
0
        private static Dev2DecisionCallbackHandler ShowSwitchArmDialog(SwitchDesignerViewModel dataContext)
        {
            var large = new ConfigureSwitchArm {
                DataContext = dataContext
            };
            var window = new ActivityDefaultWindow();

            if (Application.Current != null)
            {
                window.Style = Application.Current.TryFindResource("SwitchCaseWindowStyle") as Style;
            }
            var contentPresenter = window.FindChild <ContentPresenter>();

            if (contentPresenter != null)
            {
                contentPresenter.Content = large;
            }
            window.SetEnableDoneButtonState(true);

            var showDialog = window.ShowDialog();

            if (showDialog.HasValue && showDialog.Value)
            {
                var callBack = new Dev2DecisionCallbackHandler {
                    ModelData = JsonConvert.SerializeObject(dataContext.Switch)
                };
                return(callBack);
            }
            return(null);
        }
Ejemplo n.º 3
0
        static Dev2DecisionCallbackHandler ShowSwitchDragDialog(ModelItem modelData, string variable = "", bool isNew = true)
        {
            var switchDesignerViewModel = new SwitchDesignerViewModel(modelData, "")
            {
                SwitchVariable = variable
            };

            if (isNew)
            {
                switchDesignerViewModel.SwitchExpression = string.Empty;
            }
            return(ShowSwitchArmDialog(switchDesignerViewModel));
        }
Ejemplo n.º 4
0
        private static Dev2DecisionCallbackHandler ShowSwitchDialogWindow(ModelItem modelItem, SwitchDesignerViewModel dataContext)
        {
            var large = new ConfigureSwitch {
                DataContext = dataContext
            };
            var window = new ActivityDefaultWindow();

            if (Application.Current != null)
            {
                window.Style = Application.Current.TryFindResource("SwitchMainWindowStyle") as Style;
            }
            var contentPresenter = window.FindChild <ContentPresenter>();

            if (contentPresenter != null)
            {
                contentPresenter.Content = large;
            }
            DesignerView parentContentPane = FindDependencyParent.FindParent <DesignerView>(modelItem?.Parent?.View);
            var          dataContext1      = parentContentPane?.DataContext;

            if (dataContext1 != null)
            {
                if (dataContext1.GetType().Name == "ServiceTestViewModel")
                {
                    window.SetEnableDoneButtonState(false);
                }
            }

            var showDialog = window.ShowDialog();

            window.SetEnableDoneButtonState(true);
            if (showDialog.HasValue && showDialog.Value)
            {
                var callBack = new Dev2DecisionCallbackHandler {
                    ModelData = JsonConvert.SerializeObject(dataContext.Switch)
                };
                return(callBack);
            }
            return(null);
        }
Ejemplo n.º 5
0
        private static Dev2DecisionCallbackHandler StartSwitchDropWizard(ModelItem modelItem, string display)
        {
            var dataContext = new SwitchDesignerViewModel(modelItem, display);

            return(ShowSwitchDialogWindow(modelItem, dataContext));
        }
        public void SwitchDesignerViewModel_DisplayName_Setup_HasValue()
        {
            //------------Setup for test--------------------------
            #region setup first Mock ModelItem
            var popupController = new Mock <IPopupController>();
            CustomContainer.Register(popupController.Object);

            var env = EnviromentRepositoryTest.CreateMockEnvironment();

            var properties         = new Dictionary <string, Mock <ModelProperty> >();
            var propertyCollection = new Mock <ModelPropertyCollection>();
            var testAct            = new DsfFlowDecisionActivity {
                ExpressionText = "Not Null Test Value"
            };

            var prop = new Mock <ModelProperty>();
            prop.Setup(p => p.ComputedValue).Returns(testAct);
            properties.Add("Condition", prop);

            propertyCollection.Protected().Setup <ModelProperty>("Find", "Condition", true).Returns(prop.Object);

            var mockModelItem = new Mock <ModelItem>();
            mockModelItem.Setup(s => s.Properties).Returns(propertyCollection.Object);

            #endregion

            #region setup decision Mock ModelItem

            var crmDecision = new Mock <IContextualResourceModel>();
            crmDecision.Setup(r => r.Environment).Returns(env.Object);
            crmDecision.Setup(r => r.ResourceName).Returns("Test");
            crmDecision.Setup(res => res.WorkflowXaml).Returns(new StringBuilder(StringResourcesTest.xmlServiceDefinition));

            var decisionProperties         = new Dictionary <string, Mock <ModelProperty> >();
            var decisionPropertyCollection = new Mock <ModelPropertyCollection>();

            var decisionProp = new Mock <ModelProperty>();
            decisionProp.Setup(p => p.ComputedValue).Returns(string.Empty);
            decisionProperties.Add("Condition", decisionProp);

            decisionPropertyCollection.Protected().Setup <ModelProperty>("Find", "Condition", true).Returns(decisionProp.Object);

            var decisionModelItem = new Mock <ModelItem>();
            decisionModelItem.Setup(s => s.Properties).Returns(decisionPropertyCollection.Object);
            decisionModelItem.Setup(s => s.ItemType).Returns(typeof(FlowDecision));

            prop.Setup(p => p.Value).Returns(decisionModelItem.Object);

            #endregion

            #region setup Environment Model

            env.Setup(c => c.Connection).Returns(new Mock <IEnvironmentConnection>().Object);

            #endregion

            //------------Execute Test---------------------------
            var switchDesigner = new SwitchDesignerViewModel(mockModelItem.Object, "TrueArm");

            //------------Assert Results-------------------------
            Assert.IsNotNull(switchDesigner);
            Assert.AreEqual("TrueArm", switchDesigner.DisplayText);
        }
        public void SwitchDesignerViewModel_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);

            #region setup first Mock ModelItem
            var popupController = new Mock <IPopupController>();
            CustomContainer.Register(popupController.Object);

            var env = EnviromentRepositoryTest.CreateMockEnvironment();

            var properties         = new Dictionary <string, Mock <ModelProperty> >();
            var propertyCollection = new Mock <ModelPropertyCollection>();
            var testAct            = new DsfFlowDecisionActivity {
                ExpressionText = "Not Null Test Value"
            };

            var prop = new Mock <ModelProperty>();
            prop.Setup(p => p.ComputedValue).Returns(testAct);
            properties.Add("Condition", prop);

            propertyCollection.Protected().Setup <ModelProperty>("Find", "Condition", true).Returns(prop.Object);

            var mockModelItem = new Mock <ModelItem>();
            mockModelItem.Setup(s => s.Properties).Returns(propertyCollection.Object);

            #endregion

            #region setup decision Mock ModelItem

            var crmDecision = new Mock <IContextualResourceModel>();
            crmDecision.Setup(r => r.Environment).Returns(env.Object);
            crmDecision.Setup(r => r.ResourceName).Returns("Test");
            crmDecision.Setup(res => res.WorkflowXaml).Returns(new StringBuilder(StringResourcesTest.xmlServiceDefinition));

            var decisionProperties         = new Dictionary <string, Mock <ModelProperty> >();
            var decisionPropertyCollection = new Mock <ModelPropertyCollection>();

            var decisionProp = new Mock <ModelProperty>();
            decisionProp.Setup(p => p.ComputedValue).Returns(string.Empty);
            decisionProperties.Add("Condition", decisionProp);

            decisionPropertyCollection.Protected().Setup <ModelProperty>("Find", "Condition", true).Returns(decisionProp.Object);

            var decisionModelItem = new Mock <ModelItem>();
            decisionModelItem.Setup(s => s.Properties).Returns(decisionPropertyCollection.Object);
            decisionModelItem.Setup(s => s.ItemType).Returns(typeof(FlowSwitch <string>));

            prop.Setup(p => p.Value).Returns(decisionModelItem.Object);

            #endregion

            #region setup Environment Model

            env.Setup(c => c.Connection).Returns(new Mock <IEnvironmentConnection>().Object);

            #endregion

            var switchDesigner = new SwitchDesignerViewModel(mockModelItem.Object, "");
            //------------Execute Test---------------------------
            switchDesigner.UpdateHelpDescriptor("help");
            //------------Assert Results-------------------------
            mockHelpViewModel.Verify(model => model.UpdateHelpText(It.IsAny <string>()), Times.Once());
        }