def test_create_new_contract(self): '''Test contract object behaves as expected ''' # test that no additional properties works contract_data = dict(description='test') contract = ContractBaseFactory.build(**contract_data) self.assertEquals(contract.description, 'test') # test that additional properties also works contract_data_props = dict(description='test2') contract_with_props = ContractBaseFactory.build(**contract_data_props) prop1 = ContractPropertyFactory.build(contract=contract_with_props) prop2 = ContractPropertyFactory.build(contract=contract_with_props) self.assertEquals(contract_with_props.description, 'test2') self.assertEquals(len(contract_with_props.properties), 2) self.assertTrue(prop1 in contract_with_props.properties) self.assertTrue(prop2 in contract_with_props.properties) # this should fail with non-existing stage contract_data_fails = dict(description='test2', current_stage_id=1) try: ContractBaseFactory.build(**contract_data_fails) # this should never work, so break the tests if we get here self.assertTrue(False) except: self.assertTrue(True)
def setUp(self): from flask_migrate import upgrade upgrade() # insert the users/roles self.admin_role = get_a_role('admin') self.superadmin_role = get_a_role('superadmin') self.admin_user = insert_a_user(email='*****@*****.**', role=self.admin_role) self.superadmin_user = insert_a_user(email='*****@*****.**', role=self.superadmin_role) # insert the companies/contracts self.company_1 = insert_a_company(name='ship', insert_contract=False) company_2 = insert_a_company(name='boat', insert_contract=False) contract_type = ContractTypeFactory.create(name='test') self.contract_type2 = ContractTypeFactory.create(name='test2') self.contract1 = ContractBaseFactory.create( description='vessel', companies=[company_2], line_items=[LineItem(description='NAVY')], expiration_date=datetime.datetime.today() + datetime.timedelta(1), is_archived=False, financial_id='123', contract_type=contract_type) ContractBaseFactory.create( description='sail', financial_id='456', companies=[self.company_1], line_items=[LineItem(description='sunfish')], is_archived=False, expiration_date=datetime.datetime.today() + datetime.timedelta(1), contract_type=contract_type) ContractBaseFactory.create( description='sunfish', financial_id='789', properties=[ ContractPropertyFactory.create(key='foo', value='engine') ], expiration_date=datetime.datetime.today() + datetime.timedelta(1), is_archived=False, contract_type=contract_type) ContractBaseFactory.create( description='sunfish', financial_id='012', properties=[ ContractPropertyFactory.create(key='foo', value='engine') ], expiration_date=datetime.datetime.today() - datetime.timedelta(1), is_archived=False, contract_type=self.contract_type2) # db.session.execute(''' # REFRESH MATERIALIZED VIEW CONCURRENTLY search_view # ''') db.session.commit()
def insert_a_contract(properties=None, **kwargs): contract_data = dict(description="test2") if not kwargs else dict(kwargs) contract = ContractBaseFactory.create(**contract_data) if properties: [i.update({"contract": contract}) for i in properties] else: properties = [dict(contract=contract, key="foo", value="bar"), dict(contract=contract, key="baz", value="qux")] for _property in properties: ContractPropertyFactory.create(**_property) return contract
def insert_a_contract(properties=None, **kwargs): contract_data = dict(description='test2', ) if not kwargs else dict(kwargs) contract = ContractBaseFactory.create(**contract_data) if properties: [i.update({'contract': contract}) for i in properties] else: properties = [ dict(contract=contract, key='foo', value='bar'), dict(contract=contract, key='baz', value='qux') ] for _property in properties: ContractPropertyFactory.create(**_property) return contract
def setUp(self): from flask_migrate import upgrade upgrade() # insert the users/roles self.admin_role = get_a_role('admin') self.superadmin_role = get_a_role('superadmin') self.admin_user = insert_a_user(email='*****@*****.**', role=self.admin_role) self.superadmin_user = insert_a_user(email='*****@*****.**', role=self.superadmin_role) # insert the companies/contracts self.company_1 = insert_a_company(name='ship', insert_contract=False) company_2 = insert_a_company(name='boat', insert_contract=False) contract_type = ContractTypeFactory.create(name='test') self.contract_type2 = ContractTypeFactory.create(name='test2') self.contract1 = ContractBaseFactory.create( description='vessel', companies=[company_2], line_items=[LineItem(description='NAVY')], expiration_date=datetime.datetime.today() + datetime.timedelta(1), is_archived=False, financial_id='123', contract_type=contract_type ) ContractBaseFactory.create( description='sail', financial_id='456', companies=[self.company_1], line_items=[LineItem(description='sunfish')], is_archived=False, expiration_date=datetime.datetime.today() + datetime.timedelta(1), contract_type=contract_type ) ContractBaseFactory.create( description='sunfish', financial_id='789', properties=[ContractPropertyFactory.create(key='foo', value='engine')], expiration_date=datetime.datetime.today() + datetime.timedelta(1), is_archived=False, contract_type=contract_type ) ContractBaseFactory.create( description='sunfish', financial_id='012', properties=[ContractPropertyFactory.create(key='foo', value='engine')], expiration_date=datetime.datetime.today() - datetime.timedelta(1), is_archived=False, contract_type=self.contract_type2 ) # db.session.execute(''' # REFRESH MATERIALIZED VIEW CONCURRENTLY search_view # ''') db.session.commit()
def insert_a_contract(properties=None, **kwargs): contract_data = dict( description='test2', ) if not kwargs else dict(kwargs) contract = ContractBaseFactory.create(**contract_data) if properties: [i.update({'contract': contract}) for i in properties] else: properties = [ dict(contract=contract, key='foo', value='bar'), dict(contract=contract, key='baz', value='qux') ] for _property in properties: ContractPropertyFactory.create(**_property) return contract
def test_create_new_contract(self): '''Test contract object behaves as expected ''' # test that no additional properties works contract_data = dict( description='test' ) contract = ContractBaseFactory.build(**contract_data) self.assertEquals(contract.description, 'test') # test that additional properties also works contract_data_props = dict( description='test2' ) contract_with_props = ContractBaseFactory.build(**contract_data_props) prop1 = ContractPropertyFactory.build(contract=contract_with_props) prop2 = ContractPropertyFactory.build(contract=contract_with_props) self.assertEquals(contract_with_props.description, 'test2') self.assertEquals(len(contract_with_props.properties), 2) self.assertTrue(prop1 in contract_with_props.properties) self.assertTrue(prop2 in contract_with_props.properties) # this should fail with non-existing stage contract_data_fails = dict( description='test2', current_stage_id=1 ) try: ContractBaseFactory.build(**contract_data_fails) # this should never work, so break the tests if we get here self.assertTrue(False) except: self.assertTrue(True)