Exemple #1
0
class TestRoom(unittest.TestCase):
    def setUp(self):
        #rooms
        self.room_1 = Room(1, 4)
        self.room_2 = Room(2, 4)
        self.room_3 = Room(3, 2)

        #guests
        self.guest_1 = Guest('Rick Sanchez', 70, 9999)
        self.guest_2 = Guest('Morty Smith', 14, 0)
        self.guest_3 = Guest('Gintoki Sakata', 29, 20)
        self.guest_4 = Guest('Briareos Hecaton', 42, 800)
        self.guest_5 = Guest('Deunan Knute', 33, 500)
        self.guest_6 = Guest('Cheryl Tunt', 27, 20)
        self.guest_7 = Guest('Lana Kane', 32, 300)
        self.guest_8 = Guest('Sterling Archer', 36, 850)
        #unwanted guest
        self.guest_9 = Guest('Jerry Smith', 40, 20)

        #songs
        self.song_1 = Song('Wicked Games', 'Chris Isaak')
        self.song_2 = Song('Fire Starter', 'The Prodigy')
        self.song_3 = Song('Big Poppa', 'The Notorious B.I.G')
        self.song_4 = Song('Still D.R.E', 'Dr. Dre ft. Snoop Dogg')

#6

    def test_guest_is_old_enough__returns_true(self):
        self.assertEqual(True, self.room_1.guest_is_old_enough(self.guest_1))
#7

    def test_customer_is_old_enough__returns_false(self):
        self.assertEqual(False, self.room_1.guest_is_old_enough(self.guest_2))
#8

    def test_add_song_to_room(self):
        self.room_1.add_song(self.song_1)
        self.room_1.add_song(self.song_3)
        self.assertEqual(2, self.room_1.song_count())
#9

    def test_checks_guests_in(self):
        self.room_1.add_guest(self.guest_1)
        self.room_1.add_guest(self.guest_2)
        self.room_1.add_guest(self.guest_3)
        self.assertEqual(2, self.room_1.guest_count())
#10
#@unittest.skip("delete this line to run the test")

    def test_checks_guests_out(self):
        self.room_1.remove_guest(self.guest_1)
        self.assertEqual(0, self.room_1.guest_count())

#11
#unittest.skip("delete this line to run the test")

    def test_remove_song_from_room(self):
        self.room_1.remove_song(self.song_1)
        self.assertEqual(0, self.room_1.song_count())
Exemple #2
0
class RoomTest(unittest.TestCase):

    def setUp(self):
        self.room = Room("podA", 100.00)
        self.song = Song("oasis", "wonderwall")
        self.guest = Guest ("Amy", 100.00)
        
    def test_check_song_list(self):
        self.assertEqual(0, len(self.room.song))

    def test_room_has_name(self):
        self.assertEqual("podA",self.room.room)

    def test_till_total(self):
        self.assertEqual(100.00, self.room.till)

    def test_add_song_to_song(self):
        song1 = Song ("coldplay", "fix_you")
        song2 = Song ("fleetwood_mac", "dreams")
        song3 = Song ("cream", "sunshine_of_your_love")
        self.room.add_song(song3)
        self.room.add_song(song1)
        self.room.add_song(song2)
        self.assertEqual(3, len(self.room.song))
    
    def test_check_song_list(self):
        self.assertEqual(0, len(self.room.song))

    # def test_add_room_name(self):
    #     room1 = Room("podA", 100.00)
    #     room2 = Room("podB", 100.00)
    #     room3 = Room("podC", 100.00)
    #     self.room.add_room_name(room1)
    #     self.room.add_room_name(room2)
    #     self.room.add_room_name(room3)
    #     self.assertEqual(3, len(self.room.room))

     
    def test_add_guest_to_room(self):
        guest1 = Guest("sam", 100,00)
        guest2 = Guest("pat", 50.00)
        guest3 = Guest("dan", 20.00)
        self.room.add_guest(self.guest1)
        self.room.add_guest(guest2)
        self.room.add_guest(guest3, self.guest)
        self.assertEqual(1, self.room.guest)

    # def test_check_in_guest(self):
    #     self.guest.check_in_guest(self.guest)
    #     self.assertEqual('Amy', self.guest.guest)
    #     self.assertEqual(1,len(self.room.room))
    #     #added this and append on room.py it stayed at 7 tests as if this does nothing...

    # def check_out_guest(self):
    #     self.guest.check_out_guest(self.guest)
    #     self.assertEqual("Amy", self.guest.guest)
    #     self.assertEqual(0, len(self.room.room))
    #     #added and no change, still 7 tests run, 0 error/fail.

    # def remove_guest_from_room(self):
    #     self.assertEqual()
class TestRoom(unittest.TestCase):
    def setUp(self):
        self.room = Room(1, 7.00)
        self.guest = Guest("Kakashi Hetaki", 27, 22.50,
                           "Communications Breakdown")
        self.guest_2 = Guest("Asuma Sarutobi", 28, 17.00, "Lotta Years")
        self.guest_3 = Guest("Jiraiya", 51, 47.00, "Brown Eyed Girl")
        self.guest_4 = Guest("Shikamaru Nara", 18, 5.00, "Emerald")
        self.song = Song("Aesop Rock", "Lotta Years", 50)
        self.song_2 = Song("Jon Hopkins", "Emerald", 0)
        self.song_3 = Song("Led Zeppelin", "Communications Breakdown", 100)
        self.song_4 = Song("Aesop Rock", "None Shall Pass", 150)

    def test_room_can_add_songs(self):
        self.room.add_song(self.song)
        self.room.add_song(self.song_2)
        list_len = self.room.get_song_list_len()
        self.assertEqual(2, list_len)

    def test_room_can_add_guest(self):
        self.room.add_guest(self.guest)
        self.assertEqual(1, self.room.get_current_guest_list_len())

    def test_if_room_is_full(self):
        self.room.add_guest(self.guest)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_3)
        is_true = self.room.check_if_room_full()
        self.assertTrue(is_true)

    def test_if_room_is_not_full(self):
        self.room.add_guest(self.guest)
        is_false = self.room.check_if_room_full()
        self.assertFalse(is_false)

    def test_guest_can_pay_bill(self):
        self.assertTrue(self.guest.can_pay_bill(self.room))

    def test_guest_can_not_pay_bill(self):
        self.assertFalse(self.guest_4.can_pay_bill(self.room))

    def test_guest_can_check_in(self):
        self.room.guest_check_in(self.guest)
        self.assertEqual(1, self.room.get_current_guest_list_len())

    def test_room_is_full(self):
        self.room.guest_check_in(self.guest)
        self.room.guest_check_in(self.guest_2)
        self.room.guest_check_in(self.guest_3)
        output = self.room.guest_check_in(self.guest_4)
        self.assertEqual(
            "I'm sorry, this room is currently full, please try another.",
            output)

    def test_not_enough_funds(self):
        output = self.room.guest_check_in(self.guest_4)
        self.assertEqual("You require more funds.", output)

    def test_get_songs_by_title(self):
        self.room.add_song(self.song)
        self.room.add_song(self.song_2)
        self.room.add_song(self.song_3)
        songs = self.room.get_songs_by_title("Emerald")
        self.assertEqual(1, len(songs))

    def test_no_songs_found_by_title(self):
        self.room.add_song(self.song_3)
        output = self.room.get_songs_by_title("Emerald")
        self.assertEqual("Sorry, we do not have that song", output)

    def test_get_songs_by_artist(self):
        self.room.add_song(self.song_2)
        self.room.add_song(self.song)
        self.room.add_song(self.song_4)
        songs = self.room.get_songs_by_artist("Aesop Rock")
        self.assertEqual(2, len(songs))

    def test_no_songs_by_artist(self):
        self.room.add_song(self.song)
        self.room.add_song(self.song_2)
        output = self.room.get_songs_by_artist("Barry White")
        self.assertEqual("Sorry, we don't have anything by that artist",
                         output)

    def test_look_for_fav_song(self):
        self.room.add_song(self.song)
        output = self.guest_2.look_for_fav_song(self.room)
        self.assertEqual("DIS MY JAM!", output)

    def test_room_till_increase_at_check_in(self):
        self.room.guest_check_in(self.guest)
        self.assertEqual(7, self.room.till)

    def test_find_guest_by_name(self):
        self.room.add_guest(self.guest)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_3)
        self.room.add_guest(self.guest_4)
        guest = self.room.find_guest_by_name("Jiraiya")
        self.assertEqual("Brown Eyed Girl", guest.favourite_song)

    def test_empty_room(self):
        self.room.add_guest(self.guest)
        self.room.add_guest(self.guest_2)
        self.room.empty_room()
        self.assertEqual(0, len(self.room.current_guests))
Exemple #4
0
class TestRoom (unittest.TestCase):
    def setUp(self):
        self.room1 = Room(8)
        self.room2 = Room(6)
        self.room3 = Room(4)
        self.room4 = Room(3)

        self.rooms = [self.room1, self.room2, self.room3, self.room4]

        self.song1 = Song("Wannabe", "The Spice Girls", 1996)
        self.song2 = Song("Song 2", "Blur", 1997)
        self.song3 = Song("Three Times a Lady", "Commodores", 1978)
        self.song4 = Song("For Free", "Joni Mitchell", 1970)
        self.song5 = Song("Spice Up Your Life", "The Spice Girls", 1997)

        self.songlist = [self.song1, self.song2, self.song3]

        self.guest1 = Guest("Bob", 10.00, "Wannabe")
        self.guest2 = Guest("Tina", 15.00, None)
        self.guest3 = Guest("Linda", 8.00, None)
        self.guest4 = Guest("Louise", 5.00, None)
        self.guest5 = Guest("Ted", 2.00, None)

    def test_room_has_songs_attribute(self):
        self.assertEqual([], self.room1.songs)

    def test_room_has_guests_attribute(self):
        self.assertEqual([], self.room1.guests)

    def test_room_has_capacity(self):
        self.assertEqual(8, self.room1.capacity)

    def test_add_guest_to_room(self):
        self.room1.add_guest(self.guest1)
        self.assertEqual(1, len(self.room1.guests))

    def test_remove_guest_from_room(self):
        self.room1.add_guest(self.guest1)
        self.room1.remove_guest(self.guest1)
        self.assertEqual(0, len(self.room1.guests))

    def test_clear_room_of_guests(self):
        self.room1.add_guest(self.guest1)
        self.room1.add_guest(self.guest2)
        self.room1.add_guest(self.guest3)
        self.room1.clear()
        self.assertEqual(0, len(self.room1.guests))

    def test_add_song_to_room(self):
        self.room1.add_song(self.song1)
        self.assertEqual(1, len(self.room1.songs))

    def test_remove_song_from_room(self):
        self.room1.add_song(self.song1)
        self.room1.remove_song(self.song1)
        self.assertEqual(0, len(self.room1.songs))

    def test_add_list_of_songs(self):
        self.room1.add_songlist(self.songlist)
        self.assertEqual(3, len(self.room1.songs))

    def test_songs_can_be_added_individually_and_from_list(self):
        self.room1.add_songlist(self.songlist)
        self.room1.add_song(self.song4)
        self.assertEqual(4, len(self.room1.songs))

    def test_clear_songlist(self):
        self.room1.add_songlist(self.songlist)
        self.room1.clear_songlist()
        self.assertEqual(0, len(self.room1.songs))

    def test_find_song_by_name(self):
        self.room1.add_songlist(self.songlist)
        song = self.room1.find_song_by_name("Wannabe")
        self.assertEqual("Wannabe", song.name)

    def test_room_has_guest_add_limit(self):
        self.room4.add_guest(self.guest1)
        self.room4.add_guest(self.guest2)
        self.room4.add_guest(self.guest3)
        self.room4.add_guest(self.guest4)
        self.assertEqual(3, len(self.room4.guests))

    def test_room_has_tab(self):
        self.assertEqual(0, self.room1.tab)

    def test_guest_entry_fee(self):
        self.room1.add_guest(self.guest1)
        self.room1.add_guest(self.guest2)
        self.assertEqual(10.00, self.room1.tab)
        self.assertEqual(5.00, self.guest1.wallet)
        self.assertEqual(10.00, self.guest2.wallet)
    
    def test_rejects_guests_who_cannot_afford_fee(self):
        self.room1.add_guest(self.guest5)
        self.assertEqual(0, len(self.room1.guests))

    def test_find_songs_by_artist(self):
        self.room1.add_song(self.song1)
        self.room1.add_song(self.song2)
        self.room1.add_song(self.song5)
        songs = self.room1.find_songs_by_artist("The Spice Girls")
        self.assertEqual(2, len(songs))
        self.assertEqual("Spice Up Your Life", songs[1].name)

    def test_find_songs_by_year_released(self):
        self.room1.add_song(self.song1)
        songs = self.room1.find_songs_by_year_released(1996)
        self.assertEqual("Wannabe", songs[0].name)
    
    def test_favourite_song_response(self):
        self.room1.add_guest(self.guest1)
        self.assertEqual("Woo!", self.room1.add_song(self.song1))
Exemple #5
0
class TestRoom(unittest.TestCase):
    def setUp(self):
        self.room = Room("The Wonderland", 90, 400, 0)

        self.guest_1 = Guest("Cyril", "Yes!", "VIP", 30000, "Dddudu")
        self.guest_2 = Guest("Max", "Yayy", "Regular", 400, "Perfect")
        self.guest_3 = Guest("David", "Grmm", "VIP", 300, "See you again")
        self.guest_4 = Guest("Daniel", "Whoop", "VIP", 8000, "Gucci")

        self.song_1 = Song("Dddudu", "Blackpink")
        self.song_2 = Song("Perfect", "Ed sheeran")
        self.song_3 = Song("Gucci", "Jessie")

        red_wine = Bar("Red Wine", 300)
        jack_daniels = Bar("Jack Daniels", 200)
        johnny_walker = Bar("Johnny Walker", 400)
        water = Bar("Water", 10)

        self.vip_drinks = [{
            "Drink": red_wine,
            "quantity": 9
        }, {
            "Drink": jack_daniels,
            "quantity": 4
        }, {
            "Drink": johnny_walker,
            "quantity": 5
        }, {
            "Drink": water,
            "quantity": 50
        }]

    def test_name_of_room(self):
        self.assertEqual("The Wonderland", self.room.name)

    def test_room_has_fee(self):
        self.assertEqual(400, self.room.vip_fee)

    def test_room_fee(self):
        self.assertEqual(0, self.room.till)

    def test_guest_sorted(self):
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.assertEqual(2, len(self.room.vip_guest))
        self.assertEqual(2, len(self.room.regular_guest))

    def test_checkout_guest(self):
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.check_out_guest(self.guest_1)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.check_out_guest(self.guest_2)
        self.assertEqual(2, len(self.room.vip_guest))
        self.assertEqual(1, len(self.room.regular_guest))

    def test_song_added_to_list(self):
        self.room.add_songs(self.song_1)
        self.room.add_songs(self.song_2)
        self.assertEqual(2, len(self.room.songs))

    def test_minimize_number_of_guests(self):
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.add_guest(self.guest_1)
        self.room.restrict_guest(self.guest_1)
        self.assertEqual(8, len(self.room.vip_guest))
        self.assertEqual(3, self.room.waiting_line)

    def test_minimize_number_of_regular_guests(self):
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.add_guest(self.guest_2)
        self.room.restrict_guest(self.guest_2)
        self.assertEqual(1, self.room.waiting_line)

    def test_room_till(self):
        self.guest_1.pay_fee(self.room)
        self.guest_2.pay_fee(self.room)
        self.assertEqual(490, self.room.till)

    def test_guest_cant_afford(self):
        self.room.guest_can_afford(self.guest_3)
        self.assertEqual(0, self.room.till)

    def test_guest_can_afford(self):
        self.room.guest_can_afford(self.guest_1)
        self.assertEqual(400, self.room.till)

    def test_guest_can_find_song_by_artist(self):
        self.room.add_songs(self.song_1)
        self.room.add_songs(self.song_2)
        self.assertEqual("Perfect",
                         self.room.guest_can_find_song(self.song_2.artist))

    def test_guest_favourite_song(self):
        self.room.add_songs(self.song_1)
        self.room.add_songs(self.song_2)
        self.room.add_songs(self.song_3)
        self.assertEqual("Yes!", self.room.play_song(self.guest_1))
        self.assertEqual("Nahhh", self.room.play_song(self.guest_3))

    def test_pub_add_drink(self):
        self.room.add_drink(self.vip_drinks[1])
        self.room.add_drink(self.vip_drinks[1])
        self.assertEqual(6, self.vip_drinks[1]["quantity"])

    def test_pub_remove_drink(self):
        self.room.add_drink(self.vip_drinks[2])
        self.room.add_drink(self.vip_drinks[2])
        self.room.remove_drink(self.vip_drinks[2])
        self.assertEqual(6, self.vip_drinks[2]["quantity"])

    def test_guest_sell_drink(self):
        self.guest_4.pay_fee(self.room)
        self.room.sell_drink(self.guest_4, self.vip_drinks[1])
        self.room.add_songs(self.song_3)
        self.assertEqual(600, self.room.till)
        self.assertEqual(3, self.vip_drinks[1]["quantity"])
        self.assertEqual(7400, self.guest_4.wallet)
        self.assertEqual("Whoop", self.room.play_song(self.guest_4))