Exemplo n.º 1
0
 def test_acid_bath_two_same_room(self):
     test = Room(RoomType.acid_bath, False)
     player = Player()
     player2 = Player()
     players = [player, Player(), player2, Player()]
     test.on_room_enter([], player2, players)
     event = test.on_room_enter([], player, players)[0]
     self.assertEqual(player.current_room, test)
     self.assertEqual(RoomEvent(RoomEventType.player_death, player2), event)
Exemplo n.º 2
0
 def test_cold_chamber(self):
     test = Room(RoomType.cold_chamber, False)
     player = Player()
     event = test.on_room_enter([], player, [])[0]
     self.assertEqual(player.current_room, test)
     self.assertEqual(player.status, PlayerStatus.frozen)
     self.assertEqual(RoomEvent(RoomEventType.player_frozen, player), event)
Exemplo n.º 3
0
 def test_twin_chamber_no_twin(self):
     test = Room(RoomType.twin_chamber, False)
     twin = Room(RoomType.twin_chamber, False)
     player = Player()
     rooms = []
     self.assertEqual([], test.on_room_enter(rooms, player, []))
     self.assertEqual(player.current_room, test)
Exemplo n.º 4
0
 def test_twin_chamber_hidden(self):
     test = Room(RoomType.twin_chamber, False)
     twin = Room(RoomType.twin_chamber)
     player = Player()
     rooms = [test, Room(RoomType.central_room), twin]
     self.assertEqual([], test.on_room_enter(rooms, player, []))
     self.assertEqual(player.current_room, test)
Exemplo n.º 5
0
 def test_mortal_chamber(self):
     test = Room(RoomType.mortal_chamber, False)
     player = Player()
     event = test.on_room_enter([], player, [])[0]
     self.assertEqual(player.current_room, test)
     self.assertTrue(player.dead)
     self.assertEqual(RoomEvent(RoomEventType.player_death, player), event)
Exemplo n.º 6
0
 def test_dark_chamber(self):
     test = Room(RoomType.dark_chamber, False)
     player = Player()
     event = test.on_room_enter([], player, [])[0]
     self.assertEqual(player.current_room, test)
     self.assertEqual(player.status, PlayerStatus.blind)
     self.assertEqual(RoomEvent(RoomEventType.player_blind, player), event)
Exemplo n.º 7
0
 def test_prison_cell(self):
     test = Room(RoomType.prison_cell, False)
     player = Player()
     event = test.on_room_enter([], player, [])[0]
     self.assertEqual(player.current_room, test)
     self.assertEqual(player.status, PlayerStatus.imprisonned)
     self.assertEqual(RoomEvent(RoomEventType.player_imprisonned, player),
                      event)
Exemplo n.º 8
0
 def test_acid_bath_multi(self):
     test = Room(RoomType.acid_bath, False)
     player = Player()
     event = test.on_room_enter(
         [], player,
         [player, Player(), Player(), Player()])
     self.assertEqual(player.current_room, test)
     self.assertEqual([], event)
Exemplo n.º 9
0
 def test_vortex_room(self):
     test = Room(RoomType.vortex_room, False)
     central = Room(RoomType.central_room)
     player = Player()
     rooms = [test, Room(RoomType.twin_chamber), central]
     self.assertEqual(
         RoomEvent(RoomEventType.player_move, player, test, central),
         test.on_room_enter(rooms, player, [])[0])
     self.assertEqual(player.current_room, central)
Exemplo n.º 10
0
 def test_twin_chamber_revealed_another_order(self):
     test = Room(RoomType.twin_chamber, False)
     twin = Room(RoomType.twin_chamber, False)
     player = Player()
     rooms = [twin, Room(RoomType.central_room), test]
     self.assertEqual(
         RoomEvent(RoomEventType.player_move, player, test, twin),
         test.on_room_enter(rooms, player, [])[0])
     self.assertEqual(player.current_room, twin)
Exemplo n.º 11
0
 def test_flooded_chamber(self):
     test = Room(RoomType.flooded_chamber, False)
     player = Player()
     event = test.on_room_enter([], player, [])[0]
     self.assertEqual(player.current_room, test)
     self.assertTrue(test.locked)
     self.assertEqual(player.status, PlayerStatus.flooded)
     self.assertEqual(RoomEvent(RoomEventType.player_flooded, player),
                      event)
Exemplo n.º 12
0
 def test_reveal(self):
     test = Room(RoomType.empty_chamber, True)
     player = Player()
     self.assertEqual(RoomEvent(RoomEventType.reveal),
                      test.on_room_enter([], player, [])[0])
     self.assertEqual(player.current_room, test)
Exemplo n.º 13
0
 def test_empty_chamber(self):
     test = Room(RoomType.empty_chamber, False)
     player = Player()
     self.assertEqual([], test.on_room_enter([], player, []))
     self.assertEqual(player.current_room, test)
Exemplo n.º 14
0
 def test_moving_chamber(self):
     test = Room(RoomType.moving_chamber, False)
     player = Player()
     self.assertEqual(RoomEvent(RoomEventType.moving),
                      test.on_room_enter([], player, [])[0])
     self.assertEqual(player.current_room, test)