def test_1_update_actual_bills(self): from the_tale.game.bills import prototypes as bills_prototypes from the_tale.game.bills import bills from the_tale.game.bills import conf as bills_conf from the_tale.game.places import modifiers as places_modifiers from the_tale.forum import models as forum_models forum_category = forum_models.Category.objects.create(caption='category-1', slug='category-1') forum_models.SubCategory.objects.create(caption=bills_conf.bills_settings.FORUM_CATEGORY_UID + '-caption', uid=bills_conf.bills_settings.FORUM_CATEGORY_UID, category=forum_category) self.account.update_actual_bills() self.assertEqual(self.account.actual_bills, []) bill_data = bills.PlaceModifier(place_id=self.place_1.id, modifier_id=places_modifiers.CITY_MODIFIERS.TRADE_CENTER, modifier_name=places_modifiers.CITY_MODIFIERS.TRADE_CENTER.text, old_modifier_name=None) bill = bills_prototypes.BillPrototype.create(self.account, 'bill-1-caption', 'bill-1-rationale', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.account.update_actual_bills() self.assertEqual(self.account.actual_bills, []) data = bill.user_form_initials data['approved'] = True form = bills.PlaceModifier.ModeratorForm(data) self.assertTrue(form.is_valid()) bill.update_by_moderator(form) bill.apply() self.account.update_actual_bills() self.assertEqual(self.account.actual_bills, [time.mktime(bill.voting_end_at.timetuple())])
def setUp(self): super(BillPlaceChangeModifierTests, self).setUp() bill_data = bills.PlaceModifier(place_id=self.place1.id, modifier_id=TradeCenter.get_id(), modifier_name=TradeCenter.TYPE.text, old_modifier_name=None) self.bill = BillPrototype.create(self.account1, 'bill-1-caption', 'bill-1-rationale', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.form = bills.PlaceModifier.ModeratorForm({'approved': True}) self.assertTrue(self.form.is_valid())
def test_actual_bills_accepted_timestamps(self): from the_tale.game.bills import prototypes as bills_prototypes from the_tale.game.bills import bills from the_tale.game.bills import conf as bills_conf from the_tale.game.map.places import modifiers as places_modifiers from the_tale.forum import models as forum_models self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), []) bill_data = bills.PlaceModifier(place_id=self.place1.id, modifier_id=places_modifiers.TradeCenter.get_id(), modifier_name=places_modifiers.TradeCenter.TYPE.text, old_modifier_name=None) bill = bills_prototypes.BillPrototype.create(self.account1, 'bill-1-caption', 'bill-1-rationale', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), []) form = bills.PlaceModifier.ModeratorForm({'approved': True}) self.assertTrue(form.is_valid()) bill.update_by_moderator(form) bill.apply() self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) # second bill bill_data = bills.PlaceModifier(place_id=self.place1.id, modifier_id=places_modifiers.TradeCenter.get_id(), modifier_name=places_modifiers.TradeCenter.TYPE.text, old_modifier_name=None) bill_2 = bills_prototypes.BillPrototype.create(self.account2, 'bill-1-caption', 'bill-1-rationale', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) form = bills.PlaceModifier.ModeratorForm({'approved': True}) self.assertTrue(form.is_valid()) bill_2.update_by_moderator(form) bill_2.apply() self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) # third bill bill_data = bills.PlaceModifier(place_id=self.place1.id, modifier_id=places_modifiers.TradeCenter.get_id(), modifier_name=places_modifiers.TradeCenter.TYPE.text, old_modifier_name=None) bill_3 = bills_prototypes.BillPrototype.create(self.account1, 'bill-1-caption', 'bill-1-rationale', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) form = bills.PlaceModifier.ModeratorForm({'approved': True}) self.assertTrue(form.is_valid()) bill_3.update_by_moderator(form) bill_3.apply() self.assertEqual(logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple()), time.mktime(bill_3.voting_end_at.timetuple())])
def test_actual_bills_accepted_timestamps(self): from the_tale.game.bills import prototypes as bills_prototypes from the_tale.game.bills import bills from the_tale.game.places import modifiers as places_modifiers self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), []) bill_data = bills.PlaceModifier( place_id=self.place1.id, modifier_id=places_modifiers.CITY_MODIFIERS.TRADE_CENTER, modifier_name=places_modifiers.CITY_MODIFIERS.TRADE_CENTER.text, old_modifier_name=None) bill = bills_prototypes.BillPrototype.create( self.account1, 'bill-1-caption', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), []) data = bill.user_form_initials data['approved'] = True form = bill.data.get_moderator_form_update(data) self.assertTrue(form.is_valid()) bill.update_by_moderator(form) bill.apply() self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) # second bill bill_data = bills.PlaceModifier( place_id=self.place1.id, modifier_id=places_modifiers.CITY_MODIFIERS.TRADE_CENTER, modifier_name=places_modifiers.CITY_MODIFIERS.TRADE_CENTER.text, old_modifier_name=None) bill_2 = bills_prototypes.BillPrototype.create( self.account2, 'bill-1-caption', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) data = bill_2.user_form_initials data['approved'] = True form = bill_2.data.get_moderator_form_update(data) self.assertTrue(form.is_valid()) bill_2.update_by_moderator(form) bill_2.apply() self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) # third bill bill_data = bills.PlaceModifier( place_id=self.place1.id, modifier_id=places_modifiers.CITY_MODIFIERS.TRADE_CENTER, modifier_name=places_modifiers.CITY_MODIFIERS.TRADE_CENTER.text, old_modifier_name=None) bill_3 = bills_prototypes.BillPrototype.create( self.account1, 'bill-1-caption', bill_data, chronicle_on_accepted='chronicle-on-accepted') self.assertEqual( logic.actual_bills_accepted_timestamps(self.account1.id), [time.mktime(bill.voting_end_at.timetuple())]) data = bill_3.user_form_initials data['approved'] = True form = bill_3.data.get_moderator_form_update(data) self.assertTrue(form.is_valid()) bill_3.update_by_moderator(form) bill_3.apply() self.assertCountEqual( logic.actual_bills_accepted_timestamps(self.account1.id), [ time.mktime(bill.voting_end_at.timetuple()), time.mktime(bill_3.voting_end_at.timetuple()) ])