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)
Esempio n. 2
0
    def test_place_plot(self):
        # no cells
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 1)
        unusedOps = app.executePlot(2, False, [1, 2])
        self.assertEqual(unusedOps, 2)
        unusedOps = app.executePlot(3, True, [1, 2, 3])
        self.assertEqual(unusedOps, 3)

        # 1 cell in US
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 1
        unusedOps = app.executePlot(1, True, [2])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 1)
        self.assertEqual(app.map["United States"].sleeperCells, 0)
        self.assertEqual(app.map["United States"].plots, 0)

        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 1)
        self.assertEqual(app.map["United States"].plots, 1)

        # 2 cells in us
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 2
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 1)
        self.assertEqual(app.map["United States"].sleeperCells, 1)
        self.assertEqual(app.map["United States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 2
        unusedOps = app.executePlot(2, True, [1, 1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 0)
        self.assertEqual(app.map["United States"].plots, 2)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 2
        unusedOps = app.executePlot(2, True, [1, 2])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 0)
        self.assertEqual(app.map["United States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 2
        unusedOps = app.executePlot(3, True, [1, 2, 3])
        self.assertEqual(unusedOps, 1)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 0)
        self.assertEqual(app.map["United States"].plots, 1)

        # 3 cells in us
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 3
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 1)
        self.assertEqual(app.map["United States"].sleeperCells, 2)
        self.assertEqual(app.map["United States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 3
        unusedOps = app.executePlot(2, True, [1, 1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 1)
        self.assertEqual(app.map["United States"].plots, 2)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 3
        unusedOps = app.executePlot(2, True, [1, 2])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 1)
        self.assertEqual(app.map["United States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 3
        unusedOps = app.executePlot(2, True, [1, 2])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 2)
        self.assertEqual(app.map["United States"].sleeperCells, 1)
        self.assertEqual(app.map["United States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["United States"].sleeperCells = 3
        unusedOps = app.executePlot(3, True, [1, 1, 3])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["United States"].activeCells, 3)
        self.assertEqual(app.map["United States"].sleeperCells, 0)
        self.assertEqual(app.map["United States"].plots, 2)

        # Low prestige, no GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 8
        app.map["Israel"].sleeperCells = 1
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 1)
        self.assertEqual(app.map["Israel"].sleeperCells, 0)
        self.assertEqual(app.map["Israel"].plots, 1)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].plots, 0)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 8
        app.map["Israel"].sleeperCells = 1
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        unusedOps = app.executePlot(2, True, [1, 1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 1)
        self.assertEqual(app.map["Israel"].sleeperCells, 0)
        self.assertEqual(app.map["Israel"].plots, 1)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].activeCells, 1)
        self.assertEqual(app.map["Iraq"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.map["Israel"].sleeperCells = 1
        app.map["United States"].posture = "Soft"
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 0)
        self.assertEqual(app.map["Israel"].sleeperCells, 1)
        self.assertEqual(app.map["Israel"].plots, 0)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].activeCells, 1)
        self.assertEqual(app.map["Iraq"].plots, 1)

        # Low prestige, yes GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.map["Israel"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 0)
        self.assertEqual(app.map["Israel"].sleeperCells, 1)
        self.assertEqual(app.map["Israel"].plots, 0)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].plots, 1)

        # Funding section
        # Low prestige, yes GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 9
        app.map["Israel"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 0
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 1)
        self.assertEqual(app.map["Israel"].activeCells, 0)
        self.assertEqual(app.map["Israel"].sleeperCells, 1)
        self.assertEqual(app.map["Israel"].plots, 0)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].plots, 0)

        # Low prestige, yes GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 8
        app.map["Israel"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 0
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 0
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 1)
        self.assertEqual(app.map["Israel"].sleeperCells, 0)
        self.assertEqual(app.map["Israel"].plots, 1)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].plots, 0)

        # Low prestige, yes GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 8
        app.map["Israel"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 0
        unusedOps = app.executePlot(2, True, [1, 1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 1)
        self.assertEqual(app.map["Israel"].sleeperCells, 0)
        self.assertEqual(app.map["Israel"].plots, 1)
        self.assertEqual(app.map["Canada"].plots, 1)
        self.assertEqual(app.map["Iraq"].plots, 0)

        # Low prestige, yes GWOT penalty
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.funding = 8
        app.map["Israel"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 0
        unusedOps = app.executePlot(3, True, [1, 1, 1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 1)
        self.assertEqual(app.map["Israel"].sleeperCells, 0)
        self.assertEqual(app.map["Israel"].plots, 1)
        self.assertEqual(app.map["Canada"].plots, 1)
        self.assertEqual(app.map["Iraq"].plots, 1)

        # High prestige
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 4
        app.markers = ["Abu Sayyaf"]
        app.map["Israel"].sleeperCells = 1
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Iraq"].make_fair()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        app.map["Iraq"].troopCubes = 1
        app.map["Philippines"].sleeperCells = 1
        app.map["Philippines"].troopCubes = 1
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Israel"].activeCells, 0)
        self.assertEqual(app.map["Israel"].sleeperCells, 1)
        self.assertEqual(app.map["Israel"].plots, 0)
        self.assertEqual(app.map["Canada"].plots, 0)
        self.assertEqual(app.map["Iraq"].plots, 0)
        self.assertEqual(app.map["Philippines"].activeCells, 1)
        self.assertEqual(app.map["Philippines"].sleeperCells, 0)
        self.assertEqual(app.map["Philippines"].plots, 1)

        # priorities box
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.map["Israel"].sleeperCells = 0
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Spain"].sleeperCells = 0
        app.map["Iraq"].make_good()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        app.map["Gulf States"].make_fair()
        app.map["Gulf States"].sleeperCells = 1
        app.map["Gulf States"].aid = 1
        unusedOps = app.executePlot(1, True, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Iraq"].plots, 0)
        self.assertEqual(app.map["Gulf States"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.prestige = 3
        app.map["Israel"].sleeperCells = 0
        app.map["Canada"].posture = "Soft"
        app.map["Canada"].sleeperCells = 1
        app.map["Spain"].posture = "Soft"
        app.map["Spain"].sleeperCells = 0
        app.map["Iraq"].make_good()
        app.map["Iraq"].sleeperCells = 1
        app.map["Iraq"].aid = 1
        app.map["Gulf States"].make_fair()
        app.map["Gulf States"].sleeperCells = 1
        app.map["Gulf States"].aid = 1
        unusedOps = app.executePlot(1, False, [1])
        self.assertEqual(unusedOps, 0)
        self.assertEqual(app.map["Iraq"].plots, 1)
        self.assertEqual(app.map["Gulf States"].plots, 0)
Esempio n. 3
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)
Esempio n. 4
0
    def test_resolve_non_muslim_non_us_plots(self):
        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["Germany"].plots = 1
        app.resolvePlot("Germany", 1, 4, [], ["Spain", "Scandinavia"], [5, 4],
                        [])
        self.assertEqual(app.funding, 7)
        self.assertEqual(app.map["Germany"].posture, "Soft")
        self.assertEqual(app.map["Spain"].posture, "Hard")
        self.assertEqual(app.map["Scandinavia"].posture, "Soft")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Germany"].plots, 0)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["Germany"].plots = 2
        app.resolvePlot("Germany", 1, 4, [], ["Spain", "Scandinavia"], [5, 4],
                        [])
        self.assertEqual(app.funding, 7)
        self.assertEqual(app.map["Germany"].posture, "Soft")
        self.assertEqual(app.map["Spain"].posture, "Hard")
        self.assertEqual(app.map["Scandinavia"].posture, "Soft")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Germany"].plots, 1)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["Germany"].plots = 1
        app.resolvePlot("Germany", 2, 5, [], ["Spain", "Scandinavia"], [4, 5],
                        [])
        self.assertEqual(app.funding, 9)
        self.assertEqual(app.map["Germany"].posture, "Hard")
        self.assertEqual(app.map["Spain"].posture, "Soft")
        self.assertEqual(app.map["Scandinavia"].posture, "Hard")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Germany"].plots, 0)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["Canada"].plots = 1
        app.resolvePlot("Canada", 2, 5, [], [], [], [])
        self.assertEqual(app.funding, 9)
        self.assertEqual(app.map["Canada"].posture, "Hard")
        self.assertEqual(app.map["Spain"].posture, "")
        self.assertEqual(app.map["Scandinavia"].posture, "")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Canada"].plots, 0)

        app = Labyrinth(1, 1, self.set_up_blank_test_scenario)
        app.map["Russia"].plots = 1
        app.resolvePlot("Russia", 2, 4, [], [], [], [])
        self.assertEqual(app.funding, 7)
        self.assertEqual(app.map["Russia"].posture, "Soft")
        self.assertEqual(app.map["Spain"].posture, "")
        self.assertEqual(app.map["Scandinavia"].posture, "")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Russia"].plots, 0)

        app = Labyrinth(1, "WMD", self.set_up_blank_test_scenario)
        app.map["Germany"].plots = 1
        app.resolvePlot("Germany", 1, 4, [], ["Spain", "Scandinavia"], [5, 4],
                        [])
        self.assertEqual(app.funding, 7)
        self.assertEqual(app.map["Germany"].posture, "Soft")
        self.assertEqual(app.map["Spain"].posture, "Hard")
        self.assertEqual(app.map["Scandinavia"].posture, "Soft")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Germany"].plots, 0)

        app = Labyrinth(1, "WMD", self.set_up_blank_test_scenario)
        app.funding = 1
        app.map["Germany"].plots = 1
        app.resolvePlot("Germany", 3, 4, [], ["Spain", "Scandinavia"], [5, 4],
                        [])
        self.assertEqual(app.funding, 7)
        self.assertEqual(app.map["Germany"].posture, "Soft")
        self.assertEqual(app.map["Spain"].posture, "Hard")
        self.assertEqual(app.map["Scandinavia"].posture, "Soft")
        self.assertEqual(app.prestige, 7)
        self.assertEqual(app.map["Germany"].plots, 0)