Java by API/junit.textui/a

Материал из Java эксперт
Перейти к: навигация, поиск

TestRunner: run(Test test)

   <source lang="java">

import junit.extensions.TestSetup; import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; public class Main extends TestCase {

 public static void main (String... args) {
   junit.textui.TestRunner.run (suite());
 }  
 
 public Main(String name) {
   super(name);
 }
 public void testPassNullsToConstructor() {
   try {
     Person p = new Person(null, null);
     fail("Expected IllegalArgumentException because both args are null");
   } catch (IllegalArgumentException expected) {
   }
 }
 public void testNullsInName() {
   fail("sample failure");
   Person p = new Person(null, "lastName");
   assertEquals("lastName", p.getFullName());
   p = new Person("Tanner", null);
   assertEquals("Tanner ?", p.getFullName());
 }
 public static void oneTimeSetup() {
   System.out.println("oneTimeSetUp");
 }
 public static void oneTimeTearDown() {
   System.out.println("oneTimeTearDown");
 }
 public static Test suite() {
   TestSetup setup = new TestSetup(new TestSuite(Main.class)) {
     protected void setUp() throws Exception {
       oneTimeSetup();
     }
     protected void tearDown() throws Exception {
       oneTimeTearDown();
     }
   };
   return setup;
 }

} class Person {

 private String firstName;
 private String lastName;
 public Person(String firstName, String lastName) {
   if (firstName == null && lastName == null) {
     throw new IllegalArgumentException("Both names cannot be null");
   }
   this.firstName = firstName;
   this.lastName = lastName;
 }
 public String getFullName() {
   String first = (this.firstName != null) ? this.firstName : "?";
   String last = (this.lastName != null) ? this.lastName : "?";
   return first + " " + last;
 }
 public String getFirstName() {
   return this.firstName;
 }
 public String getLastName() {
   return this.lastName;
 }

}

 </source>