def test_mdc_CCIB_line_positive_effects(self): """ Test what happens to voters of the CCIB party line when it is chosen """ self.set_turn_line(MDCVoteOrder.CCIB, MDCVoteOrder.CCIB, MDCVoteOrder.TRAN) self.g.resolve_current_turn() dso = DataStealOrder( stealer_corporation=self.c2, player=self.p, target_corporation=self.c, additional_percents=5, ) dso.save() # 20% malus self.assertEqual( dso.get_raw_probability(), dso.additional_percents * 10 + dso.BASE_SUCCESS_PROBABILITY - 20) # Other have no bonus dso2 = DataStealOrder( stealer_corporation=self.c, player=self.p, target_corporation=self.c3, additional_percents=5, ) dso2.save() self.assertEqual( dso2.get_raw_probability(), dso2.additional_percents * 10 + dso2.BASE_SUCCESS_PROBABILITY)
def test_mdc_TRAN_line_effects(self): """ Test what happens when the TRAN party line is chosen """ self.set_turn_line(MDCVoteOrder.CCIB, MDCVoteOrder.TRAN, MDCVoteOrder.TRAN) self.g.resolve_current_turn() dso = DataStealOrder( stealer_corporation=self.c2, player=self.p, target_corporation=self.c, additional_percents=5, ) dso.save() # 20% bonus self.assertEqual(dso.get_raw_probability(), dso.additional_percents * 10 + dso.BASE_SUCCESS_PROBABILITY - 20) dso2 = DataStealOrder( stealer_corporation=self.c2, player=self.p2, target_corporation=self.c, additional_percents=5, ) dso2.save() # 20% malus self.assertEqual(dso2.get_raw_probability(), dso2.additional_percents * 10 + dso2.BASE_SUCCESS_PROBABILITY + 20)
def test_get_raw_probability(self): """ Check raw probability values (without timing malus) """ dso = DataStealOrder(stealer_corporation=self.c2, player=self.p, target_corporation=self.c, additional_percents=1, hidden_percents=3) self.assertEqual( dso.get_raw_probability(), dso.additional_percents * 10 + dso.hidden_percents * 10 + dso.BASE_SUCCESS_PROBABILITY)
def test_get_raw_probability(self): """ Check raw probability values """ # We disable the test that stop you from start more than one run on the same target self.g.allow_several_runs_on_one_target = True common_corporation_market = self.c.get_common_corporation_market(self.c2) dso = DataStealOrder( stealer_corporation=self.c2, player=self.p, target_corporation_market=common_corporation_market, additional_percents=1, hidden_percents=3 ) self.assertEqual(dso.get_raw_probability(), dso.additional_percents * 10 + dso.hidden_percents * 10 + dso.BASE_SUCCESS_PROBABILITY)