private List<Object> valuesForAllCases(TestDescription[] testDescriptions, int paramNum) { List<Object> values = new ArrayList<>(); for (TestDescription description : testDescriptions) { ParameterWithValueDeclaration[] executionParams = description.getExecutionParams(); if (executionParams.length > 0) { values.add(executionParams[paramNum].getValue()); } else { values.add(null); } } return values; }
/** * Returns an ID of the test case. The ID is get from _id_ column or generated on index base. */ public String getId() { if (hasId()) { return String.valueOf(getArgumentValue(RowIdField.ROW_ID)); } else { return String.valueOf(index + 1); } }
public TestDescription(IOpenMethod testedMethod, Object[] arguments, IDataBase db) { this.testedMethod = testedMethod; this.testObject = createTestObject(testedMethod, arguments); executionParams = initExecutionParams(testedMethod, testObject, db, null); }
TestUnit(TestDescription test, Object res, Throwable error, long executionTime) { super(test, res, error, executionTime); this.expectedError = test.getExpectedError(); this.expectedResult = test.getExpectedResult(); this.actualResult = res; }
private TestDescription[] initTestsAndIndexes() { DynamicObject[] testObjects = getTestObjects(); TestDescription[] tests = new TestDescription[testObjects.length]; indeces = new HashMap<>(tests.length); Map<String, Object> properties = getProperties(); Integer precision = null; if (properties != null && properties.containsKey(PRECISION_PARAM)) { precision = Integer.parseInt(properties.get(PRECISION_PARAM).toString()); } IOpenMethod testedMethod = getTestedMethod(); ColumnDescriptor[] descriptors = getDescriptors(); List<IOpenField> fields = createFieldsToTest(testedMethod, descriptors, precision); for (int i = 0; i < tests.length; i++) { tests[i] = new TestDescription(testedMethod, testObjects[i], fields, descriptors, db); tests[i].setIndex(i); indeces.put(tests[i].getId(), i); } return tests; }
tasks.add(new WriteTask(new Cursor(rowNum, colNum++), description.getId(), styles.parameterValue, maxHeight)); ParameterWithValueDeclaration[] executionParams = description.getExecutionParams(); for (int p = 0; p < executionParams.length; p++) { ParameterWithValueDeclaration parameter = executionParams[p];
long end; try { IRuntimeContext context = test.getRuntimeContext(cloner); env.setContext(context); Object[] args = test.getArguments(cloner); IOpenMethod testedMethod = test.getTestedMethod();
public Integer getRowIndex() { if (runnableTestMethods.length > 0 && !runnableTestMethods[0].hasId()) { if (method instanceof TestSuiteMethod) { TestMethodBoundNode boundNode = ((TestSuiteMethod) method).getBoundNode(); if (boundNode != null && !boundNode.getTable().getHeaderTable().isNormalOrientation()) { // Currently row indexes aren't supported for transposed test tables return null; } } return table.getGridTable().getHeight() - runnableTestMethods.length + 1; } return null; }
private void writeTestcase(String testName, ITestUnit test) throws XMLStreamException { if (test.getResultStatus() == TR_OK) { empty("testcase"); } else { start("testcase"); } attr("name", test.getTest().getId()); attr("classname", testName); attr("time", getTime(test.getExecutionTime())); writeErrorOrFailureElement(test); if (test.getResultStatus() != TR_OK) { end(); } }
testSuite = new TestSuite(new TestDescription(method, params, db));
public Object getExpectedResult() { return getArgumentValue(TestMethodHelper.EXPECTED_RESULT_NAME); }
/** * Gets the description field value. * * @return if the description field value presents, return it`s value. In other case return * {@link ITestUnit#DEFAULT_DESCRIPTION} */ @Override public String getDescription() { String descr = test.getDescription(); return descr == null ? DEFAULT_DESCRIPTION : descr; }
createCell(row, colNum++, testUnit.getTest().getId(), ok ? styles.resultSuccessId : styles.resultFailureId); for (ParameterWithValueDeclaration parameter : testUnit.getTest().getExecutionParams()) { createCell(row, colNum++, parameter, styles.resultOther);
BaseTestUnit(TestDescription test, Object res, Throwable error, long executionTime) { this.test = test; this.executionTime = executionTime; Object expectedResult = test.getExpectedResult(); String expectedError = test.getExpectedError(); if (expectedError != null && expectedResult != null) { // Force testcase failure this.actualError = new IllegalArgumentException( "Ambiguous expectation in the test case. Two expected result has been declared."); } else { this.actualError = error; } this.resultStatus = compareResult(expectedError, expectedResult, res); }
public Integer getRowIndex() { if (runnableTestMethods.length > 0 && !runnableTestMethods[0].hasId()) { if (method instanceof TestSuiteMethod) { TestMethodBoundNode boundNode = ((TestSuiteMethod) method).getBoundNode(); if (boundNode != null && !boundNode.getTable().getHeaderTable().isNormalOrientation()) { // Currently row indexes aren't supported for transposed test tables return null; } } return table.getGridTable().getHeight() - runnableTestMethods.length + 1; } return null; }
private void writeTestcase(String testName, ITestUnit test) throws XMLStreamException { if (test.getResultStatus() == TR_OK) { empty("testcase"); } else { start("testcase"); } attr("name", test.getTest().getId()); attr("classname", testName); attr("time", getTime(test.getExecutionTime())); writeErrorOrFailureElement(test); if (test.getResultStatus() != TR_OK) { end(); } }
testSuite = new TestSuite(new TestDescription(method, params, db));
public String getExpectedError() { return (String) getArgumentValue(TestMethodHelper.EXPECTED_ERROR); }
public boolean hasDescription() { for (ITestUnit testUnit : testUnits) { if (testUnit.getTest().getDescription() != null) { return true; } } return false; }
private int getMaxHeight(TestDescription description, List<List<FieldDescriptor>> nonEmptyFields) { int maxHeight = 1; ParameterWithValueDeclaration[] executionParams = description.getExecutionParams(); for (int i = 0; i < executionParams.length; i++) { ParameterWithValueDeclaration param = executionParams[i]; List<FieldDescriptor> fields = nonEmptyFields.get(i); int rowHeight = getRowHeight(param.getValue(), fields); if (rowHeight > maxHeight) { maxHeight = rowHeight; } } return maxHeight; }