Exemple #1
0
    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())])
Exemple #2
0
    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())])
Exemple #4
0
    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())
            ])