diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 070a3e9..523c819 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -149,9 +149,15 @@
 		self.assertEqual(doc.items[0].is_fixed_asset, 1)
 
 	def test_scrap_asset(self):
-		asset = create_asset(calculate_depreciation=1, available_for_use_date='2020-01-01',
-			purchase_date = '2020-01-01', expected_value_after_useful_life=10000,
-			total_number_of_depreciations=10, frequency_of_depreciation=1, submit=1)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = '2020-01-01',
+			purchase_date = '2020-01-01',
+			expected_value_after_useful_life = 10000,
+			total_number_of_depreciations = 10,
+			frequency_of_depreciation = 1,
+			submit = 1
+		)
 
 		post_depreciation_entries(date=add_months('2020-01-01', 4))
 
@@ -179,10 +185,16 @@
 		self.assertEqual(asset.status, "Partially Depreciated")
 
 	def test_gle_made_by_asset_sale(self):
-		asset = create_asset(calculate_depreciation=1, available_for_use_date='2020-06-06',
-			purchase_date = '2020-01-01', expected_value_after_useful_life=10000,
-			total_number_of_depreciations=3, frequency_of_depreciation=10,
-			depreciation_start_date='2020-12-31', submit=1)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = '2020-06-06',
+			purchase_date = '2020-01-01',
+			expected_value_after_useful_life = 10000,
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 10,
+			depreciation_start_date = '2020-12-31',
+			submit = 1
+		)
 
 		post_depreciation_entries(date="2021-01-01")
 
@@ -371,10 +383,15 @@
 
 class TestDepreciationMethods(AssetSetup):
 	def test_schedule_for_straight_line_method(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-01-01", purchase_date="2030-01-01",
-			expected_value_after_useful_life=10000, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-01-01",
+			purchase_date = "2030-01-01",
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.status, "Draft")
 		expected_schedules = [
@@ -389,11 +406,17 @@
 		self.assertEqual(schedules, expected_schedules)
 
 	def test_schedule_for_straight_line_method_for_existing_asset(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-06-06", is_existing_asset=1,
-			number_of_depreciations_booked = 1, opening_accumulated_depreciation=40000,
-			expected_value_after_useful_life=10000, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-06-06",
+			is_existing_asset = 1,
+			number_of_depreciations_booked  =  1,
+			opening_accumulated_depreciation = 40000,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.status, "Draft")
 		expected_schedules = [
@@ -407,11 +430,16 @@
 		self.assertEqual(schedules, expected_schedules)
 
 	def test_schedule_for_double_declining_method(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-01-01", purchase_date="2030-01-01",
-			depreciation_method="Double Declining Balance",
-			expected_value_after_useful_life=10000, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-01-01",
+			purchase_date = "2030-01-01",
+			depreciation_method = "Double Declining Balance",
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.status, "Draft")
 
@@ -427,12 +455,18 @@
 		self.assertEqual(schedules, expected_schedules)
 
 	def test_schedule_for_double_declining_method_for_existing_asset(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-01-01", is_existing_asset=1,
-			depreciation_method="Double Declining Balance",
-			number_of_depreciations_booked = 1, opening_accumulated_depreciation=50000,
-			expected_value_after_useful_life=10000, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-01-01",
+			is_existing_asset = 1,
+			depreciation_method = "Double Declining Balance",
+			number_of_depreciations_booked  =  1,
+			opening_accumulated_depreciation = 50000,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.status, "Draft")
 
@@ -447,11 +481,16 @@
 		self.assertEqual(schedules, expected_schedules)
 
 	def test_schedule_for_prorated_straight_line_method(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-01-30", purchase_date="2030-01-30",
-			depreciation_method="Straight Line",
-			expected_value_after_useful_life=10000, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-01-30",
+			purchase_date = "2030-01-30",
+			depreciation_method = "Straight Line",
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		expected_schedules = [
 			["2030-12-31", 27534.25, 27534.25],
@@ -467,11 +506,16 @@
 
 	# WDV: Written Down Value method
 	def test_depreciation_entry_for_wdv_without_pro_rata(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-01-01", purchase_date="2030-01-01",
-			depreciation_method="Written Down Value",
-			expected_value_after_useful_life=12500, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-01-01",
+			purchase_date = "2030-01-01",
+			depreciation_method = "Written Down Value",
+			expected_value_after_useful_life = 12500,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.finance_books[0].rate_of_depreciation, 50.0)
 
@@ -488,11 +532,16 @@
 
 	# WDV: Written Down Value method
 	def test_pro_rata_depreciation_entry_for_wdv(self):
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-06-06", purchase_date="2030-01-01",
-			depreciation_method="Written Down Value",
-			expected_value_after_useful_life=12500, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-06-06",
+			purchase_date = "2030-01-01",
+			depreciation_method = "Written Down Value",
+			expected_value_after_useful_life = 12500,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.finance_books[0].rate_of_depreciation, 50.0)
 
@@ -513,11 +562,16 @@
 		company_flag = frappe.flags.company
 		frappe.flags.company = "_Test Company"
 
-		asset = create_asset(calculate_depreciation=1,
-			available_for_use_date="2030-07-12", purchase_date="2030-01-01",
-			depreciation_method="Written Down Value",
-			expected_value_after_useful_life=12500, depreciation_start_date="2030-12-31",
-			total_number_of_depreciations=3, frequency_of_depreciation=12)
+		asset = create_asset(
+			calculate_depreciation = 1,
+			available_for_use_date = "2030-07-12",
+			purchase_date = "2030-01-01",
+			depreciation_method = "Written Down Value",
+			expected_value_after_useful_life = 12500,
+			depreciation_start_date = "2030-12-31",
+			total_number_of_depreciations = 3,
+			frequency_of_depreciation = 12
+		)
 
 		self.assertEqual(asset.finance_books[0].rate_of_depreciation, 50.0)
 
@@ -538,9 +592,15 @@
 
 class TestDepreciationBasics(AssetSetup):
 	def test_depreciation_without_pro_rata(self):
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2020-12-31"), submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = getdate("2019-12-31"),
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = getdate("2020-12-31"),
+			submit = 1
+		)
 
 		expected_values = [
 			["2020-12-31", 30000, 30000],
@@ -554,9 +614,15 @@
 			self.assertEqual(expected_values[i][2], schedule.accumulated_depreciation_amount)
 
 	def test_depreciation_with_pro_rata(self):
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2020-07-01"), submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = getdate("2019-12-31"),
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = getdate("2020-07-01"),
+			submit = 1
+		)
 
 		expected_values = [
 			["2020-07-01", 15000, 15000],
@@ -575,16 +641,18 @@
 
 		from erpnext.assets.doctype.asset.asset import get_depreciation_amount
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"))
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			available_for_use_date = "2019-12-31"
+		)
 
-		asset.finance_books = []
+		asset.calculate_depreciation = 1
 		asset.append("finance_books", {
 			"depreciation_method": "Straight Line",
 			"frequency_of_depreciation": 12,
 			"total_number_of_depreciations": 3,
 			"expected_value_after_useful_life": 10000,
-			"depreciation_start_date": getdate("2020-12-31")
+			"depreciation_start_date": "2020-12-31"
 		})
 
 		depreciation_amount = get_depreciation_amount(asset, 100000, asset.finance_books[0])
@@ -593,19 +661,16 @@
 	def test_make_depreciation_schedule(self):
 		"""Tests if make_depreciation_schedule() returns the right values."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), do_not_save=1)
-
-		asset.finance_books = []
-		asset.append("finance_books", {
-			"depreciation_method": "Straight Line",
-			"frequency_of_depreciation": 12,
-			"total_number_of_depreciations": 3,
-			"expected_value_after_useful_life": 10000,
-			"depreciation_start_date": getdate("2020-12-31")
-		})
-
-		asset.make_depreciation_schedule(date_of_sale=None)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			depreciation_method = "Straight Line",
+			frequency_of_depreciation = 12,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 1000,
+			depreciation_start_date = "2020-12-31"
+		)
 
 		expected_values = [
 			['2020-12-31', 30000.0],
@@ -620,20 +685,16 @@
 	def test_set_accumulated_depreciation(self):
 		"""Tests if set_accumulated_depreciation() returns the right values."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), do_not_save=1)
-
-		asset.finance_books = []
-		asset.append("finance_books", {
-			"depreciation_method": "Straight Line",
-			"frequency_of_depreciation": 12,
-			"total_number_of_depreciations": 3,
-			"expected_value_after_useful_life": 10000,
-			"depreciation_start_date": getdate("2020-12-31")
-		})
-
-		asset.make_depreciation_schedule(date_of_sale=None)
-		asset.set_accumulated_depreciation()
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			depreciation_method = "Straight Line",
+			frequency_of_depreciation = 12,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 1000,
+			depreciation_start_date = "2020-12-31"
+		)
 
 		expected_values = [30000.0, 60000.0, 90000.0]
 
@@ -643,16 +704,19 @@
 	def test_check_is_pro_rata(self):
 		"""Tests if check_is_pro_rata() returns the right value(i.e. checks if has_pro_rata is accurate)."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			available_for_use_date = "2019-12-31",
+			do_not_save = 1
+		)
 
-		asset.finance_books = []
+		asset.calculate_depreciation = 1
 		asset.append("finance_books", {
 			"depreciation_method": "Straight Line",
 			"frequency_of_depreciation": 12,
 			"total_number_of_depreciations": 3,
 			"expected_value_after_useful_life": 10000,
-			"depreciation_start_date": getdate("2020-12-31")
+			"depreciation_start_date": "2020-12-31"
 		})
 
 		has_pro_rata = asset.check_is_pro_rata(asset.finance_books[0])
@@ -664,7 +728,7 @@
 			"frequency_of_depreciation": 12,
 			"total_number_of_depreciations": 3,
 			"expected_value_after_useful_life": 10000,
-			"depreciation_start_date": getdate("2020-07-01")
+			"depreciation_start_date": "2020-07-01"
 		})
 
 		has_pro_rata = asset.check_is_pro_rata(asset.finance_books[0])
@@ -673,64 +737,103 @@
 	def test_expected_value_after_useful_life_greater_than_purchase_amount(self):
 		"""Tests if an error is raised when expected_value_after_useful_life(110,000) > gross_purchase_amount(100,000)."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=110000, depreciation_start_date=getdate("2020-07-01"), do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 110000,
+			depreciation_start_date = "2020-07-01",
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_depreciation_start_date(self):
 		"""Tests if an error is raised when neither depreciation_start_date nor available_for_use_date are specified."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			total_number_of_depreciations=3, expected_value_after_useful_life=110000, do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 110000,
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_opening_accumulated_depreciation(self):
 		"""Tests if an error is raised when opening_accumulated_depreciation > (gross_purchase_amount - expected_value_after_useful_life)."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2020-07-01"),
-			opening_accumulated_depreciation=100000, do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2020-07-01",
+			opening_accumulated_depreciation = 100000,
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_number_of_depreciations_booked(self):
 		"""Tests if an error is raised when number_of_depreciations_booked is not specified when opening_accumulated_depreciation is."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2020-07-01"),
-			opening_accumulated_depreciation=10000, do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2020-07-01",
+			opening_accumulated_depreciation = 10000,
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_number_of_depreciations(self):
 		"""Tests if an error is raised when number_of_depreciations_booked > total_number_of_depreciations."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2020-07-01"),
-			opening_accumulated_depreciation=10000, number_of_depreciations_booked=5,
-			do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2020-07-01",
+			opening_accumulated_depreciation = 10000,
+			number_of_depreciations_booked = 5,
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_depreciation_start_date_is_before_purchase_date(self):
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2014-07-01"),
-			do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2014-07-01",
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
 	def test_depreciation_start_date_is_before_available_for_use_date(self):
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date=getdate("2019-12-31"), total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, depreciation_start_date=getdate("2018-07-01"),
-			do_not_save=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			depreciation_start_date = "2018-07-01",
+			do_not_save = 1
+		)
 
 		self.assertRaises(frappe.ValidationError, asset.save)
 
@@ -743,10 +846,16 @@
 	def test_post_depreciation_entries(self):
 		"""Tests if post_depreciation_entries() works as expected."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date="2019-12-31", depreciation_start_date="2020-12-31",
-			frequency_of_depreciation=12, total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			depreciation_start_date = "2020-12-31",
+			frequency_of_depreciation = 12,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			submit = 1
+		)
 
 		post_depreciation_entries(date="2021-06-01")
 		asset.load_from_db()
@@ -758,10 +867,16 @@
 	def test_clear_depreciation_schedule(self):
 		"""Tests if clear_depreciation_schedule() works as expected."""
 
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date="2019-12-31", depreciation_start_date="2020-12-31",
-			frequency_of_depreciation=12, total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2019-12-31",
+			depreciation_start_date = "2020-12-31",
+			frequency_of_depreciation = 12,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			submit = 1
+		)
 
 		post_depreciation_entries(date="2021-06-01")
 		asset.load_from_db()
@@ -771,11 +886,17 @@
 		self.assertEqual(len(asset.schedules), 1)
 
 	def test_depreciation_entry_cancellation(self):
-		asset = create_asset(item_code="Macbook Pro",
-			calculate_depreciation=1, purchase_date="2020-06-06",
-			available_for_use_date="2020-06-06", depreciation_start_date="2020-12-31",
-			frequency_of_depreciation=10, total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			purchase_date = "2020-06-06",
+			available_for_use_date = "2020-06-06",
+			depreciation_start_date = "2020-12-31",
+			frequency_of_depreciation = 10,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			submit = 1
+		)
 
 		post_depreciation_entries(date="2021-01-01")
 
@@ -791,10 +912,15 @@
 		self.assertFalse(depr_entry)
 
 	def test_asset_expected_value_after_useful_life(self):
-		asset = create_asset(item_code="Macbook Pro", calculate_depreciation=1,
-			available_for_use_date="2020-06-06", purchase_date="2020-06-06",
-			frequency_of_depreciation=10, total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			available_for_use_date = "2020-06-06",
+			purchase_date = "2020-06-06",
+			frequency_of_depreciation = 10,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000
+		)
 
 		accumulated_depreciation_after_full_schedule = \
 			max(d.accumulated_depreciation_amount for d in asset.get("schedules"))
@@ -805,11 +931,17 @@
 		self.assertTrue(asset.finance_books[0].expected_value_after_useful_life >= asset_value_after_full_schedule)
 
 	def test_gle_made_by_depreciation_entries(self):
-		asset = create_asset(item_code="Macbook Pro",
-			calculate_depreciation=1, purchase_date="2020-01-30",
-			available_for_use_date="2020-01-30", depreciation_start_date="2020-12-31",
-			frequency_of_depreciation=10, total_number_of_depreciations=3,
-			expected_value_after_useful_life=10000, submit=1)
+		asset = create_asset(
+			item_code = "Macbook Pro",
+			calculate_depreciation = 1,
+			purchase_date = "2020-01-30",
+			available_for_use_date = "2020-01-30",
+			depreciation_start_date = "2020-12-31",
+			frequency_of_depreciation = 10,
+			total_number_of_depreciations = 3,
+			expected_value_after_useful_life = 10000,
+			submit = 1
+		)
 
 		self.assertEqual(asset.status, "Submitted")
 
