class TestsFourthFunctionality(unittest.TestCase): def setUp(self): unittest.TestCase.setUp(self) def initialize(self): undoStack = Stack() redoStack = Stack() self.__valid_movie = ValidMovie() self.__valid_client = ValidClient() self.__valid_rental = ValidRental() self.__movies_repository = Repository() self.__clients_repository = Repository() self.__rentals_repository = Repository() self.__service_movies = ServiceMovies(self.__movies_repository, self.__valid_movie, undoStack, redoStack, self.__rentals_repository) self.__service_clients = ServiceClients(self.__clients_repository, self.__valid_client, undoStack, redoStack, self.__rentals_repository) self.__service_rentals = ServiceRentals(self.__movies_repository, self.__clients_repository, self.__rentals_repository, self.__valid_rental, undoStack, redoStack) self.__service_movies.generate_movies() self.__service_clients.generate_client() self.__service_rentals.rent_movie(1, 1, 1, '1/1/1', '2/1/1') self.__service_rentals.return_movie(1, '3/1/1') self.__service_rentals.rent_movie(3, 1, 1, '5/1/1', '10/1/1') self.__service_rentals.return_movie(3, '15/1/1') self.__service_rentals.rent_movie(2, 2, 2, '2/2/2', '3/3/3') self.__service_rentals.return_movie(2, '7/2/2') self.__service_rentals.rent_movie(4, 3, 4, '1/1/1', '2/1/1') self.__service_rentals.return_movie(4, '2/1/1') def test_most_rented(self): self.initialize() result = self.__service_rentals.most_rented() self.assertEqual(result[0].movie.get_id(), 1) self.assertEqual(result[1].movie.get_id(), 2) self.assertEqual(result[2].movie.get_id(), 3) def test_most_active(self): self.initialize() result = self.__service_rentals.most_active() self.assertEqual(result[0].client.get_id(), 1) self.assertEqual(result[1].client.get_id(), 2) self.assertEqual(result[2].client.get_id(), 4) def test_late_rentals(self): self.initialize() self.__service_rentals.rent_movie(11, 1, 1, '4/4/4', '5/5/5') self.__service_rentals.rent_movie(12, 2, 2, '4/4/4', '5/5/5') result = self.__service_rentals.late_rentals() print(result) self.assertEqual(result[0].movie_id, 1) self.assertEqual(result[1].movie_id, 2)
repository_movie = Repository() repository_client = Repository() repository_rental = Repository() ''' Services ''' service_movie = ServiceMovies(repository_movie, valid_movie, undo_stack, redo_stack, repository_rental) service_client = ServiceClients(repository_client, valid_client, undo_stack, redo_stack, repository_rental) service_rental = ServiceRentals(repository_movie, repository_client, repository_rental, valid_rental, undo_stack, redo_stack) service_undo = ServiceUndo(undo_stack, redo_stack) ''' Initializing ''' service_movie.generate_movies() service_client.generate_client() elif line[2] == "text": from text_files import FileRepo line = file.readline().strip() line = line.split(" ") repository_movie = FileRepo(line[2], Movie.read_movie, Movie.write_movie) line = file.readline().strip() line = line.split(" ") repository_client = FileRepo(line[2], Client.read_client, Client.write_client)