public static void runTestCaseExecuteElement(Element executeElement) throws Exception { PoshiRunnerStackTraceUtil.setCurrentElement(executeElement); XMLLoggerHandler.updateStatus(executeElement, "pending"); String classCommandName = executeElement.attributeValue("test-case"); String className = PoshiRunnerGetterUtil.getClassNameFromClassCommandName(classCommandName); if (className.equals("super")) { className = PoshiRunnerGetterUtil.getExtendedTestCaseName(); classCommandName = classCommandName.replaceFirst("super", className); } PoshiRunnerStackTraceUtil.pushStackTrace(executeElement); Element rootElement = PoshiRunnerContext.getTestCaseRootElement(className); List<Element> rootVarElements = rootElement.elements("var"); for (Element rootVarElement : rootVarElements) { runVarElement(rootVarElement, false, true); } Element commandElement = PoshiRunnerContext.getTestCaseCommandElement(classCommandName); runTestCaseCommandElement(commandElement); PoshiRunnerStackTraceUtil.popStackTrace(); XMLLoggerHandler.updateStatus(executeElement, "pass"); }
@Test public void testValidateClassCommandName() { String classCommandName = "ValidateClassCommandName#classCommandName"; Element element = PoshiRunnerContext.getTestCaseCommandElement(classCommandName); String filePath = getFilePath("ValidateClassCommandName.testcase"); PoshiRunnerValidation.validateClassCommandName( element, classCommandName, "test-case", filePath); Assert.assertEquals("validateClassCommandName is failing", "", getExceptionMessage()); PoshiRunnerValidation.validateClassCommandName( element, "ValidateClassCommandName#fail", "test-case", filePath); Assert.assertEquals( "validateClassCommandName is failing", "Invalid test-case command ValidateClassCommandName#fail", getExceptionMessage()); }