Example #1
0
	def test_make_item_variant(self):
		frappe.delete_doc_if_exists("Item", "_Test Variant Item-L")

		variant = create_variant("_Test Variant Item", {"Test Size": "Large"})
		variant.save()

		# doing it again should raise error
		variant = create_variant("_Test Variant Item", {"Test Size": "Large"})
		self.assertRaises(ItemVariantExistsError, variant.save)
Example #2
0
    def test_make_item_variant(self):
        frappe.delete_doc_if_exists("Item", "_Test Variant Item-L")

        variant = create_variant("_Test Variant Item", {"Test Size": "Large"})
        variant.save()

        # doing it again should raise error
        variant = create_variant("_Test Variant Item", {"Test Size": "Large"})
        self.assertRaises(ItemVariantExistsError, variant.save)
Example #3
0
def make_item_variant():
    if not frappe.db.exists("Item", "_Test Variant Item-S"):
        variant = create_variant("_Test Variant Item",
                                 """{"Test Size": "Small"}""")
        variant.item_code = "_Test Variant Item-S"
        variant.item_name = "_Test Variant Item-S"
        variant.save()
Example #4
0
    def test_make_item_variant_with_numeric_values(self):
        # cleanup
        frappe.delete_doc_if_exists("Item", "_Test Numeric Template Item")
        frappe.delete_doc_if_exists("Item", "_Test Numeric Variant-L-1.5")
        frappe.delete_doc_if_exists("Item Attribute", "Test Item Length")

        # make item attribute
        frappe.get_doc({
            "doctype": "Item Attribute",
            "attribute_name": "Test Item Length",
            "numeric_values": 1,
            "from_range": 0.0,
            "to_range": 100.0,
            "increment": 0.5
        }).insert()

        # make template item
        make_item(
            "_Test Numeric Template Item", {
                "attributes": [{
                    "attribute": "Test Size"
                }, {
                    "attribute": "Test Item Length"
                }],
                "default_warehouse":
                "_Test Warehouse - _TC"
            })

        variant = create_variant("_Test Numeric Template Item", {
            "Test Size": "Large",
            "Test Item Length": 1.1
        })
        self.assertEquals(variant.item_code, None)
        variant.item_code = "_Test Numeric Variant-L-1.1"
        variant.item_name = "_Test Numeric Variant Large 1.1m"
        self.assertRaises(InvalidItemAttributeValueError, variant.save)

        variant = create_variant("_Test Numeric Template Item", {
            "Test Size": "Large",
            "Test Item Length": 1.5
        })
        self.assertEquals(variant.item_code, None)
        variant.item_code = "_Test Numeric Variant-L-1.5"
        variant.item_name = "_Test Numeric Variant Large 1.5m"
        variant.save()
Example #5
0
	def test_make_item_variant_with_numeric_values(self):
		# cleanup
		frappe.delete_doc_if_exists("Item", "_Test Numeric Template Item")
		frappe.delete_doc_if_exists("Item", "_Test Numeric Variant-L-1.5")
		frappe.delete_doc_if_exists("Item Attribute", "Test Item Length")

		# make item attribute
		frappe.get_doc({
			"doctype": "Item Attribute",
			"attribute_name": "Test Item Length",
			"numeric_values": 1,
			"from_range": 0.0,
			"to_range": 100.0,
			"increment": 0.5
		}).insert()

		# make template item
		make_item("_Test Numeric Template Item", {
			"attributes": [
				{
					"attribute": "Test Size"
				},
				{
					"attribute": "Test Item Length", 
					"numeric_values": 1,
					"from_range": 0.0,
					"to_range": 100.0,
					"increment": 0.5
				}
			],
			"default_warehouse": "_Test Warehouse - _TC"
		})

		variant = create_variant("_Test Numeric Template Item", {"Test Size": "Large", "Test Item Length": 1.1})
		self.assertEquals(variant.item_code, None)
		variant.item_code = "_Test Numeric Variant-L-1.1"
		variant.item_name = "_Test Numeric Variant Large 1.1m"
		self.assertRaises(InvalidItemAttributeValueError, variant.save)

		variant = create_variant("_Test Numeric Template Item", {"Test Size": "Large", "Test Item Length": 1.5})
		self.assertEquals(variant.item_code, None)
		variant.item_code = "_Test Numeric Variant-L-1.5"
		variant.item_name = "_Test Numeric Variant Large 1.5m"
		variant.save()
Example #6
0
def make_item_variant():
	if not frappe.db.exists("Item", "_Test Variant Item-S"):
		variant = create_variant("_Test Variant Item", """{"Test Size": "Small"}""")
		variant.item_code = "_Test Variant Item-S"
		variant.item_name = "_Test Variant Item-S"
		variant.save()