[perpetual accounting] fixes in testcases
diff --git a/accounts/doctype/sales_invoice/test_sales_invoice.py b/accounts/doctype/sales_invoice/test_sales_invoice.py
index d6bad45..ef8220d 100644
--- a/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -5,6 +5,7 @@
 import unittest, json
 from webnotes.utils import flt, cint
 from webnotes.model.bean import DocstatusTransitionError, TimestampMismatchError
+from accounts.utils import get_stock_and_account_difference
 
 class TestSalesInvoice(unittest.TestCase):
 	def make(self):
@@ -392,7 +393,9 @@
 			order by account asc, name asc""", si.doc.name)
 		
 		self.assertEquals(gl_count[0][0], 16)
-			
+		
+		self.assertFalse(get_stock_and_account_difference([si.doclist[1].warehouse]))
+		
 		webnotes.defaults.set_global_default("perpetual_accounting", 0)
 		webnotes.conn.set_default("company", old_default_company)
 		
diff --git a/stock/doctype/delivery_note/test_delivery_note.py b/stock/doctype/delivery_note/test_delivery_note.py
index f1237fe..a947a78 100644
--- a/stock/doctype/delivery_note/test_delivery_note.py
+++ b/stock/doctype/delivery_note/test_delivery_note.py
@@ -7,6 +7,7 @@
 import webnotes
 import webnotes.defaults
 from webnotes.utils import cint
+from accounts.utils import get_stock_and_account_difference
 
 class TestDeliveryNote(unittest.TestCase):
 	def _insert_purchase_receipt(self):
@@ -89,11 +90,13 @@
 			self.assertEquals(expected_values[i][0], gle.account)
 			self.assertEquals(expected_values[i][1], gle.debit)
 			self.assertEquals(expected_values[i][2], gle.credit)
-		
+					
 		# check stock in hand balance
 		bal = get_balance_on(stock_in_hand_account, dn.doc.posting_date)
 		self.assertEquals(bal, prev_bal - 375.0)
 		
+		self.assertFalse(get_stock_and_account_difference([dn.doclist[1].warehouse]))
+		
 		webnotes.defaults.set_global_default("perpetual_accounting", 0)
 
 test_records = [
diff --git a/stock/doctype/purchase_receipt/test_purchase_receipt.py b/stock/doctype/purchase_receipt/test_purchase_receipt.py
index f5320c1..e887800 100644
--- a/stock/doctype/purchase_receipt/test_purchase_receipt.py
+++ b/stock/doctype/purchase_receipt/test_purchase_receipt.py
@@ -7,6 +7,8 @@
 import webnotes
 import webnotes.defaults
 from webnotes.utils import cint
+from accounts.utils import get_stock_and_account_difference
+
 
 class TestPurchaseReceipt(unittest.TestCase):
 	def test_make_purchase_invoice(self):
@@ -74,6 +76,9 @@
 			self.assertEquals(expected_values[gle.account][0], gle.debit)
 			self.assertEquals(expected_values[gle.account][1], gle.credit)
 			
+		self.assertFalse(get_stock_and_account_difference([pr.doclist[1].warehouse, 
+			pr.doclist[2].warehouse]))
+			
 		webnotes.defaults.set_global_default("perpetual_accounting", 0)
 		
 	def _clear_stock_account_balance(self):
diff --git a/stock/doctype/serial_no/test_serial_no.py b/stock/doctype/serial_no/test_serial_no.py
index 4657ff2..115c32c 100644
--- a/stock/doctype/serial_no/test_serial_no.py
+++ b/stock/doctype/serial_no/test_serial_no.py
@@ -6,6 +6,7 @@
 
 from __future__ import unicode_literals
 import webnotes, unittest
+from accounts.utils import get_stock_and_account_difference
 
 class TestSerialNo(unittest.TestCase):
 	def test_aii_gl_entries_for_serial_no_in_store(self):
@@ -14,8 +15,8 @@
 		sr.doc.serial_no = "_Test Serial No 1"
 		sr.insert()
 		
-		stock_in_hand_account = webnotes.conn.get_value("Company", "_Test Company", 
-			"stock_in_hand_account")
+		stock_in_hand_account = webnotes.conn.get_value("Warehouse", sr.doc.warehouse, 
+			"account")
 		against_stock_account = webnotes.conn.get_value("Company", "_Test Company", 
 			"stock_adjustment_account")
 		
@@ -29,18 +30,19 @@
 		# check gl entries
 		gl_entries = webnotes.conn.sql("""select account, debit, credit
 			from `tabGL Entry` where voucher_type='Serial No' and voucher_no=%s
-			order by account desc""", sr.doc.name, as_dict=1)
+			order by account desc""", sr.doc.name, as_list=1)
 		self.assertTrue(gl_entries)
-		
+		gl_entries.sort(key=lambda x: x[0])
 		expected_values = [
 			[stock_in_hand_account, 1000.0, 0.0],
 			[against_stock_account, 0.0, 1000.0]
 		]
+		expected_values.sort(key=lambda x: x[0])
 		
 		for i, gle in enumerate(gl_entries):
-			self.assertEquals(expected_values[i][0], gle.account)
-			self.assertEquals(expected_values[i][1], gle.debit)
-			self.assertEquals(expected_values[i][2], gle.credit)
+			self.assertEquals(expected_values[i][0], gle[0])
+			self.assertEquals(expected_values[i][1], gle[1])
+			self.assertEquals(expected_values[i][2], gle[2])
 		
 		sr.load_from_db()
 		self.assertEquals(sr.doc.sle_exists, 1)
@@ -49,13 +51,16 @@
 		sr.save()
 		gl_entries = webnotes.conn.sql("""select account, debit, credit
 			from `tabGL Entry` where voucher_type='Serial No' and voucher_no=%s
-			order by account desc""", sr.doc.name, as_dict=1)
+			order by account desc""", sr.doc.name, as_list=1)
+		gl_entries.sort(key=lambda x: x[0])
 		
 		for i, gle in enumerate(gl_entries):
-			self.assertEquals(expected_values[i][0], gle.account)
-			self.assertEquals(expected_values[i][1], gle.debit)
-			self.assertEquals(expected_values[i][2], gle.credit)
-			
+			self.assertEquals(expected_values[i][0], gle[0])
+			self.assertEquals(expected_values[i][1], gle[1])
+			self.assertEquals(expected_values[i][2], gle[2])
+		
+		self.assertFalse(get_stock_and_account_difference([sr.doc.warehouse]))
+		
 		# trash/cancel
 		sr.submit()
 		sr.cancel()