protected override bool Validator() { ComponentFunction.Initialize(Commands); if (_dtAccess == null) { Error.WriteLine("The ExcelDataAccess object is null."); return false; } List<TestSuite> listTSuite = new List<TestSuite>(); foreach (TestCase tcase in listTCase) { List<TestStep> TStep_temp = new List<TestStep>(); foreach (TestStep step in listTStep) { if (step.TestCase.Equals(tcase.Name)) TStep_temp.Add(step); } TestSuite tsuite = new TestSuite(TStep_temp, tcase); listTSuite.Add(tsuite); } List<TestSuite> invalidTestSuite = new List<TestSuite>(); //Validate each Testsuite: foreach (TestSuite tsuite in listTSuite) { string errormes = ""; if (tsuite.Construct(ref errormes)) { validTestSuite.Add(tsuite); } else { invalidTestSuite.Add(tsuite); Error.WriteLine("Error at testcase =" + tsuite.getName()); Error.WriteLine(errormes); } } int n = invalidTestSuite.Count; if (n > 0) { Error.Write("There are errors. Do you want to continue?(Y,N)"); string ans = In.ReadLine(); if (ans.Equals("N") || ans.Equals("n")) { return false; } } return true; }
protected override bool Validator() { if (_dtAccess == null) { Error.WriteLine("The ExcelDataAccess object is null."); return false; } List<TestCase> listTCase = _dtAccess.getTestcases(); List<TestStep> listTStep = _dtAccess.getTeststeps(); _listTData = _dtAccess.getTestdatas(); if (_listTData == null) { Error.Write("There are no TData available. Do you want to continue? (y/n)"); string ans = In.ReadLine(); if (ans.Equals("n") || ans.Equals("N")) { return false; } } else { if (_listTData.Count <= 0) { Error.Write("There are no TData available. Do you want to continue? (y/n)"); string ans = In.ReadLine(); if (ans.Equals("n") || ans.Equals("N")) { return false; } } } //Construct steps: foreach (TestCase tcase in listTCase) { List<TestStep> TStep_temp = new List<TestStep>(); foreach (TestStep step in listTStep) { if (step.TestCase.Equals(tcase.Name)) TStep_temp.Add(step); } TestSuite tsuite = new TestSuite(TStep_temp, tcase); _listTSuite.Add(tsuite); } //Validate each Testsuite: foreach (TestSuite tsuite in _listTSuite) { string errormes = ""; if (tsuite.Construct(ref errormes)) { if (tsuite.getState().Equals(Glossary.BLOCK)) { _blockTestSuite.Add(tsuite); } else { _validTestSuite.Add(tsuite); } } else { _invalidTestSuite.Add(tsuite); Error.WriteLine("Error at testcase =" + tsuite.getName()); Error.WriteLine(errormes); } } Out.WriteLine("/////////////////////////////////////VALID-TESTCASE////////////////////////////////////////////"); Out.WriteLine("ID :Name :Parameters "); foreach (TestSuite v_tsuite in _validTestSuite) { Out.WriteLine(v_tsuite.getID() + " :" + v_tsuite.getName() + " :"); List<string> listArgumentInfo = v_tsuite.getInputArgumentsTypeInfo(); foreach (string str in listArgumentInfo) { Out.WriteLine(str); } } Out.WriteLine("/////////////////////////////////////VALID-TESTCASE////////////////////////////////////////////"); Out.WriteLine(); Out.WriteLine("/////////////////////////////////////BLOCK-TESTCASE////////////////////////////////////////////"); //Console.WriteLine("Name :Parameters "); foreach (TestSuite b_tsuite in _blockTestSuite) { Out.WriteLine(b_tsuite.getName() + " :"); } Out.WriteLine("/////////////////////////////////////BLOCK-TESTCASE////////////////////////////////////////////"); Out.WriteLine(); Out.WriteLine("/////////////////////////////////////INVALID-TESTCASE////////////////////////////////////////////"); //Console.WriteLine("Name :Parameters "); foreach (TestSuite v_tsuite in _invalidTestSuite) { Out.WriteLine(v_tsuite.getName() + " :"); } Out.WriteLine("///////////////////////////////////////////////////////////////////////////////////////////////"); Out.WriteLine("/////////////////////////////////////INVALID-TESTCASE////////////////////////////////////////////"); Out.WriteLine("///////////////////////////////////////////////////////////////////////////////////////////////"); int nInvalid = _invalidTestSuite.Count; if (nInvalid > 0) { Error.Write("There are still errors. Do you want to continue? (y/n)"); string ans = In.ReadLine(); if (ans.Equals("n") || ans.Equals("N")) { UpdateSteps(); return false; } } int nValid = _validTestSuite.Count; if (nValid <= 0) { Error.WriteLine("There is not valid testcase."); UpdateSteps(); return false; } foreach (TestData data in _listTData) { if (data.Result.Equals("") || data.Result.Equals(Glossary.NOTRUN)) { foreach (TestSuite tsuite in _listTSuite) { if (data.TestCase.Equals(tsuite.getName())) { tsuite.inTData(data); break; } } } } return true; }