def test_duplicate_apply(self): self.assertEqual(Building.objects.all().count(), 0) VotePrototype.create(self.account2, self.bill, False) VotePrototype.create(self.account3, self.bill, True) noun = names.generator.get_test_name('building-name') data = linguistics_helpers.get_word_post_data(noun, prefix='name') data.update({'approved': True}) form = BuildingCreate.ModeratorForm(data) self.assertTrue(form.is_valid()) self.bill.update_by_moderator(form) self.assertTrue(self.bill.apply()) dup_noun = names.generator.get_test_name('dup-building-name') data = linguistics_helpers.get_word_post_data(dup_noun, prefix='name') data.update({'approved': True}) form = BuildingCreate.ModeratorForm(data) bill = BillPrototype.get_by_id(self.bill.id) bill.state = BILL_STATE.VOTING bill.save() self.assertTrue(form.is_valid()) bill.update_by_moderator(form) self.assertTrue(bill.apply()) self.assertEqual(Building.objects.all().count(), 1) self.assertEqual(BuildingPrototype._db_get_object(0).utg_name, noun) self.assertNotEqual(BuildingPrototype._db_get_object(0).utg_name, dup_noun)
def setUp(self): super(BuildingCreateTests, self).setUp() self.person_1 = sorted(self.place1.persons, key=lambda person: -politic_power_storage. persons.total_power_fraction(person.id))[0] self.person_2 = sorted(self.place2.persons, key=lambda person: -politic_power_storage. persons.total_power_fraction(person.id))[-1] self.accepted_position_1 = random.choice( list( places_logic.get_available_positions( center_x=self.person_1.place.x, center_y=self.person_1.place.y))) self.accepted_position_2 = random.choice( list( places_logic.get_available_positions( center_x=self.person_2.place.x, center_y=self.person_2.place.y))) self.bill_data = BuildingCreate( person_id=self.person_1.id, old_place_name_forms=self.place1.utg_name, utg_name=names.generator().get_test_name('building-name'), x=self.accepted_position_1[0], y=self.accepted_position_1[1]) self.bill = BillPrototype.create( self.account1, 'bill-1-caption', self.bill_data, chronicle_on_accepted='chronicle-on-accepted')
def test_has_meaning__duplicate(self): self.assertEqual(Building.objects.all().count(), 0) VotePrototype.create(self.account2, self.bill, relations.VOTE_TYPE.AGAINST) VotePrototype.create(self.account3, self.bill, relations.VOTE_TYPE.FOR) noun = names.generator().get_test_name('building-name') data = self.bill.user_form_initials data.update(linguistics_helpers.get_word_post_data(noun, prefix='name')) data['approved'] = True form = self.bill.data.get_moderator_form_update(data) self.assertTrue(form.is_valid()) self.bill.update_by_moderator(form) self.assertTrue(self.bill.apply()) form = BuildingCreate.ModeratorForm(data) bill = BillPrototype.get_by_id(self.bill.id) bill.state = relations.BILL_STATE.VOTING bill.save() self.assertFalse(bill.has_meaning())
def test_apply(self): self.assertEqual(Building.objects.all().count(), 0) VotePrototype.create(self.account2, self.bill, False) VotePrototype.create(self.account3, self.bill, True) noun = names.generator.get_test_name('r-building-name') data = linguistics_helpers.get_word_post_data(noun, prefix='name') data.update({'approved': True}) form = BuildingCreate.ModeratorForm(data) self.assertTrue(form.is_valid()) self.bill.update_by_moderator(form) self.assertTrue(self.bill.apply()) bill = BillPrototype.get_by_id(self.bill.id) self.assertTrue(bill.state.is_ACCEPTED) self.assertEqual(Building.objects.all().count(), 1) building = places_storage.buildings.all()[0] self.assertEqual(building.person.id, self.person_1.id) self.assertEqual(building.place.id, self.place1.id) self.assertEqual(building.utg_name, noun)
def test_apply_without_person(self): self.assertEqual(Building.objects.all().count(), 0) VotePrototype.create(self.account2, self.bill, False) VotePrototype.create(self.account3, self.bill, True) noun = names.generator.get_test_name('building-name') data = linguistics_helpers.get_word_post_data(noun, prefix='name') data.update({'approved': True}) form = BuildingCreate.ModeratorForm(data) self.assertTrue(form.is_valid()) self.bill.update_by_moderator(form) self.person_1.move_out_game() self.assertTrue(self.bill.apply()) bill = BillPrototype.get_by_id(self.bill.id) bill.state = BILL_STATE.VOTING bill.save() self.assertTrue(bill.apply()) self.assertEqual(Building.objects.all().count(), 0)
def setUp(self): super(BuildingCreateTests, self).setUp() self.person_1 = sorted(self.place1.persons, key=lambda p: -p.total_politic_power_fraction)[0] self.person_2 = sorted(self.place2.persons, key=lambda p: -p.total_politic_power_fraction)[-1] self.bill_data = BuildingCreate(person_id=self.person_1.id, old_place_name_forms=self.place1.utg_name, utg_name=names.generator.get_test_name(u'building-name')) self.bill = BillPrototype.create(self.account1, 'bill-1-caption', 'bill-1-rationale', self.bill_data, chronicle_on_accepted='chronicle-on-accepted')