Compare commits
2 commits
56bdaee2a2
...
9137e7e133
| Author | SHA1 | Date | |
|---|---|---|---|
| 9137e7e133 | |||
| c2ae3f8f2e |
19 changed files with 22 additions and 17 deletions
|
|
@ -10,6 +10,8 @@ repositories {
|
||||||
dependencies {
|
dependencies {
|
||||||
testImplementation(platform('org.junit:junit-bom:5.10.0'))
|
testImplementation(platform('org.junit:junit-bom:5.10.0'))
|
||||||
testImplementation('org.junit.jupiter:junit-jupiter')
|
testImplementation('org.junit.jupiter:junit-jupiter')
|
||||||
|
testImplementation group: 'org.assertj', name: 'assertj-core', version: '3.24.2'
|
||||||
|
testImplementation "org.mockito:mockito-core:3.+"
|
||||||
}
|
}
|
||||||
|
|
||||||
test {
|
test {
|
||||||
|
|
|
||||||
BIN
lib/aopalliance-1.0.jar
Normal file
BIN
lib/aopalliance-1.0.jar
Normal file
Binary file not shown.
BIN
lib/apiguardian-api-1.1.2.jar
Normal file
BIN
lib/apiguardian-api-1.1.2.jar
Normal file
Binary file not shown.
BIN
lib/guava-19.0.jar
Normal file
BIN
lib/guava-19.0.jar
Normal file
Binary file not shown.
BIN
lib/guice-4.1.0-no_aop.jar
Normal file
BIN
lib/guice-4.1.0-no_aop.jar
Normal file
Binary file not shown.
BIN
lib/javax.inject-1.jar
Normal file
BIN
lib/javax.inject-1.jar
Normal file
Binary file not shown.
BIN
lib/jcommander-1.72.jar
Normal file
BIN
lib/jcommander-1.72.jar
Normal file
Binary file not shown.
BIN
lib/junit-jupiter-5.8.1.jar
Normal file
BIN
lib/junit-jupiter-5.8.1.jar
Normal file
Binary file not shown.
BIN
lib/junit-jupiter-api-5.8.1.jar
Normal file
BIN
lib/junit-jupiter-api-5.8.1.jar
Normal file
Binary file not shown.
BIN
lib/junit-jupiter-engine-5.8.1.jar
Normal file
BIN
lib/junit-jupiter-engine-5.8.1.jar
Normal file
Binary file not shown.
BIN
lib/junit-jupiter-params-5.8.1.jar
Normal file
BIN
lib/junit-jupiter-params-5.8.1.jar
Normal file
Binary file not shown.
BIN
lib/junit-platform-commons-1.8.1.jar
Normal file
BIN
lib/junit-platform-commons-1.8.1.jar
Normal file
Binary file not shown.
BIN
lib/junit-platform-engine-1.8.1.jar
Normal file
BIN
lib/junit-platform-engine-1.8.1.jar
Normal file
Binary file not shown.
BIN
lib/opentest4j-1.2.0.jar
Normal file
BIN
lib/opentest4j-1.2.0.jar
Normal file
Binary file not shown.
BIN
lib/snakeyaml-1.21.jar
Normal file
BIN
lib/snakeyaml-1.21.jar
Normal file
Binary file not shown.
BIN
lib/testng-7.1.0.jar
Normal file
BIN
lib/testng-7.1.0.jar
Normal file
Binary file not shown.
|
|
@ -48,8 +48,9 @@ public class Customer {
|
||||||
// add frequent renter points
|
// add frequent renter points
|
||||||
frequentRenterPoints++;
|
frequentRenterPoints++;
|
||||||
// add bonus for a two day new release rental
|
// add bonus for a two day new release rental
|
||||||
if ((each.getMovie().getPriceCode() == Movie.NEW_RELEASE) && each.getDaysRented() > 1)
|
if ((each.getMovie().getPriceCode() == Movie.NEW_RELEASE) && each.getDaysRented() > 1) {
|
||||||
frequentRenterPoints++;
|
frequentRenterPoints++;
|
||||||
|
}
|
||||||
|
|
||||||
// show figures for this rental
|
// show figures for this rental
|
||||||
result += "\t" + each.getMovie().getTitle() + "\t" + String.valueOf(thisAmount) + "\n";
|
result += "\t" + each.getMovie().getTitle() + "\t" + String.valueOf(thisAmount) + "\n";
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ public class Movie {
|
||||||
public void setPriceCode(int arg) {
|
public void setPriceCode(int arg) {
|
||||||
_priceCode = arg;
|
_priceCode = arg;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getTitle() {
|
public String getTitle() {
|
||||||
return _title;
|
return _title;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,31 +2,32 @@ package movierental;
|
||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
public class CustomerTest {
|
public class CustomerTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void test() {
|
public void test() {
|
||||||
|
// Given
|
||||||
Customer customer = new Customer("Bob");
|
Customer customer = new Customer("Bob");
|
||||||
customer.addRental(new Rental(new Movie("Jaws", Movie.REGULAR), 2));
|
Movie mockMovie = mock(Movie.class);
|
||||||
customer.addRental(new Rental(new Movie("Golden Eye", Movie.REGULAR), 3));
|
|
||||||
customer.addRental(new Rental(new Movie("Short New", Movie.NEW_RELEASE), 1));
|
|
||||||
customer.addRental(new Rental(new Movie("Long New", Movie.NEW_RELEASE), 2));
|
|
||||||
customer.addRental(new Rental(new Movie("Bambi", Movie.CHILDRENS), 3));
|
|
||||||
customer.addRental(new Rental(new Movie("Toy Story", Movie.CHILDRENS), 4));
|
|
||||||
|
|
||||||
|
when(mockMovie.getTitle()).thenReturn("Mock Movie");
|
||||||
|
when(mockMovie.getPriceCode()).thenReturn(Movie.REGULAR);
|
||||||
|
customer.addRental(new Rental(mockMovie, 2));
|
||||||
|
|
||||||
|
// When
|
||||||
|
String statement = customer.statement();
|
||||||
|
|
||||||
|
// Then
|
||||||
String expected = "" +
|
String expected = "" +
|
||||||
"Rental Record for Bob\n" +
|
"Rental Record for Bob\n" +
|
||||||
"\tJaws\t2.0\n" +
|
"\tMock Movie\t2.0\n" +
|
||||||
"\tGolden Eye\t3.5\n" +
|
"Amount owed is 2.0\n" +
|
||||||
"\tShort New\t3.0\n" +
|
"You earned 1 frequent renter points";
|
||||||
"\tLong New\t6.0\n" +
|
|
||||||
"\tBambi\t1.5\n" +
|
|
||||||
"\tToy Story\t3.0\n" +
|
|
||||||
"Amount owed is 19.0\n" +
|
|
||||||
"You earned 7 frequent renter points";
|
|
||||||
|
|
||||||
assertEquals(expected, customer.statement());
|
assertThat(statement).isEqualTo(expected);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Add table
Reference in a new issue