public void AnEmptyRentalRecordShouldHaveATotalAmountOfZero() { var customer = new Customer("John Smith"); var order = new Order(); var statement = new Statement(order, customer); Assert.AreEqual(statement.TotalAmount(order.Rentals), 0.00); }
public void IndexShouldShowCurrentCart() { var customer = new Customer("John Smith"); var controller = new CartController(customer); ViewResult result = controller.Index(); Assert.That(result.Model, Is.SameAs(customer.Cart)); }
public void NonEmpty() { const string expected = "Rental Record for John Smith\n" + " Monty Python and the Holy Grail - $3.50\n" + " Ran - $2.00\n" + " LA Confidential - $6.00\n" + " Star Trek 13.2 - $3.00\n" + " Wallace and Gromit - $6.00\n" + "Amount charged is $20.50\n" + "You have a new total of 6 frequent renter points"; var customer = new Customer("John Smith"); var montyPython = new Movie("Monty Python and the Holy Grail", new RegularPrice()); var ran = new Movie("Ran", new RegularPrice()); var laConfidential = new Movie("LA Confidential", new NewReleasePrice()); var starTrek = new Movie("Star Trek 13.2", new NewReleasePrice()); var wallaceAndGromit = new Movie("Wallace and Gromit", new ChildrensPrice()); var mixedRentals = new List<Rental>(); mixedRentals.Add(new Rental(montyPython, 3)); mixedRentals.Add(new Rental(ran, 1)); mixedRentals.Add(new Rental(laConfidential, 2)); mixedRentals.Add(new Rental(starTrek, 1)); mixedRentals.Add(new Rental(wallaceAndGromit, 6)); Assert.AreEqual(expected, customer.Statement(mixedRentals)); }
public void ShouldCreateRentalForOneDay() { var customer = new Customer("John Smith"); var controller = new CartController(customer); controller.RentMovie("Avatar"); List<Rental> rentals = customer.Cart.Rentals; Assert.That(rentals.First(r => r.Movie.Title == "Avatar").Period, Is.EqualTo(1)); }
public void ShouldAddMovieToCart() { var customer = new Customer("John Smith"); var controller = new CartController(customer); controller.RentMovie("Avatar"); List<Rental> rentals = customer.Cart.Rentals; Assert.That(rentals.Any(r => r.Movie.Title == "Avatar")); }
public void Empty() { var customer = new Customer("John Smith"); const string noRentalsStatement = "Rental Record for John Smith\n" + "Amount charged is $0.00\n" + "You have a new total of 0 frequent renter points"; Assert.AreEqual(noRentalsStatement, customer.Statement(new List<Rental>())); }
public void ShouldCountMultipleMovies() { var customer = new Customer("John Smith"); var controller = new CartController(customer); controller.RentMovie("Avatar"); Assert.That(customer.Cart.Count, Is.EqualTo(1)); controller.RentMovie("Waterworld"); Assert.That(customer.Cart.Count, Is.EqualTo(2)); }
public void SetUp() { var mockRepo = new Mock<MovieRepository>(); var movies = new List<Movie> { new Movie("Avatar"), new Movie("Up in the Air"), new Movie("Finding Nemo"), new Movie("Ping Pong") }; mockRepo.Setup(repo => repo.FindAllMovies()).Returns(movies); customer = new Customer("John Smith"); controller = new HomePageController(customer, mockRepo.Object); }
public void ShouldProvideStatementsForCustomer() { var repository = new StatementRepository(); var c1 = new Customer("One"); var c2 = new Customer("Two"); var statement = new Statement(c1); repository.Add(statement); repository.Add(new Statement(c2)); var c1statements = repository.FindByCustomer(c1); Assert.That(c1statements.Contains(statement)); Assert.That(c1statements.Count(), Is.EqualTo(1)); }
public Statement(Order order, Customer customer) { this.Order = order; this.Customer = customer; }
public HomePageController(Customer customer, MovieRepository movieRepository) { this.customer = customer; this.movieRepository = movieRepository; }
public Statement(Customer customer) { Customer = customer; Text = customer.Statement(customer.Cart.Rentals); }
public CartController(Customer customer) { this.customer = customer; }
public HomePageModel(IEnumerable<Movie> movies, Customer customer) { this.Movies = new List<Movie>(movies); this.Cart = customer.Cart; }
public void SetUp() { customer = new Customer("John Smith"); controller = new HomePageController(customer); }
public void SetUp() { customer = new Customer(); repository = new StatementRepository(); controller = new StatementsController(repository, customer); }
public StatementsController(StatementRepository repository, Customer customer) { this.repository = repository; this.customer = customer; }
public IEnumerable<Statement> FindByCustomer(Customer customer) { return statements.Where(s => s.Customer == customer); }