Fixes in pricing rule testcases #565

This commit is contained in:
Nabin Hait 2014-05-05 18:41:41 +05:30
parent ac1bc212ea
commit 98c2a052e5
2 changed files with 7 additions and 4 deletions

View File

@ -11,6 +11,8 @@ class TestPricingRule(unittest.TestCase):
from erpnext.stock.get_item_details import get_item_details
from frappe import MandatoryError
frappe.db.sql("delete from `tabPricing Rule`")
test_record = {
"doctype": "Pricing Rule",
"apply_on": "Item Code",
@ -69,8 +71,8 @@ class TestPricingRule(unittest.TestCase):
self.assertEquals(details.get("discount_percentage"), 5)
frappe.db.sql("update `tabPricing Rule` set priority=NULL where campaign='_Test Campaign'")
details = get_item_details(args)
self.assertEquals(details.get("discount_percentage"), 15)
from erpnext.stock.get_item_details import MultiplePricingRuleConflict
self.assertRaises (MultiplePricingRuleConflict, get_item_details, args)
args.item_code = "_Test Item 2"
details = get_item_details(args)

View File

@ -7,6 +7,8 @@ from frappe import _, throw
from frappe.utils import flt, cint, add_days
import json
class MultiplePricingRuleConflict(frappe.ValidationError): pass
@frappe.whitelist()
def get_item_details(args):
"""
@ -332,10 +334,9 @@ def filter_pricing_rules(args_dict, pricing_rules):
break
if len(pricing_rules) > 1:
# pricing_rules = sorted(pricing_rules, key=lambda x: x[price_or_discount])
frappe.throw(_("Multiple Price Rule exists with same criteria, please resolve \
conflict by assigning priority. Price Rules: {0}")
.format("\n".join([d.name for d in pricing_rules])))
.format("\n".join([d.name for d in pricing_rules])), MultiplePricingRuleConflict)
elif pricing_rules:
return pricing_rules[0]