def testRentBook(self): client1 = Client(1, "Name1") client2 = Client(2, "Name2") book1 = Book(1, "Title", "Description", "Author") book2 = Book(2, "Title1", "Description1", "Author1") clientRepo = Repository() bookRepo = Repository() functions = ClientController(clientRepo, Statistics(clientRepo)) functiom = BookController(bookRepo, Statistics(bookRepo)) functions.addClient(client2.getId(), client2.getName()) functions.addClient(client1.getId(), client1.getName()) functiom.addBook(book1.getId(), book1.getTitle(), book1.getDescription(), book1.getAuthor()) functiom.addBook(book2.getId(), book2.getTitle(), book2.getDescription(), book2.getAuthor()) rentalRepo = Repository() functionsr = RentalController(bookRepo, clientRepo, rentalRepo, Statistics(rentalRepo)) msg1 = functionsr.rentBook(book1.getId(), client1.getId(), createDateFromString("23.11.2017"), "30.11.2017") self.assertTrue(len(msg1) == 0) self.assertTrue(functionsr.getRentals()[0].getBookId() == book1.getId()) self.assertTrue(functionsr.getRentals()[0].getClientId() == client1.getId()) msg2 = functionsr.rentBook(book2.getId, client2.getId(), createDateFromString("20.11.2017"), "19.11.2017") self.assertTrue(msg2 == "Inconsistent dates")
def testRemoveBook(self): book1 = Book(1, "Title", "Description", "Author") book2 = Book(2, "Title1", "Description1", "Author1") book3 = Book(3, "Title2", "Description2", "Author2") repo = Repository() functions = BookController(repo, Statistics(repo)) functions.addBook(book1.getId(), book1.getTitle(), book1.getDescription(), book1.getAuthor()) functions.addBook(book2.getId(), book2.getTitle(), book2.getDescription(), book2.getAuthor()) functions.addBook(book3.getId(), book3.getTitle(), book3.getDescription(), book3.getAuthor()) msg1 = functions.removeBook(1) self.assertTrue(len(msg1) == 0) self.assertTrue(functions.getBooks()[0].getId() == book2.getId()) self.assertTrue(functions.getBooks()[0].getTitle() == book2.getTitle()) self.assertTrue(functions.getBooks()[0].getDescription() == book2.getDescription()) self.assertTrue(functions.getBooks()[0].getAuthor() == book2.getAuthor()) msg2 = functions.removeBook(1) self.assertTrue(msg2 == "The provided ID does not exist") self.assertTrue(functions.getBooks()[0].getId() == book2.getId()) self.assertTrue(functions.getBooks()[0].getTitle() == book2.getTitle()) self.assertTrue(functions.getBooks()[0].getDescription() == book2.getDescription()) self.assertTrue(functions.getBooks()[0].getAuthor() == book2.getAuthor())
def testBook(): try: book1 = Book(1, "a", "b", "c") assert book1.getId() == 1 assert book1.getTitle() == "a" assert book1.getDescription() == "b" assert book1.getAuthor() == "c" except: assert False try: book1 = Book("D", "d", "d", "d") print(book1) assert False except BookException: pass try: book1 = Book(1, "a", "b", "c") book1.setTitle(3) assert False except: pass print("Book tests ran successfully!")
def testBook(): try: book1 = Book(1, "a", "b", "c") assert book1.getId() == 1 assert book1.getTitle() == "a" assert book1.getDescription() == "b" assert book1.getAuthor() == "c" except: assert False try: book1 = Book("D", "d", "d", "d") print(book1) assert False except BookException: pass try: book1 = Book(1, "a", "b", "c") book1.setTitle(3) assert False except: pass print ("Book tests ran successfully!")
def testDomainBook(self): book = Book(1, "Title", "Description", "Author") self.assertTrue(book.getTitle() == "Title") self.assertTrue(book.getDescription() == "Description") self.assertTrue(book.getAuthor() == "Author") self.assertTrue(book.getId() == 1) self.assertTrue(book.isRented() != True) self.assertTrue(not (book == 1)) book.setRented(True) self.assertTrue(book.isRented())
def testBook(self): try: book1 = Book(1, "a", "b", "c") self.assertEqual(book1.getId(), 1) self.assertEqual(book1.getTitle(), "a") self.assertEqual( book1.getDescription() , "b") self.assertEqual( book1.getAuthor() , "c") except: self.assertEqual( False ) try: book1 = Book("D", "d", "d", "d") self.assertEqual( False ) except BookException: pass try: book1 = Book(1, "a", "b", "c") book1.setTitle(3) self.assertEqual( False ) except: pass
def testBook(self): try: book1 = Book(1, "a", "b", "c") self.assertEqual(book1.getId(), 1) self.assertEqual(book1.getTitle(), "a") self.assertEqual(book1.getDescription(), "b") self.assertEqual(book1.getAuthor(), "c") except: self.assertEqual(False) try: book1 = Book("D", "d", "d", "d") self.assertEqual(False) except BookException: pass try: book1 = Book(1, "a", "b", "c") book1.setTitle(3) self.assertEqual(False) except: pass
def testAddBook(self): book1 = Book(1, "Title", "Description", "Author") book2 = Book(2, "Title1", "Description1", "Author1") book3 = Book(1, "Title2", "Description2", "Author2") repo = Repository() functions = BookController(repo, Statistics(repo)) msg1 = functions.addBook(book1.getId(), book1.getTitle(), book1.getDescription(), book1.getAuthor()) self.assertTrue(msg1 == "") self.assertTrue(functions.getBooks()[0].getId() == book1.getId()) self.assertTrue(functions.getBooks()[0].getTitle() == book1.getTitle()) self.assertTrue(functions.getBooks()[0].getDescription() == book1.getDescription()) self.assertTrue(functions.getBooks()[0].getAuthor() == book1.getAuthor()) msg2 = functions.addBook(book2.getId(), book2.getTitle(), book2.getDescription(), book2.getAuthor()) self.assertTrue(msg2 == "") self.assertTrue(functions.getBooks()[1].getId() == book2.getId()) self.assertTrue(functions.getBooks()[1].getTitle() == book2.getTitle()) self.assertTrue(functions.getBooks()[1].getDescription() == book2.getDescription()) self.assertTrue(functions.getBooks()[1].getAuthor() == book2.getAuthor()) msg3 = functions.addBook(book3.getId(), book3.getTitle(), book3.getDescription(), book3.getAuthor()) self.assertTrue(msg3 == "Cannot add an existing element") self.assertTrue(functions.getBooks()[1].getId() == book2.getId()) self.assertTrue(functions.getBooks()[1].getTitle() == book2.getTitle()) self.assertTrue(functions.getBooks()[1].getDescription() == book2.getDescription()) self.assertTrue(functions.getBooks()[1].getAuthor() == book2.getAuthor()) self.assertTrue(functions.getBooks()[0].getId() == book1.getId()) self.assertTrue(functions.getBooks()[0].getTitle() == book1.getTitle()) self.assertTrue(functions.getBooks()[0].getDescription() == book1.getDescription()) self.assertTrue(functions.getBooks()[0].getAuthor() == book1.getAuthor())
class TestDomain(unittest.TestCase): def setUp(self): self.client = Client(23, 'alex') self.client2 = Client(12, 'diana') self.book = Book(21, 'titlu', 'descriere', 'author') self.book2 = Book(22, 'titlu2', 'descriere2', 'author2') self.rental = Rental(21236, 21, 23, date(2017, 11, 5), date(2017, 12, 6), date(2017, 12, 5)) self.rental2 = Rental(21236, 21, 23, date(2017, 11, 5), date(2017, 12, 6), date(2017, 12, 5)) def tearDown(self): pass def test_create_Client(self): # CLIENTS TESTS self.assertEqual(23, self.client.getID()) self.assertEqual('alex', self.client.getName()) self.client.setName('da') self.assertEqual('da', self.client.getName()) self.assertFalse(self.client == self.client2) self.assertEqual(str(self.client), '023. da\n') self.assertEqual(self.client.create_client(23, 'alex'), self.client) def test_create_book(self): self.assertEqual(21, self.book.getID()) self.assertEqual('titlu', self.book.getTitle()) self.assertEqual('descriere', self.book.getDescription()) self.assertEqual('author', self.book.getAuthor()) self.assertEqual(True, self.book.get_available()) self.book.setTitle('lol') self.assertEqual('lol', self.book.getTitle()) self.book.setAuthor('da') self.assertEqual('da', self.book.getAuthor()) self.book.setDescription('da') self.assertEqual('da', self.book.getDescription()) self.assertEqual(str(self.book), '021. lol by da\n->da\nStatus: Available\n') self.book.set_available(False) self.assertEqual(False, self.book.get_available()) self.assertEqual(str(self.book), '021. lol by da\n->da\nStatus: Unavailable\n') self.assertNotEqual(self.book, self.book2) self.assertEqual(self.book.create_book(21, 'titlu', 'descriere', 'author'), self.book) def test_create_rental(self): self.assertEqual(21236, self.rental.getID()) self.assertEqual(21, self.rental.getBookID()) self.assertEqual(23, self.rental.getClientID()) self.assertEqual(date(2017, 12, 6), self.rental.getDueDate()) self.assertEqual(date(2017, 11, 5), self.rental.getRentedDate()) self.assertEqual(date(2017, 12, 5), self.rental.getReturnedDate()) self.assertEqual('Rental 21236: book: 21 rented by client 23 on 05.11.2017 and is due by 06.12.2017', str(self.rental)) self.rental.setBookID(21) self.rental.setClientID(23) self.rental.setReturnedDate(date(2017, 12, 12)) self.rental.setDueDate(date(2017, 11, 21)) self.rental.setRentedDate(date(2017, 9, 23)) self.assertEqual(len(self.rental), 80) self.rental.setReturnedDate(None) self.assertEqual(len(self.rental), 0) self.assertEqual(self.rental.getDelay(), (date.today()-self.rental.getDueDate()).days) self.assertEqual(self.rental, self.rental2) self.rental.setReturnedDate(date(2017, 12, 12)) self.assertEqual(self.rental.create_rental(21, 23, 12, 5).getBookID(), 21) self.assertEqual(self.rental.printReturned(self.rental), 'Rental 21236: book: 21 rented by client 23 on 23.09.2017 was returned on 12.12.2017')