示例#1
0
        private void InitValues()
        {
            lblWorkspaceName.Text = ccTestWorkspace.ToString();
            heatMapDiagram        = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                                    LoadHeatMapDiagramToTestWorkspace(ccTestWorkspace.ToString());
            worstTestCases = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                             LoadWorstTestCasesToCCTestWorkspace(ccTestWorkspace.ToString());
            CCSettings ccSettings = ccTestWorkspace.ccSettings;

            for (int i = 0; i < ccSettings.Requirements.Count; ++i)
            {
                if (ccSettings.Requirements.ElementAt(i).Value)
                {
                    cmbRequirements.Items.Add(ccSettings.Requirements.ElementAt(i).Key);
                }
            }
            cmbRequirements.SelectedIndex = 0;
            if (!ccSettings.reportWorstTestCases)
            {
                gbWorstTestCases.Enabled = false;
            }
            ParentCCSettingsForm.CreateAndShowLabels(labels, HeatMapPanel,
                                                     ccTestWorkspace.ccSettings.heatMapDiagramDivisionFactor,
                                                     ccTestWorkspace.GetDesiredValueVariable().from, ccTestWorkspace.GetDesiredValueVariable().to, gbHeatMap);
        }
        private void InitValues()
        {
            //tbWorkspaceName.Text = slTestWorkspace.ToString();
            tbModelName.Text = slTestWorkspace.modelSettings.GetSimulinkModelName();


            criteriaTestSuites = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                                 LoadTestSuitesToSLTestWorkspace(slTestWorkspace.ToString());
            SLSettings slSettings = slTestWorkspace.slSettings;

            for (int i = 0; i < criteriaTestSuites.Keys.Count; ++i)
            {
                cmbCriteria.Items.Add(criteriaTestSuites.Keys.ElementAt(i));
            }
            cmbInputVars.Items.Clear();
            cmbCalVars.Items.Clear();
            Dictionary <string, List <SLTestCase> > outputtses = criteriaTestSuites[criteriaTestSuites.Keys.ElementAt(0)];
            List <SLTestCase> outputts = outputtses[outputtses.Keys.ElementAt(0)];

            for (int cnt = 0; cnt < outputts[0].inputSignals.Count; ++cnt)
            {
                cmbInputVars.Items.Add(outputts[0].inputSignals.Keys.ElementAt(cnt));
            }
            for (int cnt = 0; cnt < outputts[0].calibrationVars.Count; ++cnt)
            {
                cmbCalVars.Items.Add(outputts[0].calibrationVars.Keys.ElementAt(cnt));
            }
            cmbCriteria.SelectedIndex = 0;
        }
示例#3
0
 public void RandomExplorationFinished(ErrorResult testErrorResult,
                                       string randomExplorationResultsDirectory)
 {
     if (testErrorResult.errorCode == ErrorCode.Success)
     {
         TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().SaveTestWorkspace(testWorkspace);
         TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().SaveSearchResultsToTestWorkspace(
             testWorkspace.ToString(), randomExplorationResultsDirectory);
         if (!((CCTestWorkspace)testWorkspace).ccSettings.reportWorstTestCases)
         {
             this.testErrorResult = testErrorResult;
             testFinished         = true;
             return;
         }
         this.Invoke((MethodInvoker) delegate
         {
             lastEstimatedRemainingTime = ((CCTestWorkspace)testWorkspace).GetSingleStateSearchEstimatedRunningTime();
             currentActivityLastEstimatedRemainingTime = ((CCTestWorkspace)testWorkspace).GetSingleStateSearchEstimatedRunningTime();
             currentActivityElapsedTime = new TimeSpan(0, 0, 0);
             lblCurrentActivity.Text    = "Finding Worst Test Cases";
         });
         singleStateSearchRun = new SingleStateSearchRun(testWorkspace, this,
                                                         TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().LoadHeatMapRegionsToTestWorkspace(
                                                             testWorkspace.ToString()));
         singleStateSearchRun.RunAsync();
         randomExplorationIsFinished = true;
     }
     else
     {
         this.testErrorResult = testErrorResult;
         testFinished         = true;
     }
 }
示例#4
0
        private void btnExport_Click(object sender, EventArgs e)
        {
            DialogResult result = eximportFolderDialog.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }
            TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().ExportTestWorkspace(
                activeTestWorkSpace, eximportFolderDialog.SelectedPath);
            MessageBox.Show("Export Finished Successfully!",
                            "Export Finished", MessageBoxButtons.OK);
        }
示例#5
0
        private void btnRename_Click(object sender, EventArgs e)
        {
            TestWorkspaceRenameForm testWorkspaceRenameForm = new TestWorkspaceRenameForm(
                activeTestWorkSpace.ToString());
            DialogResult dialogResult = testWorkspaceRenameForm.ShowDialog();

            if (dialogResult == DialogResult.OK)
            {
                TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                RenameTestWorkspace(activeTestWorkSpace,
                                    testWorkspaceRenameForm.GetNewTestWorkspaceName());
            }
        }
示例#6
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            DialogResult dialogResult = MessageBox.Show(
                "Are you sure you want to delete the selected test workspace?",
                "Confirm Test Wrokspace Delete", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.No)
            {
                return;
            }
            TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
            DeleteTestWorkspace(activeTestWorkSpace);
        }
示例#7
0
 private void lbTestWorkspaces_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (lbTestWorkspaces.SelectedIndex == -1)
     {
         btnDelete.Enabled = btnRename.Enabled = btnViewResults.Enabled = btnDuplicate.Enabled = btnExport.Enabled = false;
         tbDetails.Text    = "";
         return;
     }
     btnDelete.Enabled   = btnRename.Enabled = btnViewResults.Enabled = btnDuplicate.Enabled = btnExport.Enabled = true;
     activeTestWorkSpace = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                           LoadTestWorkspace(lbTestWorkspaces.SelectedItem.ToString());
     tbDetails.Text = activeTestWorkSpace.GetDetailsString();
 }
示例#8
0
        private void CreateNewDataProviderAndUpdateTestWorkspacesList()
        {
            lbTestWorkspaces.Items.Clear();
            tbDetails.Clear();
            TestWorkspaceDataProvider testWorkspaceDataProvider =
                TestWorkspaceDataProvider.CreateTestWorkspaceDataProvider(GetProgramSettings().
                                                                          TestWorkspacesLastPath, this);
            List <string> workspacesList = testWorkspaceDataProvider.GetTestWorkspaceList();

            foreach (string workspaceName in workspacesList)
            {
                lbTestWorkspaces.Items.Add(workspaceName);
            }
        }
示例#9
0
 private bool CreateTestWorkSpace(TestWorkspace templateTestWorkspace)
 {
     if (!TestWorkspaceDataProvider.
         GetTestWorkspaceDataProvider().IsWorkspaceNameUnique(tbWorkspaceName.Text))
     {
         MessageBox.Show("The Test Workspace Name is Duplicate!",
                         "Dupllicate Test Workspace Name", MessageBoxButtons.OK);
         return(false);
     }
     testWorkspace = (TestWorkspace)templateTestWorkspace.Clone();
     testWorkspace.SetWorkspaceName(tbWorkspaceName.Text);
     testWorkspace.CreatedFromTemplate = true;
     return(true);
 }
 private void btnOk_Click(object sender, EventArgs e)
 {
     if (!TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
         IsWorkspaceNameUnique(tbWorkspaceName.Text))
     {
         MessageBox.Show("The Test Workspace Name is Duplicate!",
                         "Dupllicate Test Workspace Name", MessageBoxButtons.OK);
         tbWorkspaceName.Focus();
         tbWorkspaceName.SelectAll();
         return;
     }
     DialogResult         = DialogResult.OK;
     newTestWorkspaceName = tbWorkspaceName.Text;
     Close();
 }
示例#11
0
 public void SingleStateSearchFinished(ErrorResult testErrorResult, string singleStateSearchResultsDirectory)
 {
     if (testErrorResult.errorCode == ErrorCode.Success)
     {
         TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().SaveSearchResultsToTestWorkspace(
             testWorkspace.ToString(), singleStateSearchResultsDirectory);
         this.testErrorResult = testErrorResult;
         testFinished         = true;
     }
     else
     {
         this.testErrorResult = testErrorResult;
         testFinished         = true;
     }
 }
        private void btnRunTestCase_Click(object sender, EventArgs e)
        {
            SLTestCase slTestCase =
                outputsTestSuites[lvOutputs.SelectedItems[0].SubItems[2].Text][lvTestCases.SelectedIndices[0]];

            slTestCase.dsrdTCNo  = lvTestCases.SelectedIndices[0] + 1;
            slTestCase.dsrdOutNo = Int32.Parse(lvOutputs.SelectedItems[0].SubItems[1].Text);
            slTestCase.filesDir  = slTestWorkspace.modelSettings.GetSimulinkModelDirectory() + "\\" +
                                   slTestWorkspace.modelSettings.GetSimulinkModelNameWithNoExtension() + "-Files\\";
            slTestCase.testSuiteDir = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().GetWorkspaceResultsPath(slTestWorkspace.ToString()) +
                                      cmbCriteria.Text + "\\" + lvOutputs.SelectedItems[0].SubItems[2].Text;
            SingleTestCaseRun stcrun = new SingleTestCaseRun(slTestWorkspace, slTestCase);

            stcrun.RunAsync();
        }
示例#13
0
        private void importToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult result = eximportFolderDialog.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }
            if (TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                IsTestWorkspacePath(eximportFolderDialog.SelectedPath))
            {
                if (TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                    ImportTestWorkspace(eximportFolderDialog.SelectedPath).errorCode == ErrorCode.Success)
                {
                    MessageBox.Show("Import Finished Successfully!",
                                    "Import Finished", MessageBoxButtons.OK);
                }
                else
                {
                    MessageBox.Show("Not possible to import workspae with a duplicate name!",
                                    "Error in Import", MessageBoxButtons.OK);
                }
                return;
            }

            List <string> inDirectories = new List <string>(
                Directory.EnumerateDirectories(eximportFolderDialog.SelectedPath));

            foreach (string inDirectory in inDirectories)
            {
                if (TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                    IsTestWorkspacePath(inDirectory))
                {
                    if (TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                        ImportTestWorkspace(inDirectory).errorCode == ErrorCode.Success)
                    {
                        MessageBox.Show("Import Finished Successfully!",
                                        "Import Finished", MessageBoxButtons.OK);
                    }
                    else
                    {
                        MessageBox.Show("Not possible to import workspae with a duplicate name!",
                                        "Error in Import", MessageBoxButtons.OK);
                    }
                    return;
                }
            }
        }
示例#14
0
        private void initializeWorkspaceName(string workspaceDefaultName)
        {
            string workspaceName = workspaceDefaultName;
            int    cnt           = 1;

            do
            {
                if (TestWorkspaceDataProvider.
                    GetTestWorkspaceDataProvider().IsWorkspaceNameUnique(workspaceName))
                {
                    break;
                }
                ++cnt;
                workspaceName = workspaceDefaultName + cnt.ToString();
            }while(true);
            tbWorkspaceName.Text = workspaceName;
        }
示例#15
0
        private bool CreateTestWorkSpace()
        {
            bool InvalidName = false;

            foreach (char c in tbWorkspaceName.Text)
            {
                if (Path.GetInvalidFileNameChars().Contains(c))
                {
                    InvalidName = true;
                    break;
                }
            }
            if (InvalidName)
            {
                MessageBox.Show("The Test Workspace Name is Invalid! Select a name that can be used as the name of a Windows folder.",
                                "Invalid Test Workspace Name", MessageBoxButtons.OK);
                tbWorkspaceName.Focus();
                tbWorkspaceName.SelectAll();
                return(false);
            }

            if (!TestWorkspaceDataProvider.
                GetTestWorkspaceDataProvider().IsWorkspaceNameUnique(tbWorkspaceName.Text))
            {
                MessageBox.Show("The Test Workspace Name is Duplicate!",
                                "Dupllicate Test Workspace Name", MessageBoxButtons.OK);
                return(false);
            }
            if (rbContinuousController.Checked)
            {
                testWorkspace = new CCTestWorkspace(tbWorkspaceName.Text);
            }
            else if (rbSimulink.Checked)
            {
                testWorkspace = new SLTestWorkspace(tbWorkspaceName.Text);
            }
            else
            {
                testWorkspace = new IOTestWorkspace(tbWorkspaceName.Text);
            }
            return(true);
        }