Package webserg.refactoring.ch1.test

Source Code of webserg.refactoring.ch1.test.CustomerTest

package webserg.refactoring.ch1.test;
import junit.framework.TestCase;
import webserg.refactoring.ch1.Customer;
import webserg.refactoring.ch1.Movie;
import webserg.refactoring.ch1.Rental;

public class CustomerTest extends TestCase {

  protected void setUp() throws Exception {
    super.setUp();
  }

  protected void tearDown() throws Exception {
    super.tearDown();
  }

  public void testCustomer() {
    Customer c = new Customer("David");
    assertNotNull(c)
  }

  public void testAddRental() {
    Customer customer2 = new Customer("Sallie");
    Movie movie1 = new Movie("Gone with the Wind", Movie.REGULAR);
    Rental rental1 = new Rental(movie1, 3); // 3 day rental
    customer2.addRental(rental1);
  }

  public void testGetName() {
    Customer c = new Customer("David");
    assertEquals("David", c.getName());
  }

  public void testStatementForRegularMovie() {
    Customer customer2 = new Customer("Sallie");
    Movie movie1 = new Movie("Gone with the Wind", Movie.REGULAR);
    Rental rental1 = new Rental(movie1, 3); // 3 day rental
    customer2.addRental(rental1);
    String expected = "Rental Record for Sallie\n" +
              "\tGone with the Wind\t3.5\n" +
              "Amount owed is 3.5\n" +
              "You earned 1 frequent renter points";
    String statement = customer2.statement();
    assertEquals(expected, statement);
  }
 
  public void testStatementForNewReleaseMovie() {
    Customer customer2 = new Customer("Sallie");
    Movie movie1 = new Movie("Star Wars", Movie.NEW_RELEASE);
    Rental rental1 = new Rental(movie1, 3); // 3 day rental
    customer2.addRental(rental1);
    String expected = "Rental Record for Sallie\n" +
              "\tStar Wars\t9.0\n" +
              "Amount owed is 9.0\n" +
              "You earned 2 frequent renter points";
    String statement = customer2.statement();
    assertEquals(expected, statement);
  }
 
  public void testStatementForChildrensMovie() {
    Customer customer2 = new Customer("Sallie");
    Movie movie1 = new Movie("Madagascar", Movie.CHILDRENS);
    Rental rental1 = new Rental(movie1, 3); // 3 day rental
    customer2.addRental(rental1);
    String expected = "Rental Record for Sallie\n" +
              "\tMadagascar\t1.5\n" +
              "Amount owed is 1.5\n" +
              "You earned 1 frequent renter points";
    String statement = customer2.statement();
    assertEquals(expected, statement);
  }
 
  public void testStatementForManyMovies() {
    Customer customer1 = new Customer("David");
    Movie movie1 = new Movie("Madagascar", Movie.CHILDRENS);
    Rental rental1 = new Rental(movie1, 6); // 6 day rental
    Movie movie2 = new Movie("Star Wars", Movie.NEW_RELEASE);
    Rental rental2 = new Rental(movie2, 2); // 2 day rental
    Movie movie3 = new Movie("Gone with the Wind", Movie.REGULAR);
    Rental rental3 = new Rental(movie3, 8); // 8 day rental
    customer1.addRental(rental1);
    customer1.addRental(rental2);
    customer1.addRental(rental3);
    String expected = "Rental Record for David\n" +
              "\tMadagascar\t6.0\n" +
              "\tStar Wars\t6.0\n" +
              "\tGone with the Wind\t11.0\n" +
              "Amount owed is 23.0\n" +
              "You earned 4 frequent renter points";
    String statement = customer1.statement();
    assertEquals(expected, statement);
  }
  public void testPriceBreak(){
    String name = "Serg";
    String titleMovie = "Terminator";
    Customer customerSerg = new Customer("Serg");
    try{
      Movie movieWithWrongType = new Movie("Terminator", -1);
    }catch (IllegalArgumentException e) {
      assertTrue(true);
   
    /*int daysRental = 3;
    Rental rentalMovieWithWrongType = new Rental(movieWithWrongType,daysRental);
    customerSerg.addRental(rentalMovieWithWrongType);
    String expected = "Rental Record for " + name + "\n" +
    "\t"+ titleMovie +"\t0.0\n" +
    "Amount owed is 0.0\n" +
    "You earned 1 frequent renter points";
    String statement = customerSerg.statement();
    assertEquals(expected, statement);*/
  }
 
}
 
TOP

Related Classes of webserg.refactoring.ch1.test.CustomerTest

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.