示例#1
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            TestStepViewModel step  = value as TestStepViewModel;
            string            label = step.StepID + ".";

            if (step.ControlActionChanged || step.ExpectedResultChanged || step.StationChanged)
            {
                label += " (Edited)";
            }
            if (step.ResultChanged)
            {
                if (step.Result)
                {
                    label += " (Passed)";
                }
                else
                {
                    label += " (Failed)";
                }
            }
            return(label);
        }
        public CommentDialogViewModel(TestStepViewModel testStep, bool severityNeeded)
        {
            SeverityNeeded = severityNeeded;
            if (severityNeeded)
            {
                _comment  = testStep.ResultComment;
                _severity = testStep.Severity;
            }
            else
            {
                _comment = testStep.Comment;
            }

            severities = new ObservableCollection <string>()
            {
                "Mild",
                "Medium",
                "Critical"
            };

            SubmitCommand = new RelayCommand(p => CloseRequested?.Invoke(this, new DialogCloseRequestedEventArgs(true)));
            CancelCommand = new RelayCommand(p => CloseRequested?.Invoke(this, new DialogCloseRequestedEventArgs(false)));
        }
示例#3
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            TestStepViewModel step = value as TestStepViewModel;

            if (step.ControlActionChanged || step.ExpectedResultChanged || step.StationChanged)
            {
                return(new SolidColorBrush(Colors.Yellow));
            }
            else if (step.ResultChanged)
            {
                if (step.Result)
                {
                    return(new SolidColorBrush(Colors.Green));
                }
                else
                {
                    return(new SolidColorBrush(Colors.Red));
                }
            }
            else
            {
                return(new SolidColorBrush(Colors.Transparent));
            }
        }
示例#4
0
 private void addEventHandlerToStep(TestStepViewModel newStep)
 {
     newStep.SelectedItemUpdated += StepSelectedChanged;
     newStep.PropertyChanged     += StepSelectedValueChanged;
 }
示例#5
0
        /// <summary>
        /// Adds event listeners to the test step
        /// </summary>
        /// <param name="newStep">test step to add event handler to</param>

        private void loadXML(XmlDocument xmlDocument)
        {
            XmlNode root = xmlDocument.SelectSingleNode("Test_Procedure");

            XmlNode heading = root.SelectSingleNode("Procedure_Heading");

            this.Name = heading.SelectSingleNode("Name").InnerText;
            _date     = String.IsNullOrEmpty(heading.SelectSingleNode("Date").InnerText) ? DateTime.Now.Date.ToString("MM/dd/yyyy") : heading.SelectSingleNode("Start_Time").InnerText;
            this.SoftwareLoadVersion = heading.SelectSingleNode("Software_Load_Version").InnerText;
            this.ProgramPhase        = heading.SelectSingleNode("Program_Phase").InnerText;
            this.ProgramType         = heading.SelectSingleNode("Program_Type").InnerText;
            this.Classification      = heading.SelectSingleNode("Classification").InnerText;
            _timeStarted             = String.IsNullOrEmpty(heading.SelectSingleNode("Start_Time").InnerText) ? DateTime.Now.ToString("HH:mm") : heading.SelectSingleNode("Start_Time").InnerText;

            var sectionsList = root.SelectNodes("Sections/Section");

            foreach (XmlNode sectionNode in sectionsList)
            {
                SectionsViewModel newSection = new SectionsViewModel(Int32.Parse(sectionNode.Attributes.GetNamedItem("id").Value), sectionNode.SelectSingleNode("Heading").InnerText);
                newSection.Description = sectionNode.SelectSingleNode("Description").InnerText;


                var steps         = new ObservableCollection <TestStepViewModel>();
                var testStepsList = sectionNode.SelectNodes("Test_Step");
                foreach (XmlNode testStepNode in testStepsList)
                {
                    int               stepID         = Int32.Parse(testStepNode.Attributes.GetNamedItem("id").Value);
                    string            station        = testStepNode.SelectSingleNode("Station").InnerText;
                    string            controlAction  = testStepNode.SelectSingleNode("Control_Action").InnerText;
                    string            expectedResult = testStepNode.SelectSingleNode("Expected_Result").InnerText;
                    TestStepViewModel newStep        = new TestStepViewModel(stepID, station, controlAction, expectedResult);
                    XmlNode           result         = testStepNode.SelectSingleNode("Result");
                    if (result.Attributes.GetNamedItem("result").Value != "")
                    {
                        newStep.Result = bool.Parse(result.Attributes.GetNamedItem("result").Value);
                    }
                    newStep.ResultComment = result.SelectSingleNode("Comment").InnerText;
                    newStep.Severity      = result.SelectSingleNode("Severity").InnerText;
                    newStep.Comment       = testStepNode.SelectSingleNode("Comment").InnerText;

                    if (!String.IsNullOrEmpty(testStepNode.SelectSingleNode("Station_Redline").InnerText))
                    {
                        newStep.Station = testStepNode.SelectSingleNode("Station_Redline").InnerText;
                    }

                    if (!String.IsNullOrEmpty(testStepNode.SelectSingleNode("Control_Action_Redline").InnerText))
                    {
                        newStep.ControlAction = testStepNode.SelectSingleNode("Control_Action").InnerText;
                    }

                    if (!String.IsNullOrEmpty(testStepNode.SelectSingleNode("Expected_Result_Redline").InnerText))
                    {
                        newStep.ExpectedResult = testStepNode.SelectSingleNode("Expected_Result_Redline").InnerText;
                    }

                    newStep.Parent = newSection;
                    addEventHandlerToStep(newStep);
                    steps.Add(newStep);
                }

                newSection.Steps = steps;
                _sections.Add(newSection);
            }
        }
示例#6
0
        private void SaveToXml()
        {
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            try
            {
                saveFileDialog.Filter = "XML file (*.xml)|*.xml";
                if (saveFileDialog.ShowDialog() == true)
                {
                    string fullpath = saveFileDialog.FileName;

                    XmlNode root = originalXML.SelectSingleNode("Test_Procedure");

                    // Fill Heading
                    XmlNode procedureHeading = root.SelectSingleNode("Procedure_Heading");
                    procedureHeading.SelectSingleNode("Name").InnerText = Name;
                    procedureHeading.SelectSingleNode("Date").InnerText = _date;
                    procedureHeading.SelectSingleNode("Software_Load_Version").InnerText = SoftwareLoadVersion;
                    procedureHeading.SelectSingleNode("Program_Phase").InnerText         = ProgramPhase;
                    procedureHeading.SelectSingleNode("Program_Type").InnerText          = ProgramType;
                    procedureHeading.SelectSingleNode("Classification").InnerText        = Classification;
                    procedureHeading.SelectSingleNode("Start_Time").InnerText            = _timeStarted;
                    procedureHeading.SelectSingleNode("Stop_Time").InnerText             = DateTime.Now.ToString("HH:mm");

                    int i = 0, j = 0;
                    // Fill Test Steps
                    var sectionsList = root.SelectNodes("Sections/Section");
                    foreach (XmlNode sectionNode in sectionsList)
                    {
                        var testStepsList = sectionNode.SelectNodes("Test_Step");
                        j = 0;
                        foreach (XmlNode testStepNode in testStepsList)
                        {
                            TestStepViewModel testStep = _sections[i].Steps[j];
                            if (testStep.StationChanged)
                            {
                                testStepNode.SelectSingleNode("Station_Redline").InnerText = testStep.Station;
                            }
                            if (testStep.ControlActionChanged)
                            {
                                testStepNode.SelectSingleNode("Control_Action_Redline").InnerText = testStep.ControlAction;
                            }
                            if (testStep.ExpectedResultChanged)
                            {
                                testStepNode.SelectSingleNode("Expected_Result_Redline").InnerText = testStep.ExpectedResult;
                            }

                            XmlNode resultNode = testStepNode.SelectSingleNode("Result");
                            if (testStep.ResultChanged)
                            {
                                resultNode.Attributes.GetNamedItem("result").Value = testStep.Result.ToString();
                                resultNode.SelectSingleNode("Comment").InnerText   = testStep.ResultComment;
                                resultNode.SelectSingleNode("Severity").InnerText  = testStep.Severity;
                            }

                            testStepNode.SelectSingleNode("Comment").InnerText = testStep.Comment;

                            j++;
                        }
                        i++;
                    }

                    originalXML.Save(fullpath);
                }
            }
            catch (IOException e)
            {
                MessageBox.Show(e.ToString());
            }
        }
示例#7
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            TestStepViewModel testStep = value as TestStepViewModel;

            return("Section: " + testStep.Parent.SectionID.ToString() + ", Step: " + testStep.StepID.ToString());
        }
示例#8
0
 public SelectedItemUpdateEventArgs(TestStepViewModel selectedStep)
 {
     _selectedStep = selectedStep;
 }
示例#9
0
 protected void OnSelectedItemChanged(TestStepViewModel testStep)
 => SelectedItemUpdated?.Invoke(this, new SelectedItemUpdateEventArgs(testStep));