Ejemplo n.º 1
0
    def test_send_back(self):
        librarian = Librarian()
        librarian.add_book("xxxx", "b")

        member1 = Member()
        member2 = Member()

        # can send back a book
        book = member1.borrow("xxxx")
        self.assertEqual(book.is_borrowed, True)
        self.assertEqual(member1.number_book_borrowed, 1)
        member1.send_back("xxxx")
        self.assertEqual(book.is_borrowed, False)
        self.assertEqual(member1.number_book_borrowed, 0)

        # can't send back a book that is not yours
        book = member1.borrow("xxxx")
        self.assertEqual(book.is_borrowed, True)
        member2.send_back("xxxx")
        self.assertEqual(book.is_borrowed, True)
        member1.send_back("xxxx")
        self.assertEqual(book.is_borrowed, False)

        # can't send back a book not borrowed
        book = member1.send_back("xxxx")
        self.assertIsNone(book)
Ejemplo n.º 2
0
def setup():
    print("generation of a librarian...")
    librarian = Librarian()
    librarian.add_book("toto", "tom")
    librarian.add_book("toto II", "tom")
    librarian.add_book("xx21", "tim")
    librarian.add_book("xx22", "tim")
    librarian.add_book("Investir dans le btc", "Elon Musk")
Ejemplo n.º 3
0
    def test_borrow(self):
        librarian = Librarian()
        librarian.add_book("a", "b")
        librarian.add_book("c", "d")
        librarian.add_book("e", "f")
        librarian.add_book("g", "h")
        librarian.add_book("i", "j")
        librarian.add_book("k", "l")

        member = Member()
        member2 = Member()

        # Return None when borrowing a book already borrowed
        member.borrow("a")
        self.assertIsNone(member.borrow("a"))
        self.assertIsNone(member2.borrow("a"))

        # Return None when borrowing more than 3 books
        member.borrow("c")
        member.borrow("e")
        self.assertIsNone(member.borrow("g"))

        # Return None when borrowing a non existing book
        self.assertIsNone(member2.borrow("fkjerfjkzen"))

        book = Book("xx", "xx")
        book2 = Book("xy", "xx")
        librarian.add_book("xx", "xx")
        librarian.add_book("xy", "xx")

        # Can Borrow
        previous_book_borrowed = member2.number_book_borrowed
        self.assertEqual(member2.borrow("xx").title, book.title)
        self.assertEqual(member2.borrow("xy").borrowed_by, member2.id)
        self.assertEqual(member2.number_book_borrowed,
                         previous_book_borrowed + 2)
Ejemplo n.º 4
0
 def test_add_book(self):
     librarian = Librarian()
     previous_length = len(LIBRARY)
     librarian.add_book("title", "author")
     self.assertEqual(previous_length + 1, len(LIBRARY))