public override int ExecuteVariation(CXmlDriverParam param) { CError.WriteLine("Test Parameters : "); CError.WriteLine(this.CurVariation.Desc); CFactory f = null; string factoryToInvoke = param.SelectExistingValue("DriverFunction"); switch (factoryToInvoke) //seperates whether to call Reader or Writer { case "XmlReader": f = new CReaderFactory(); break; case "XmlWriter": f = new CWriterFactory(); break; default: throw new CTestFailedException("Invalid XmlDriverScenario passed in : " + factoryToInvoke); } CFactory.TestState testResult = f.TestVariation(param); if (testResult == CFactory.TestState.Pass) return TEST_PASS; else if (testResult == CFactory.TestState.Skip) return TEST_SKIPPED; return TEST_FAIL; }
/// <summary> /// Init does the following : /// Store Parameter Info. /// Parse out the commonly required and universal tags /// </summary> public virtual void Init(CXmlDriverParam param) { varInfo = param; string resultType = varInfo.SelectExistingValue("Result/@Type", "Data"); if (resultType == "Valid") isValid = true; else isValid = false; exceptionType = varInfo.SelectValue("Result/ExceptionType", "Data"); exceptionMsg = varInfo.SelectValue("Result/ExceptionMessage", "Data"); xmlFile = varInfo.SelectValue("Result/TestXmlFile", "Data"); filePath = varInfo.SelectValue("filepath", "Data"); filePath = FilePathUtil.ExpandVariables(filePath); if (filePath == null) { Log("Setting filePath = " + filePath); } httpPath = varInfo.SelectValue("httppath", "Data"); }