Esempio n. 1
0
class TestGuest(unittest.TestCase):
    def setUp(self):
        self.guest_1 = Guest("Pierre", 50, "Gotta Go")
        self.guest_2 = Guest("Alexander", 40, "On My Radio")
        self.guest_3 = Guest("Pepe", 30, "Divorce a I'ltalienne")
        self.guest_4 = Guest("Edi", 5, "Gotta Go")

        self.room_1 = Room("Bongo", 3, 20)
        self.room_2 = Room("Studio 24", 5, 30)

        self.song_1 = Song("Gotta Go", "Agnostic Front", 3.2)
        self.song_2 = Song("On My Radio", "Selecter", 3.52)
        self.song_3 = Song("Divorce a I'ltalienne", "Mungo's Hifi", 3.46)

    def test_guest_has_name(self):
        self.assertEqual("Pierre", self.guest_1.name)

    def test_guest_has_money(self):
        self.assertEqual(30, self.guest_3.cash)

    def test_guest_paying_entry_decreases_cash(self):
        self.guest_1.pay_entry_fee(self.guest_1, self.room_1)
        self.assertEqual(30, self.guest_1.cash)

    def test_if_guest_fav_song_is_in_room(self):
        self.room_1.add_song_to_list(self.song_1, self.room_1)
        self.room_1.add_song_to_list(self.song_2, self.room_1)
        self.assertEqual(
            "Whoo!", self.guest_1.fav_song_in_room(self.guest_1, self.room_1))
Esempio n. 2
0
class TestRoom(unittest.TestCase):
    def setUp(self):
        self.room_1 = Room("Bongo", 3, 20)
        self.room_2 = Room("Studio 24", 5, 30)

        self.guest_1 = Guest("Pierre", 50, "Gotta Go")
        self.guest_2 = Guest("Alexander", 40, "On My Radio")
        self.guest_3 = Guest("Pepe", 30, "Divorce a I'ltalienne")
        self.guest_4 = Guest("Edi", 5, "Gotta Go")

        self.song_1 = Song("Gotta Go", "Agnostic Front", 3.2)
        self.song_2 = Song("On My Radio", "Selecter", 3.52)
        self.song_3 = Song("Divorce a I'ltalienne", "Mungo's Hifi", 3.46)

    def test_room_has_name(self):
        self.assertEqual("Bongo", self.room_1.name)

    def test_room_has_capacity(self):
        self.assertEqual(True, isinstance(self.room_1.capacity, int))

    def test_room_entry_fee(self):
        self.assertEqual(30, self.room_2.entry_fee)

    def test_guest_list_empty(self):
        self.assertEqual([], self.room_1.guest_list)

    def test_song_list_empty(self):
        self.assertEqual([], self.room_2.song_list)

    def test_add_guest_to_list(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        #check if guest is added to the list
        self.assertEqual(1, len(room.guest_list))
        #check if money is taken from the guest
        self.assertEqual(30, self.guest_1.cash)
        #check if money is added to the till
        self.assertEqual(120, room.check_till(room))

    def test_add_guests_to_list(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        self.assertEqual(2, len(room.guest_list))

    def test_remove_guest_from_room(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.remove_guest_from_room(self.guest_1, room)
        self.assertEqual([], room.guest_list)

    def test_song_to_room(self):
        self.room_1.add_song_to_list(self.song_1, self.room_1)
        self.assertEqual(1, len(self.room_1.song_list))

    def test_full_room(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        room.add_guest_to_room(self.guest_3, room)
        self.assertEqual(room.capacity, len(room.guest_list))

    def test_to_many_guests_in_room(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        room.add_guest_to_room(self.guest_3, room)
        self.assertEqual("Room is full, please wait outside",
                         room.add_guest_to_room(self.guest_4, room))

    def test_to_many_guests_in_room2(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        room.add_guest_to_room(self.guest_3, room)
        room.add_guest_to_room(self.guest_4, room)
        self.assertEqual(room.capacity, len(room.guest_list))

    def test_check_if_guest_has_enough_money(self):
        self.assertEqual(True,
                         self.room_2.refuse_entry(self.guest_4, self.room_2))

    def test_check_if_guest_has_enough_money2(self):
        self.room_2.add_guest_to_room(self.guest_4, self.room_2)
        self.assertEqual([], self.room_1.guest_list)

    def test_check_if_guest_has_enough_money3(self):
        self.room_2.add_guest_to_room(self.guest_3, self.room_2)
        self.assertEqual(1, len(self.room_2.guest_list))

    def test_check_till(self):
        self.assertEqual(self.room_1.till, self.room_1.check_till(self.room_1))

    def test_check_if_fee_add_to_till(self):
        self.room_1.add_entry_fee_to_till(self.room_1)
        self.assertEqual(120, self.room_1.check_till(self.room_1))

    def test_if_guest_fav_song_is_in_room(self):
        self.room_1.add_song_to_list(self.song_1, self.room_1)
        self.assertEqual(
            "Whoo!", self.guest_1.fav_song_in_room(self.guest_1, self.room_1))

    def test_remove_all_from_room(self):
        room = self.room_2
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        room.remove_all_from_room(room)
        self.assertEqual([], room.guest_list)
        self.assertEqual(160, room.check_till(room))

    def test_sesion_time_out_empty_room(self):
        room = self.room_1
        room.add_guest_to_room(self.guest_1, room)
        room.add_guest_to_room(self.guest_2, room)
        room.add_song_to_list(self.song_1, room)
        room.add_song_to_list(self.song_2, room)
        room.add_song_to_list(self.song_3, room)
        room.add_song_to_list(self.song_1, room)
        self.assertEqual([], room.guest_list)