def testStockReportRoaming(self): self.assertEqual(0, len(get_commtrack_forms(self.domain.name))) amounts = { 'pp': 10, 'pq': 20, 'pr': 30, } # soh loc1 pp 10 pq 20... handled = handle(self.users[0].get_verified_number(), 'soh {loc} {report}'.format( loc='loc1', report=' '.join('%s %s' % (k, v) for k, v in amounts.items()) )) self.assertTrue(handled) forms = list(get_commtrack_forms(self.domain.name)) self.assertEqual(1, len(forms)) self.assertEqual(_get_location_from_sp(self.sp), _get_location_from_form(forms[0])) self.assertEqual(1, StockReport.objects.count()) report = StockReport.objects.all()[0] self.assertEqual(forms[0]._id, report.form_id) self.assertEqual('balance', report.type) self.assertEqual(3, report.stocktransaction_set.count()) for code, amt in amounts.items(): [product] = filter(lambda p: p.code_ == code, self.products) trans = StockTransaction.objects.get(product_id=product._id) self.assertEqual(self.sp.case_id, trans.case_id) self.assertEqual(0, trans.quantity) self.assertEqual(amt, trans.stock_on_hand)
def testStockReportFixed(self): self.assertEqual(0, len(get_commtrack_forms(self.domain.name))) amounts = { 'pp': 10, 'pq': 20, 'pr': 30, } # soh loc1 pp 10 pq 20... handled = handle( get_two_way_number_for_recipient(self.users[1]), 'soh {report}'.format(report=' '.join( '%s %s' % (k, v) for k, v in amounts.items())), None) self.assertTrue(handled) forms = list(get_commtrack_forms(self.domain.name)) self.assertEqual(1, len(forms)) self.assertEqual(_get_location_from_sp(self.sp), _get_location_from_form(forms[0])) for code, amt in amounts.items(): [product] = filter(lambda p: p.code_ == code, self.products) trans = StockTransaction.objects.get(product_id=product._id) self.assertEqual(self.sp.case_id, trans.case_id) self.assertEqual(0, trans.quantity) self.assertEqual(amt, trans.stock_on_hand)
def testStockReportRoaming(self): self.assertEqual(0, len(get_commtrack_forms(self.domain.name))) amounts = { 'pp': 10, 'pq': 20, 'pr': 30, } # soh loc1 pp 10 pq 20... handled = handle( get_two_way_number_for_recipient(self.users[0]), 'soh {loc} {report}'.format( loc='loc1', report=' '.join('%s %s' % (k, v) for k, v in amounts.items())), None) self.assertTrue(handled) forms = list(get_commtrack_forms(self.domain.name)) self.assertEqual(1, len(forms)) self.assertEqual(_get_location_from_sp(self.sp), _get_location_from_form(forms[0])) self.assertEqual(1, StockReport.objects.count()) report = StockReport.objects.all()[0] self.assertEqual(forms[0]._id, report.form_id) self.assertEqual('balance', report.type) self.assertEqual(3, report.stocktransaction_set.count()) for code, amt in amounts.items(): [product] = [p for p in self.products if p.code_ == code] trans = StockTransaction.objects.get(product_id=product._id) self.assertEqual(self.sp.case_id, trans.case_id) self.assertEqual(0, trans.quantity) self.assertEqual(amt, trans.stock_on_hand)
def testStockReportFixed(self): self.assertEqual(0, len(get_commtrack_forms(self.domain.name))) amounts = { 'pp': 10, 'pq': 20, 'pr': 30, } # soh loc1 pp 10 pq 20... handled = handle(get_two_way_number_for_recipient(self.users[1]), 'soh {report}'.format( report=' '.join('%s %s' % (k, v) for k, v in amounts.items()) ), None) self.assertTrue(handled) forms = list(get_commtrack_forms(self.domain.name)) self.assertEqual(1, len(forms)) self.assertEqual(_get_location_from_sp(self.sp), _get_location_from_form(forms[0])) for code, amt in amounts.items(): [product] = [p for p in self.products if p.code_ == code] trans = StockTransaction.objects.get(product_id=product._id) self.assertEqual(self.sp.case_id, trans.case_id) self.assertEqual(0, trans.quantity) self.assertEqual(amt, trans.stock_on_hand)