private static void setTestStatus(ITestResult result, int status) { // set the test to success as long as the testResult hasn't been changed by the user via // Reporter.getCurrentTestResult if (result.getStatus() == ITestResult.STARTED) { result.setStatus(status); } }
private void throwConfigurationFailure(ITestResult testResult, Throwable ex) { testResult.setStatus(ITestResult.FAILURE); testResult.setThrowable(ex.getCause() == null ? ex : ex.getCause()); }
private void throwConfigurationFailure(ITestResult testResult, Throwable ex) { testResult.setStatus(ITestResult.FAILURE); testResult.setThrowable(ex.getCause() == null ? ex : ex.getCause()); }
private static void setTestStatus(ITestResult result, int status) { // set the test to success as long as the testResult hasn't been changed by the user via // Reporter.getCurrentTestResult if (result.getStatus() == ITestResult.STARTED) { result.setStatus(status); } }
public ITestResult registerSkippedTestResult( ITestNGMethod testMethod, long start, Throwable throwable) { ITestResult result = TestResult.newEndTimeAwareTestResult(testMethod, m_testContext, throwable, start); result.setStatus(ITestResult.STARTED); runTestResultListener(result); result.setStatus(TestResult.SKIP); Reporter.setCurrentTestResult(result); return result; }
/** * An exception was thrown by the test, determine if this method * should be marked as a failure or as failure_but_within_successPercentage */ private void handleException(Throwable throwable, ITestNGMethod testMethod, ITestResult testResult, int failureCount) { if (throwable != null && testResult.getThrowable() == null) { testResult.setThrowable(throwable); } int successPercentage= testMethod.getSuccessPercentage(); int invocationCount= testMethod.getInvocationCount(); float numberOfTestsThatCanFail= ((100 - successPercentage) * invocationCount) / 100f; if(failureCount < numberOfTestsThatCanFail) { testResult.setStatus(ITestResult.SUCCESS_PERCENTAGE_FAILURE); } else { testResult.setStatus(ITestResult.FAILURE); } }
private static void invokeWithTimeoutWithNoExecutor(ITestNGMethod tm, Object instance, Object[] parameterValues, ITestResult testResult, IHookable hookable) { InvokeMethodRunnable imr = new InvokeMethodRunnable(tm, instance, parameterValues, hookable, testResult); long startTime = System.currentTimeMillis(); long realTimeOut = MethodHelper.calculateTimeOut(tm); try { imr.run(); if (System.currentTimeMillis() <= startTime + realTimeOut) { testResult.setStatus(ITestResult.SUCCESS); } else { ThreadTimeoutException exception = new ThreadTimeoutException("Method " + tm.getQualifiedName() + "()" + " didn't finish within the time-out " + realTimeOut); testResult.setThrowable(exception); testResult.setStatus(ITestResult.FAILURE); } } catch (Exception ex) { testResult.setThrowable(ex.getCause()); testResult.setStatus(ITestResult.FAILURE); } }
@Override public void testFinished(Description description) throws Exception { ITestResult tr = m_findedMethods.get(description); validate(tr, description); runAfterInvocationListeners(tr); if (!notified.contains(description)) { tr.setStatus(TestResult.SUCCESS); tr.setEndMillis(Calendar.getInstance().getTimeInMillis()); m_parentRunner.addPassedTest(tr.getMethod(), tr); for (ITestListener l : m_listeners) { l.onTestSuccess(tr); } } m_methods.add(tr.getMethod()); }
/** * Marks the current <code>TestResult</code> as skipped and invokes the listeners. */ private void handleConfigurationSkip(ITestNGMethod tm, ITestResult testResult, IConfigurationAnnotation annotation, ITestNGMethod currentTestMethod, Object instance, XmlSuite suite) { recordConfigurationInvocationFailed(tm, testResult.getTestClass(), annotation, currentTestMethod, instance, suite); testResult.setStatus(ITestResult.SKIP); runConfigurationListeners(testResult, false /* after */); }
private ITestResult registerSkippedTestResult(ITestNGMethod testMethod, Object instance, long start, Throwable throwable) { ITestResult result = new TestResult(testMethod.getTestClass(), instance, testMethod, throwable, start, System.currentTimeMillis(), m_testContext); result.setStatus(TestResult.SKIP); Reporter.setCurrentTestResult(result); runTestListeners(result); return result; }
@Test public void succeedTest2() { Reporter.getCurrentTestResult().setStatus(ITestResult.SUCCESS); throw new IllegalStateException(); } }
@Test(expectedExceptions = IllegalStateException.class, enabled = false) public void failedTest2() { Reporter.getCurrentTestResult().setStatus(ITestResult.FAILURE); throw new IllegalStateException(); }
@Test public void succeedTest() { Reporter.getCurrentTestResult().setStatus(ITestResult.SUCCESS); Assert.fail(); }
@Override public void testIgnored(Description description) throws Exception { if (!notified.contains(description)) { notified.add(description); ITestResult tr = m_findedMethods.get(description); validate(tr, description); runAfterInvocationListeners(tr); tr.setStatus(TestResult.SKIP); tr.setEndMillis(tr.getStartMillis()); m_parentRunner.addSkippedTest(tr.getMethod(), tr); m_methods.add(tr.getMethod()); for (ITestListener l : m_listeners) { l.onTestSkipped(tr); } } }
public void onTestStart(ITestResult testContext) { super.onTestStart(testContext); System.out.println("In onTestStart"); testContext.setStatus(ITestResult.FAILURE); throw new RuntimeException("Trying to fail a test"); } }
@Override public void testAssumptionFailure(Failure failure) { notified.add(failure.getDescription()); ITestResult tr = m_findedMethods.get(failure.getDescription()); validate(tr, failure.getDescription()); runAfterInvocationListeners(tr); tr.setStatus(TestResult.SKIP); tr.setEndMillis(Calendar.getInstance().getTimeInMillis()); tr.setThrowable(failure.getException()); m_parentRunner.addSkippedTest(tr.getMethod(), tr); for (ITestListener l : m_listeners) { l.onTestSkipped(tr); } }
protected static void invokeMethodConsideringTimeout(ITestNGMethod tm, ConstructorOrMethod method, Object targetInstance, Object[] params, ITestResult testResult) throws Throwable { if (MethodHelper.calculateTimeOut(tm) <= 0) { MethodInvocationHelper.invokeMethod(method.getMethod(), targetInstance, params); } else { MethodInvocationHelper.invokeWithTimeout(tm, targetInstance, params, testResult); if (!testResult.isSuccess()) { // A time out happened Throwable ex = testResult.getThrowable(); testResult.setStatus(ITestResult.FAILURE); testResult.setThrowable(ex.getCause() == null ? ex : ex.getCause()); throw testResult.getThrowable(); } } }
private void failIfErrors(ITestResult result) { ErrorsCollector errorsCollector = SelenideLogger.removeListener(LISTENER_SOFT_ASSERT); if (errorsCollector != null) { try { errorsCollector.failIfErrors(result.getTestClass().getName() + '.' + result.getName()); } catch (AssertionError e) { result.setStatus(ITestResult.FAILURE); result.setThrowable(e); } } } }
@Override public void afterInvocation(IInvokedMethod iInvokedMethod, ITestResult iTestResult) { if (iInvokedMethod.isTestMethod()) { String attribute = Github1600Analyzer.NO; if (iTestResult.getStatus() == ITestResult.SUCCESS) { iTestResult.setStatus(ITestResult.FAILURE); attribute = Github1600Analyzer.YES; } iTestResult.setAttribute(Github1600Analyzer.RETRY, attribute); } }
@Override public void afterInvocation(IInvokedMethod method, ITestResult testResult) { try { if (testResult.isSuccess()) { for (Object param : testResult.getParameters()) { if (param instanceof SingleConsumerQueue<?>) { assertThat((SingleConsumerQueue<?>) param, is(validate())); } } } } catch (AssertionError caught) { testResult.setStatus(ITestResult.FAILURE); testResult.setThrowable(caught); } finally { cleanUp(testResult); } } }