def testGetBalance(self): p = self.create_product() b1 = self.create_branch() b2 = self.create_branch() b3 = self.create_branch() storable = Storable(store=self.store, product=p) self.assertEqual(storable.get_balance_for_branch(b1), 0) self.assertEqual(storable.get_balance_for_branch(b2), 0) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 0) # Only b1 and b2 will increase stock storable.increase_stock(5, b1, 0, 0) storable.increase_stock(10, b2, 0, 0) self.assertEqual(storable.get_balance_for_branch(b1), 5) self.assertEqual(storable.get_balance_for_branch(b2), 10) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 15) # b1 will decrease *all* it's stock storable.decrease_stock(5, b1, 0, 0) self.assertEqual(storable.get_balance_for_branch(b1), 0) self.assertEqual(storable.get_balance_for_branch(b2), 10) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 10)
def test_get_balance(self): p = self.create_product() b1 = self.create_branch() b2 = self.create_branch() b3 = self.create_branch() storable = Storable(store=self.store, product=p) self.assertEqual(storable.get_balance_for_branch(b1), 0) self.assertEqual(storable.get_balance_for_branch(b2), 0) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 0) # Only b1 and b2 will increase stock storable.increase_stock(5, b1, 0, None) storable.increase_stock(10, b2, 0, None) self.assertEqual(storable.get_balance_for_branch(b1), 5) self.assertEqual(storable.get_balance_for_branch(b2), 10) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 15) # b1 will decrease *all* it's stock storable.decrease_stock(5, b1, 0, None) self.assertEqual(storable.get_balance_for_branch(b1), 0) self.assertEqual(storable.get_balance_for_branch(b2), 10) self.assertEqual(storable.get_balance_for_branch(b3), 0) self.assertEqual(storable.get_total_balance(), 10)
def testIncreaseDecreaseStock(self): branch = get_current_branch(self.store) product = self.create_product() storable = Storable(product=product, store=self.store) stock_item = storable.get_stock_item(branch) self.failIf(stock_item is not None) storable.increase_stock(1, branch, 0, 0) stock_item = storable.get_stock_item(branch) self.assertEquals(stock_item.stock_cost, 0) storable.increase_stock(1, branch, 0, 0, unit_cost=10) stock_item = storable.get_stock_item(branch) self.assertEquals(stock_item.stock_cost, 5) stock_item = storable.decrease_stock(1, branch, 0, 0) self.assertEquals(stock_item.stock_cost, 5) storable.increase_stock(1, branch, 0, 0) stock_item = storable.get_stock_item(branch) self.assertEquals(stock_item.stock_cost, 5) storable.increase_stock(2, branch, 0, 0, unit_cost=15) stock_item = storable.get_stock_item(branch) self.assertEquals(stock_item.stock_cost, 10)
def testIncreaseDecreaseStock(self): branch = get_current_branch(self.store) product = self.create_product() storable = Storable(product=product, store=self.store) stock_item = storable.get_stock_item(branch, None) self.failIf(stock_item is not None) storable.increase_stock(1, branch, 0, 0) stock_item = storable.get_stock_item(branch, None) self.assertEquals(stock_item.stock_cost, 0) storable.increase_stock(1, branch, 0, 0, unit_cost=10) stock_item = storable.get_stock_item(branch, None) self.assertEquals(stock_item.stock_cost, 5) stock_item = storable.decrease_stock(1, branch, 0, 0) self.assertEquals(stock_item.stock_cost, 5) storable.increase_stock(1, branch, 0, 0) stock_item = storable.get_stock_item(branch, None) self.assertEquals(stock_item.stock_cost, 5) storable.increase_stock(2, branch, 0, 0, unit_cost=15) stock_item = storable.get_stock_item(branch, None) self.assertEquals(stock_item.stock_cost, 10)