public void TraceabilityMatrixTestsInit()
        {
            _pro1                    = new Project();
            _pro1.ProjectName        = "pn";
            _pro1.ProjectDescription = "pd";

            _rq1 = new Requirement();
            _rq1.RequirementDescription = "rd1";
            _rq1.RequirementName        = "rn1";
            _rq1.Project = _pro1;

            _rq2 = new Requirement();
            _rq2.RequirementDescription = "rd2";
            _rq2.RequirementName        = "rn2";
            _rq2.Project = _pro1;

            _rq3 = new Requirement();
            _rq3.RequirementDescription = "rd3";
            _rq3.RequirementName        = "rn3";
            _rq3.Project = _pro1;

            _rq = new List <Requirement>();
            _rq.Add(_rq1);
            _rq.Add(_rq2);
            _rq.Add(_rq3);

            _test1ForRQ1                 = new Test();
            _test1ForRQ1.TestName        = "t1RQ1tn";
            _test1ForRQ1.TestDescription = "t1RQ1td";
            _test1ForRQ1.Project         = _pro1;

            _test2ForRQ1                 = new Test();
            _test2ForRQ1.TestName        = "t2RQ1tn";
            _test2ForRQ1.TestDescription = "t2RQ1td";
            _test2ForRQ1.Project         = _pro1;

            _test1ForRQ2                 = new Test();
            _test1ForRQ2.TestName        = "t1RQ2tn";
            _test1ForRQ2.TestDescription = "t1RQ2td";
            _test1ForRQ2.Project         = _pro1;

            _test2ForRQ2                 = new Test();
            _test2ForRQ2.TestName        = "t2RQ2tn";
            _test2ForRQ2.TestDescription = "t2RQ2td";
            _test2ForRQ2.Project         = _pro1;

            _test3ForRQ2                 = new Test();
            _test3ForRQ2.TestName        = "t3RQ2tn";
            _test3ForRQ2.TestDescription = "t3RQ2td";
            _test3ForRQ2.Project         = _pro1;

            _test1ForRQ3                 = new Test();
            _test1ForRQ3.TestName        = "t1RQ3tn";
            _test1ForRQ3.TestDescription = "t1RQ3td";
            _test1ForRQ3.Project         = _pro1;

            _tmp = new List <TestMapRequirement>();
            _tmp.Add(new TestMapRequirement(_test1ForRQ1, _rq1, false));
            _tmp.Add(new TestMapRequirement(_test2ForRQ1, _rq1, false));
            _tmp.Add(new TestMapRequirement(_test1ForRQ2, _rq2, false));
            _tmp.Add(new TestMapRequirement(_test2ForRQ2, _rq2, false));
            _tmp.Add(new TestMapRequirement(_test3ForRQ2, _rq2, false));
            _tmp.Add(new TestMapRequirement(_test1ForRQ3, _rq3, false));

            _tm = new TraceabilityMatrix(_rq, _tmp);

            _grid = new DataGridView();
        }
示例#2
0
        public async Task <ActionResult> Matrix(ProcessCategory processCategory)//
        {
            try
            {
                string result = string.Empty;
                int    daId   = (int)TempData["daId"];
                TempData["daId"] = daId;
                string             filePath = string.Empty;
                HttpPostedFileBase tmFile;
                HttpPostedFileBase tmFile1;
                //HttpPostedFileBase tmFile3;

                switch (processCategory.sProcess)
                {
                case "Rule of 1 - Txn Matrix":
                    break;

                case "Rule of N - Txn Matrix":
                    TransactionMatrix transactionMatrix = new TransactionMatrix();

                    Task <string> fipath1 = transactionMatrix.GenerateTransactionMatrix(daId);
                    await Task.WhenAll(fipath1);     //

                    fipath1.Wait();
                    if (fipath1.Status == TaskStatus.RanToCompletion)
                    {
                        filePath = fipath1.Result;
                    }
                    else if (fipath1.Status == TaskStatus.Running)
                    {
                        fipath1.Wait();
                        filePath = fipath1.Result;
                    }
                    break;

                case "Business Rule":
                    tmFile = processCategory.file.ElementAt(0);
                    GenerateBusinessRules generateBusinessRules = new GenerateBusinessRules();
                    filePath = generateBusinessRules.GenerateBusinessRuleMappingTable(daId, tmFile);
                    break;

                case "Interface":
                    tmFile = processCategory.file.ElementAt(0);
                    GenerateInterfaces generateInterfaces = new GenerateInterfaces();
                    filePath = generateInterfaces.GenerateInterfaceMappingTable(daId, tmFile);
                    break;

                case "Channels&Alerts":
                    tmFile = processCategory.file.ElementAt(0);
                    GenerateChannelsAlerts generateChannelsAlerts = new GenerateChannelsAlerts();
                    filePath = generateChannelsAlerts.GenerateChannelsAlertsMappingTable(daId, tmFile);
                    break;

                case "Reports":
                    tmFile = processCategory.file.ElementAt(0);
                    GenerateReports generateReports = new GenerateReports();
                    filePath = generateReports.GenerateReportsMappingTable(daId, tmFile);
                    break;

                //To generate scenario builder Template file
                case "Scenario Builder Template":
                    ScenarioBuilder scenarioBuilderTemplate = new ScenarioBuilder();
                    filePath = scenarioBuilderTemplate.CreateSBTemplateFile(daId);
                    break;

                case "Scenario Stitching":
                    tmFile  = processCategory.file.ElementAt(0);
                    tmFile1 = processCategory.file.ElementAt(1);
                    ScenarioBuilder scenarioBuilder = new ScenarioBuilder();
                    //filePath = scenarioBuilder.GenerateScenarioBuilder(daId, tmFile, tmFile1); //
                    Task <string> fipath = scenarioBuilder.GenerateScenarioBuilder(daId, tmFile, tmFile1);
                    await Task.WhenAll(fipath);     //

                    fipath.Wait();
                    if (fipath.Status == TaskStatus.RanToCompletion)
                    {
                        filePath = fipath.Result;
                    }
                    else if (fipath.Status == TaskStatus.Running)
                    {
                        fipath.Wait();
                        filePath = fipath.Result;
                    }
                    break;

                case "Test Design":
                    tmFile  = processCategory.file.ElementAt(0);
                    tmFile1 = processCategory.file.ElementAt(1);
                    TestDesignController testDesign = new TestDesignController();
                    // filePath = testDesign.GenerateTestDesign(daId, tmFile,tmFile1); //
                    Task <string> fpath = testDesign.GenerateTestDesign(daId, tmFile, tmFile1);
                    await Task.WhenAll(fpath);     //

                    fpath.Wait();
                    if (fpath.Status == TaskStatus.RanToCompletion)
                    {
                        filePath = fpath.Result;
                    }
                    else if (fpath.Status == TaskStatus.Running)
                    {
                        fpath.Wait();
                        filePath = fpath.Result;
                    }
                    break;

                case "Traceability Matrix":
                    tmFile  = processCategory.file.ElementAt(0);
                    tmFile1 = processCategory.file.ElementAt(1);
                    TraceabilityMatrix traceabilityMatrix = new TraceabilityMatrix();
                    filePath = traceabilityMatrix.GenerateTraceabilityMatrix(daId, tmFile, tmFile1);     //
                    break;

                case "Run Plan":
                    tmFile = processCategory.file.ElementAt(2);
                    RunPlan runPlan = new RunPlan();
                    filePath = runPlan.CreateRunPlanFile(daId, tmFile);     //
                    break;

                case "Export DA":
                    ExportDesignAcceleratorController exportDA = new ExportDesignAcceleratorController();
                    filePath = exportDA.ExportDAFile(daId);
                    break;
                }


                var errorMessage = "you can return the errors in here!";

                //return the Excel file name
                return(Json(new { fileName = filePath, errorMessage = "" }));
            }
            catch (Exception ex)
            {
                errorlogviewmodel = new ErrorLogViewModel();
                errorlogviewmodel.LogError(ex);
                return(View("Error"));
            }
        }