class StockTestBase(TestCase): @classmethod def setUpClass(cls): super(StockTestBase, cls).setUpClass() cls.domain = create_domain("stock-report-test") @classmethod def tearDownClass(cls): cls.domain.delete() super(StockTestBase, cls).tearDownClass() def setUp(self): # create case case = CaseFactory(domain=self.domain.name).create_case() self.case_id = case.case_id self.product_id = uuid.uuid4().hex SQLProduct(product_id=self.product_id, domain=self.domain.name).save() self._stock_report = functools.partial(_stock_report, self.domain.name, self.case_id, self.product_id) self._receipt_report = functools.partial(_receipt_report, self.domain.name, self.case_id, self.product_id) self._test_config = ConsumptionConfiguration.test_config() self._compute_consumption = functools.partial( compute_daily_consumption, self.domain.name, self.case_id, self.product_id, now, configuration=self._test_config)
def _test_subtype(self, initial, final): case_id = uuid.uuid4().hex CommCareCase( _id=case_id, domain='fakedomain', ).save() product_id = uuid.uuid4().hex SQLProduct(product_id=product_id, domain='fakedomain').save() report = StockReport.objects.create(form_id=uuid.uuid4().hex, date=ago(1), server_date=datetime.utcnow(), type=const.REPORT_TYPE_BALANCE) txn = StockTransaction( report=report, section_id=const.SECTION_TYPE_STOCK, type=const.TRANSACTION_TYPE_STOCKONHAND, subtype=initial, case_id=case_id, product_id=product_id, stock_on_hand=Decimal(10), ) txn.save() saved = StockTransaction.objects.get(id=txn.id) self.assertEqual(final, saved.subtype)
def setUpClass(cls): super(TestGetValuesByProduct, cls).setUpClass() cls.data = [ { "product": "coke", "section": "soh", "balance": 32 }, { "product": "coke", "section": "consumption", "balance": 63 }, { "product": "surge", "section": "soh", "balance": 85 }, { "product": "fanta", "section": "soh", "balance": 11 }, ] product_ids = {p['product'] for p in cls.data} SQLProduct.objects.bulk_create([ SQLProduct(domain=cls.domain_name, product_id=id, code=id) for id in product_ids ])
def setUp(self): super(TestGetValuesByProduct, self).setUp() self.ledger_processor = FormProcessorInterface( domain=self.domain_name).ledger_processor self.domain_obj = create_domain(self.domain_name) SQLProduct.objects.bulk_create([ SQLProduct(domain=self.domain_name, product_id=data['product_id'], code=data['product']) for data in self.data ]) transactions_flat = [] self.transactions = {} for d in self.data: product = d['product'] product_id = d['product_id'] section = d['section'] balance = d['balance'] transactions_flat.append( StockTransactionHelper(case_id=self.case_id, section_id=section, product_id=product_id, action='soh', quantity=balance, timestamp=datetime.utcnow())) self.transactions.setdefault(self.case_id, {}).setdefault(section, {})[product] = balance self.new_stock_report, self.form = self.create_report( transactions_flat) self._create_models_for_stock_report_helper(self.form, self.new_stock_report)
def setUpClass(cls): cls.domain = Domain(name='test') cls.domain.save() cls.case_id = uuid.uuid4().hex CommCareCase( _id=cls.case_id, domain='fakedomain', ).save() cls.product_id = uuid.uuid4().hex SQLProduct(product_id=cls.product_id).save()
def setUpClass(cls): super(LogisticsConsumptionTest, cls).setUpClass() cls.domain = Domain(name='test') cls.domain.save() cls.case_id = uuid.uuid4().hex CommCareCase( _id=cls.case_id, domain='fakedomain', ).save() cls.product_id = uuid.uuid4().hex SQLProduct(product_id=cls.product_id, domain='fakedomain').save()
def setUp(self): # create case self.case_id = uuid.uuid4().hex CommCareCase( _id=self.case_id, domain='fakedomain', ).save() self.product_id = uuid.uuid4().hex SQLProduct(product_id=self.product_id).save() self._stock_report = functools.partial(_stock_report, self.case_id, self.product_id) self._receipt_report = functools.partial(_receipt_report, self.case_id, self.product_id) self._test_config = ConsumptionConfiguration.test_config() self._compute_consumption = functools.partial(compute_daily_consumption, self.case_id, self.product_id, now, configuration=self._test_config)