def generate_back_office(self): self.stdout.write('Generating Back Office assets') back_office_status = BackOfficeAssetStatus() status_count = len(back_office_status) per_page = self.object_limit / status_count parent_category = CategoryFactory(name='BACK OFFICE', imei_required=False) for i in range(3): ProfitCenterFactory() for status_id, name in back_office_status: for i in range(int(per_page)): BackOfficeAssetFactory( status=status_id, user=self.get_user(), owner=self.get_user(), model=BackOfficeAssetModelFactory(category=CategoryFactory( parent=parent_category))) BackOfficeAssetFactory(status=status_id, user=self.get_user(), owner=self.get_user(), model=BackOfficeAssetModelFactory( category=CategoryFactory( name='Mobile Phone', imei_required=True, parent=parent_category), name='Phone'), imei=get_imei(15))
def setUpClass(cls): super().setUpClass() cls.region_pl = RegionFactory(name='PL', country=Country.pl) cls.region_us = RegionFactory(name='US', country=Country.us) cls.category = CategoryFactory(code='PC') cls.category_without_code = CategoryFactory() cls.model = BackOfficeAssetModelFactory(category=cls.category) cls.model_without_code = BackOfficeAssetModelFactory( category=cls.category_without_code)
def setUp(self): super().setUp() self.user1 = factories.UserFactory() self.user2 = factories.UserFactory() self.service_env = ServiceEnvironmentFactory() self.model = BackOfficeAssetModelFactory() self.warehouse = WarehouseFactory() self.warehouse.stocktaking_enabled = True self.warehouse.save() self.asset = BackOfficeAssetFactory( warehouse=self.warehouse, model=self.model, ) self.asset.user = self.user1 self.asset.save() self.base_tag = settings.INVENTORY_TAG if self.asset.warehouse.stocktaking_tag_suffix != '': self.base_tag = '{prefix}-{warehouse}'.format( prefix=self.base_tag, warehouse=self.asset.warehouse.stocktaking_tag_suffix, ) self.date_tag = None if settings.INVENTORY_TAG_APPEND_DATE: self.date_tag = '{base}_{date}'.format( base=self.base_tag, date=date.today().isoformat(), ) self.tags = [ self.base_tag, settings.INVENTORY_TAG_USER, self.date_tag, ]
def setUp(self): super().setUp() self.service_env = ServiceEnvironmentFactory() self.model = BackOfficeAssetModelFactory() self.warehouse = WarehouseFactory() self.bo_asset = BackOfficeAssetFactory( warehouse=self.warehouse, model=self.model, ) self.bo_asset.user = self.user1 self.bo_asset.owner = self.user2 self.bo_asset.save()
def test_generate_next_hostname_out_of_range(self): category = CategoryFactory(code='PC') model = BackOfficeAssetModelFactory(category=category) asset = BackOfficeAssetFactory(model=model, region=self.region_pl, hostname='') AssetLastHostname.objects.create(prefix='POLPC', counter=99999) template_vars = { 'code': asset.model.category.code, 'country_code': asset.country_code, } asset.generate_hostname(template_vars=template_vars) self.assertEqual(asset.hostname, 'POLPC100000')
def test_generate_first_hostname(self): """Scenario: - none of assets has hostname - after generate first of asset have XXXYY00001 in hostname field """ category = CategoryFactory(code='PC') model = BackOfficeAssetModelFactory(category=category) asset = BackOfficeAssetFactory(model=model, hostname='') template_vars = { 'code': asset.model.category.code, 'country_code': asset.country_code, } asset.generate_hostname(template_vars=template_vars) self.assertEqual(asset.hostname, 'POLPC00001')
def test_generate_next_hostname(self): category = CategoryFactory(code='PC') model = BackOfficeAssetModelFactory(category=category) asset = BackOfficeAssetFactory(model=model, region=self.region_pl, hostname='') BackOfficeAssetFactory(region=self.region_pl, hostname='POLSW00003') AssetLastHostname.increment_hostname(prefix='POLPC') AssetLastHostname.increment_hostname(prefix='POLPC') template_vars = { 'code': asset.model.category.code, 'country_code': asset.country_code, } asset.generate_hostname(template_vars=template_vars) self.assertEqual(asset.hostname, 'POLPC00003')
def test_can_generate_hostname_for_model_with_hostname(self): category = CategoryFactory(code='PC') model = BackOfficeAssetModelFactory(category=category) asset = BackOfficeAssetFactory(model=model, region=self.region_pl) self._check_hostname_is_generated(asset)
def test_cant_generate_hostname_for_model_without_category(self): model = BackOfficeAssetModelFactory(category=None) asset = BackOfficeAssetFactory(model=model, region=self.region_pl, hostname='') self._check_hostname_not_generated(asset)