Add get_stock_qty test
diff --git a/erpnext/stock/doctype/batch/batch.py b/erpnext/stock/doctype/batch/batch.py
index 931f243..809c7ea 100644
--- a/erpnext/stock/doctype/batch/batch.py
+++ b/erpnext/stock/doctype/batch/batch.py
@@ -71,9 +71,7 @@
 	batches = get_batch_qty(item_code = item_code, warehouse = warehouse)
 	batches_dates = [[batch, frappe.get_value('Batch', batch.batch_no, 'expiry_date')] for batch in batches]
 	batches_dates.sort(key=lambda tup: tup[1])
-
-	sorted_batches = [tup[0] for tup in batches_dates]
-	return sorted_batches
+	return batches_dates
 
 @frappe.whitelist()
 def split_batch(batch_no, item_code, warehouse, qty, new_batch_id = None):
diff --git a/erpnext/stock/doctype/batch/test_batch.py b/erpnext/stock/doctype/batch/test_batch.py
index e63e949..a5dd4ac 100644
--- a/erpnext/stock/doctype/batch/test_batch.py
+++ b/erpnext/stock/doctype/batch/test_batch.py
@@ -9,6 +9,7 @@
 from erpnext.stock.doctype.batch.batch import get_batch_qty, UnableToSelectBatchError
 
 class TestBatch(unittest.TestCase):
+
 	def test_item_has_batch_enabled(self):
 		self.assertRaises(ValidationError, frappe.get_doc({
 			"doctype": "Batch",
@@ -16,14 +17,14 @@
 			"item": "_Test Item"
 		}).save)
 
-	def make_batch_item(self):
+	def make_batch_item(self, item_name):
 		from erpnext.stock.doctype.item.test_item import make_item
-		if not frappe.db.exists('ITEM-BATCH-1'):
-			make_item('ITEM-BATCH-1', dict(has_batch_no = 1, create_new_batch = 1))
+		if not frappe.db.exists(item_name):
+			make_item(item_name, dict(has_batch_no = 1))
 
 	def test_purchase_receipt(self, batch_qty = 100):
 		'''Test automated batch creation from Purchase Receipt'''
-		self.make_batch_item()
+		self.make_batch_item('ITEM-BATCH-1')
 
 		receipt = frappe.get_doc(dict(
 			doctype = 'Purchase Receipt',
@@ -47,7 +48,7 @@
 	def test_stock_entry_incoming(self):
 		'''Test batch creation via Stock Entry (Production Order)'''
 
-		self.make_batch_item()
+		self.make_batch_item('ITEM-BATCH-1')
 
 		stock_entry = frappe.get_doc(dict(
 			doctype = 'Stock Entry',
@@ -150,4 +151,44 @@
 		self.assertEquals(get_batch_qty(receipt.items[0].batch_no, receipt.items[0].warehouse), 78)
 		self.assertEquals(get_batch_qty(new_batch, receipt.items[0].warehouse), 22)
 
+	def test_get_batch_qty(self):
+		'''Test getting batch quantities by batch_numbers, item_code or warehouse'''
+		from erpnext.stock.doctype.batch.batch import get_batch_qty
 
+		self.make_batch_item('ITEM-BATCH-2')
+		self.make_new_batch_and_entry('ITEM-BATCH-2', 'batch a', '_Test Warehouse - _TC')
+		self.make_new_batch_and_entry('ITEM-BATCH-2', 'batch b', '_Test Warehouse - _TC')
+
+		self.assertEquals(get_batch_qty(item_code = 'ITEM-BATCH-2', warehouse = '_Test Warehouse - _TC'),
+			[{'batch_no': u'batch a', 'qty': 90.0}, {'batch_no': u'batch b', 'qty': 90.0}])
+
+		self.assertEquals(get_batch_qty('batch a', '_Test Warehouse - _TC'), 90)
+
+	def make_new_batch_and_entry(self, item_name, batch_name, warehouse):
+		'''Make a new stock entry for given target warehouse and batch name of item'''
+
+		if not frappe.db.exists("Batch", batch_name):
+			batch = frappe.get_doc(dict(
+				doctype = 'Batch',
+				item = item_name,
+				batch_id = batch_name
+			)).insert(ignore_permissions=True)
+			batch.submit()
+
+		stock_entry = frappe.get_doc(dict(
+			doctype = 'Stock Entry',
+			purpose = 'Material Receipt',
+			company = '_Test Company',
+			items = [
+				dict(
+					item_code = item_name,
+					qty = 90,
+					t_warehouse = warehouse,
+					cost_center = 'Main - _TC',
+					rate = 10,
+					batch_no = batch_name,
+					allow_zero_valuation_rate = 1
+				)
+			]
+		)).insert()
+		stock_entry.submit()