fix(item_defaults): Item name was overwriting by child name
diff --git a/erpnext/setup/doctype/item_group/item_group.py b/erpnext/setup/doctype/item_group/item_group.py
index dd11029..684febf 100644
--- a/erpnext/setup/doctype/item_group/item_group.py
+++ b/erpnext/setup/doctype/item_group/item_group.py
@@ -4,6 +4,7 @@
 from __future__ import unicode_literals
 import frappe
 import urllib
+import copy
 from frappe.utils import nowdate, cint, cstr
 from frappe.utils.nestedset import NestedSet
 from frappe.website.website_generator import WebsiteGenerator
@@ -180,6 +181,8 @@
 
 	for d in item_group.item_group_defaults or []:
 		if d.company == company:
-			return d.as_dict()
+			row = copy.deepcopy(d.as_dict())
+			row.pop("name")
+			return row
 
 	return frappe._dict()
\ No newline at end of file
diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py
index e4ca052..affaf26 100644
--- a/erpnext/stock/doctype/item/item.py
+++ b/erpnext/stock/doctype/item/item.py
@@ -7,6 +7,7 @@
 import json
 import erpnext
 import frappe
+import copy
 from erpnext.controllers.item_variant import (ItemVariantExistsError,
         copy_attributes_to_variant, get_variant, make_variant_item_code, validate_item_variant_attributes)
 from erpnext.setup.doctype.item_group.item_group import (get_parent_item_groups, invalidate_cache_for)
@@ -933,8 +934,9 @@
 
 	for d in item.item_defaults:
 		if d.company == company:
-			out.update(d.as_dict())
-
+			row = copy.deepcopy(d.as_dict())
+			row.pop("name")
+			out.update(row)
 	return out
 
 def set_item_default(item_code, company, fieldname, value):
diff --git a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
index e196764..6e2863e 100644
--- a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
@@ -320,12 +320,6 @@
 				'asset_category': asset_category, 'serial_no_series': 'ABC.###'})
 			asset_item = item_data.item_code
 
-		if not frappe.db.exists('Location', 'Test Location'):
-			frappe.get_doc({
-				'doctype': 'Location',
-				'location_name': 'Test Location'
-			}).insert()
-
 		pr = make_purchase_receipt(item_code=asset_item, qty=3)
 		asset = frappe.db.get_value('Asset', {'purchase_receipt': pr.name}, 'name')
 		asset_movement = frappe.db.get_value('Asset Movement', {'reference_name': pr.name}, 'name')
@@ -348,6 +342,12 @@
 		order by account desc""", (voucher_type, voucher_no), as_dict=1)
 
 def make_purchase_receipt(**args):
+	if not frappe.db.exists('Location', 'Test Location'):
+		frappe.get_doc({
+			'doctype': 'Location',
+			'location_name': 'Test Location'
+		}).insert()
+
 	frappe.db.set_value("Buying Settings", None, "allow_multiple_items", 1)
 	pr = frappe.new_doc("Purchase Receipt")
 	args = frappe._dict(args)
@@ -388,5 +388,5 @@
 	return pr
 
 
-test_dependencies = ["BOM", "Item Price"]
+test_dependencies = ["BOM", "Item Price", "Location"]
 test_records = frappe.get_test_records('Purchase Receipt')