Package junit.tests.framework

Source Code of junit.tests.framework.SuiteTest

package junit.tests.framework;

import java.util.Collections;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestResult;
import junit.framework.TestSuite;

/**
* A fixture for testing the "auto" test suite feature.
*
*/
public class SuiteTest extends TestCase {
  protected TestResult fResult;
  public SuiteTest(String name) {
    super(name);
  }
  @Override
  protected void setUp() {
    fResult= new TestResult();
  }
  public static Test suite() {
    TestSuite suite= new TestSuite("Suite Tests");
    // build the suite manually, because some of the suites are testing
    // the functionality that automatically builds suites
    suite.addTest(new SuiteTest("testNoTestCases"));
    suite.addTest(new SuiteTest("testOneTestCase"));
    suite.addTest(new SuiteTest("testNotPublicTestCase"));
    suite.addTest(new SuiteTest("testNotVoidTestCase"));
    suite.addTest(new SuiteTest("testNotExistingTestCase"));
    suite.addTest(new SuiteTest("testInheritedTests"));
    suite.addTest(new SuiteTest("testOneTestCaseEclipseSeesSameStructureAs381"));   
    suite.addTest(new SuiteTest("testNoTestCaseClass"));
    suite.addTest(new SuiteTest("testShadowedTests"));
    suite.addTest(new SuiteTest("testAddTestSuite"));
    suite.addTest(new SuiteTest("testCreateSuiteFromArray"));
   
    return suite;
  }
  public void testInheritedTests() {
    TestSuite suite= new TestSuite(InheritedTestCase.class);
    suite.run(fResult);
    assertTrue(fResult.wasSuccessful());
    assertEquals(2, fResult.runCount());
  }
  public void testNoTestCaseClass() {
    Test t= new TestSuite(NoTestCaseClass.class);
    t.run(fResult);
    assertEquals(1, fResult.runCount())// warning test
    assertTrue(! fResult.wasSuccessful());
  }
  public void testNoTestCases() {
    Test t= new TestSuite(NoTestCases.class);
    t.run(fResult);
    assertTrue(fResult.runCount() == 1)// warning test
    assertTrue(fResult.failureCount() == 1);
    assertTrue(! fResult.wasSuccessful());
  }
  public void testNotExistingTestCase() {
    Test t= new SuiteTest("notExistingMethod");
    t.run(fResult);
    assertTrue(fResult.runCount() == 1)
    assertTrue(fResult.failureCount() == 1);
    assertTrue(fResult.errorCount() == 0);
  }
  public void testNotPublicTestCase() {
    TestSuite suite= new TestSuite(NotPublicTestCase.class);
    // 1 public test case + 1 warning for the non-public test case
    assertEquals(2, suite.countTestCases());
  }
  public void testNotVoidTestCase() {
    TestSuite suite= new TestSuite(NotVoidTestCase.class);
    assertTrue(suite.countTestCases() == 1);
  }
  public void testOneTestCase() {
    TestSuite t= new TestSuite(OneTestCase.class);
    t.run(fResult);
    assertTrue(fResult.runCount() == 1)
    assertTrue(fResult.failureCount() == 0);
    assertTrue(fResult.errorCount() == 0);
    assertTrue(fResult.wasSuccessful());
  }
  public void testOneTestCaseEclipseSeesSameStructureAs381() {
    TestSuite t= new TestSuite(ThreeTestCases.class);
    assertEquals(3, Collections.list(t.tests()).size());
  }
  public void testShadowedTests() {
    TestSuite suite= new TestSuite(OverrideTestCase.class);
    suite.run(fResult);
    assertEquals(1, fResult.runCount());
  }
  public void testAddTestSuite() {
    TestSuite suite= new TestSuite();
    suite.addTestSuite(OneTestCase.class);
    suite.run(fResult);
    assertEquals(1, fResult.runCount());
  }
  public void testCreateSuiteFromArray() {
    TestSuite suite = new TestSuite(OneTestCase.class, DoublePrecisionAssertTest.class);
    assertEquals(2, suite.testCount());
    assertEquals("junit.tests.framework.DoublePrecisionAssertTest" , ((TestSuite)suite.testAt(1)).getName());
    assertEquals("junit.tests.framework.OneTestCase" , ((TestSuite)suite.testAt(0)).getName());
  }
}
TOP

Related Classes of junit.tests.framework.SuiteTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.