def test_num_cells_available(self): app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 9 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 15) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 14) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 13) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 12) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 11) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 1) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 8 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 15) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 14) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 13) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 12) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 11) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 1) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 7 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 15) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 14) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 13) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 12) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 11) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 1) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 6 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 5 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 4 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 10) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 9) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 8) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 7) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 6) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 3 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 2 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.funding = 1 app.cells = 15 self.assertEqual(app.numCellsAvailable(), 5) app.cells = 14 self.assertEqual(app.numCellsAvailable(), 4) app.cells = 13 self.assertEqual(app.numCellsAvailable(), 3) app.cells = 12 self.assertEqual(app.numCellsAvailable(), 2) app.cells = 11 self.assertEqual(app.numCellsAvailable(), 1) app.cells = 10 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 9 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 8 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 7 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 6 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 5 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 4 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 3 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 2 self.assertEqual(app.numCellsAvailable(), 0) app.cells = 1 self.assertEqual(app.numCellsAvailable(), 0)
def test_execute_recruit(self): # Normal app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 1, [1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 1, [2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 13) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [1, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [2, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [1, 1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 3) self.assertEqual(app.cells, 12) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [1, 2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 13) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [2, 1, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [2, 2, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) # Coherent app.cells = 15 unusedOps = app.executeRecruit("United States", 1, [1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 1, [2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 13) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [1, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 2, [2, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [1, 1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 3) self.assertEqual(app.cells, 12) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [1, 2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 13) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [2, 1, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 15 unusedOps = app.executeRecruit("United States", 3, [2, 2, 2]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 0) self.assertEqual(app.cells, 15) # not enough cells app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 1 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 1) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 2 app.funding = 9 unusedOps = app.executeRecruit("United States", 3, [2, 2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 1) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 2 app.funding = 9 unusedOps = app.executeRecruit("United States", 3, [1, 2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 0) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 2 app.funding = 9 unusedOps = app.executeRecruit("United States", 3, [1, 1, 2]) self.assertEqual(unusedOps, 1) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 0) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 1 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 1) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 0) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 2 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 0) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 3 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 1) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 3 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 2) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 5 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [2, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 1) self.assertEqual(app.cells, 4) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 5 app.funding = 9 unusedOps = app.executeRecruit("United States", 2, [1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 2) self.assertEqual(app.cells, 3) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 5 app.funding = 9 unusedOps = app.executeRecruit("United States", 3, [1, 1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 3) self.assertEqual(app.cells, 2) app = Labyrinth(1, 2, self.set_up_blank_test_scenario) app.cells = 4 app.funding = 9 unusedOps = app.executeRecruit("United States", 3, [1, 1, 1]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["United States"].sleeperCells, 3) self.assertEqual(app.cells, 1) # IR RC app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 app.funding = 9 app.map["Iraq"].make_poor() unusedOps = app.executeRecruit("Iraq", 1, [4]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["Iraq"].sleeperCells, 0) self.assertEqual(app.cells, 15) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 app.funding = 9 app.map["Iraq"].make_islamist_rule() unusedOps = app.executeRecruit("Iraq", 1, [6]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["Iraq"].sleeperCells, 1) self.assertEqual(app.cells, 14) app = Labyrinth(1, 1, self.set_up_blank_test_scenario) app.cells = 15 app.funding = 9 app.map["Iraq"].make_fair() app.map["Iraq"].regimeChange = 1 unusedOps = app.executeRecruit("Iraq", 1, [6]) self.assertEqual(unusedOps, 0) self.assertEqual(app.map["Iraq"].sleeperCells, 1) self.assertEqual(app.cells, 14)