def test_max_speculation(self): """ Can't speculate more than influence """ self.p.influence.level = 1 self.p.influence.save() o = CorporationSpeculationOrder(player=self.p, corporation=self.c2, rank=1, investment=5) o.save() o2 = CorporationSpeculationOrder(player=self.p, corporation=self.c2, rank=1, investment=5) self.assertRaises(OrderNotAvailable, o2.clean) dso = DerivativeSpeculationOrder( player=self.p, speculation=DerivativeSpeculationOrder.UP, investment=DerivativeSpeculationOrder.MAX_AMOUNT_SPECULATION + 1) self.assertRaises(OrderNotAvailable, dso.clean) self.p.influence.level = 2 self.p.influence.save() # assertNoRaises o2.clean()
def test_mdc_DERE_line_negative_effect(self): """ Test what happens when the DERE party line is chosen for detractors """ self.set_turn_line(MDCVoteOrder.BANK, MDCVoteOrder.DERE, MDCVoteOrder.DERE) self.g.resolve_current_turn() # Player 1 has voted BANK, so he shouldn't be able to speculate o = CorporationSpeculationOrder( player=self.p, corporation=self.c3, rank=1, investment=5 ) self.assertRaises(OrderNotAvailable, o.clean) # Check that player 3 still can o2 = CorporationSpeculationOrder( player=self.p3, corporation=self.c3, rank=1, investment=5 ) o2.clean()
def test_mdc_BANK_line_negative_effect(self): """ Test what happens when BANK party line is chosen to people who voted deregulation """ self.set_turn_line(MDCVoteOrder.BANK, MDCVoteOrder.BANK, MDCVoteOrder.DERE) self.g.resolve_current_turn() # Player 3 has voted DERE, so he shouldn't be able to speculate o = CorporationSpeculationOrder( player=self.p3, corporation=self.c3, rank=1, investment=1 ) self.assertRaises(OrderNotAvailable, o.clean) # Check that player 1 still can o2 = CorporationSpeculationOrder( player=self.p, corporation=self.c3, rank=1, investment=1 ) o2.clean()
def test_max_speculation(self): """ Can't speculate more than influence """ self.p.influence.level = 1 self.p.influence.save() o = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=5 ) o.save() o2 = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=5 ) self.assertRaises(OrderNotAvailable, o2.clean) dso = DerivativeSpeculationOrder( player=self.p, speculation=DerivativeSpeculationOrder.UP, investment=DerivativeSpeculationOrder.MAX_AMOUNT_SPECULATION + 1 ) self.assertRaises(OrderNotAvailable, dso.clean) self.p.influence.level = 2 self.p.influence.save() # assertNoRaises o2.clean()
def test_max_corporation_speculation_amount_in_single_instance(self): """ Can't speculate more than influence * MAX_AMOUNT_SPECULATION """ o = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=self.p.influence.level * CorporationSpeculationOrder.MAX_AMOUNT_SPECULATION + 1, ) self.assertRaises(OrderNotAvailable, o.clean) influence = self.p.influence influence.level = 2 influence.save() # assertNoRaises o.clean()
def test_max_corporation_speculation_amount(self): """ can't speculate more than influence * MAX_AMOUNT_SPECULATION """ self.p.influence.level = 1 self.p.influence.save() o = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=self.p.influence.level * CorporationSpeculationOrder.MAX_AMOUNT_SPECULATION + 1) self.assertRaises(OrderNotAvailable, o.clean) self.p.influence.level = 2 self.p.influence.save() #assertNoRaises o.clean()
def test_max_corporation_speculation_amount_in_multiple_instance(self): """ Can't speculate more than influence * MAX_AMOUNT_SPECULATION, even with many speculations """ o = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=self.p.influence.level * CorporationSpeculationOrder.MAX_AMOUNT_SPECULATION / 2 + 1, ) # assertNoRaises o.clean() o.save() o2 = CorporationSpeculationOrder( player=self.p, corporation=self.c2, rank=1, investment=self.p.influence.level * CorporationSpeculationOrder.MAX_AMOUNT_SPECULATION / 2, ) self.assertRaises(OrderNotAvailable, o2.clean)
def test_mdc_DERE_line_negative_effect(self): """ Test what happens when the DERE party line is chosen for detractors """ self.set_turn_line(MDCVoteOrder.BANK, MDCVoteOrder.DERE, MDCVoteOrder.DERE) self.g.resolve_current_turn() # Player 1 has voted BANK, so he shouldn't be able to speculate o = CorporationSpeculationOrder(player=self.p, corporation=self.c3, rank=1, investment=5) self.assertRaises(OrderNotAvailable, o.clean) # Check that player 3 still can o2 = CorporationSpeculationOrder(player=self.p3, corporation=self.c3, rank=1, investment=5) o2.clean()
def test_mdc_BANK_line_negative_effect(self): """ Test what happens when BANK party line is chosen to people who voted deregulation """ self.set_turn_line(MDCVoteOrder.BANK, MDCVoteOrder.BANK, MDCVoteOrder.DERE) self.g.resolve_current_turn() # Player 3 has voted DERE, so he shouldn't be able to speculate o = CorporationSpeculationOrder(player=self.p3, corporation=self.c3, rank=1, investment=1) self.assertRaises(OrderNotAvailable, o.clean) # Check that player 1 still can o2 = CorporationSpeculationOrder(player=self.p, corporation=self.c3, rank=1, investment=1) o2.clean()