|
- from odoo.tests.common import TransactionCase
- from odoo.exceptions import UserError
-
-
- class TestPricing(TransactionCase):
-
- def test_miss_get_pricing_id(self):
- '''测试定价策略缺少输入的报错问题'''
- warehouse = self.env.ref('warehouse.hd_stock')
- goods = self.env.ref('goods.mouse')
- date = 20160101
- partner = self.env.ref('core.zt')
- pricing = self.env['pricing']
- with self.assertRaises(UserError):
- pricing.get_pricing_id(False, warehouse, goods, date)
-
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, False, goods, date)
-
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, False, date)
-
- def test_good_pricing(self):
- '''测试定价输入商品名称、仓库、客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20160415
- good_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', goods.id),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = good_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_gc_pricing(self):
- '''测试定价输入商品类别、仓库、客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.keyboard')
- date = 20160515
- gc_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', False),
- ('goods_category_id', '=', goods.category_id.id),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = gc_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_pw_pricing(self):
- '''测试定价输入仓库、客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20160615
- pw_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', False),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = pw_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_wg_pricing(self):
- '''测试定价输入商品名称、仓库、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20160715
- wg_pricing = self.env['pricing'].search([
- ('c_category_id', '=', False),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', goods.id),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = wg_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_w_gc_pricing(self):
- '''测试定价输入商品类别、仓库、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20160815
- w_gc_pricing = self.env['pricing'].search([
- ('c_category_id', '=', False),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', False),
- ('goods_category_id', '=',
- goods.category_id.id),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = w_gc_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_warehouse_pricing(self):
- '''测试定价输入仓库、日期时,定价策略不唯一的情况'''
- warehouse = self.env.ref('warehouse.bj_stock')
- date = 20160915
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- goods = self.env.ref('goods.mouse')
- warehouse_pricing = self.env['pricing'].search([
- ('c_category_id', '=', False),
- ('warehouse_id', '=', warehouse.id),
- ('goods_id', '=', False),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = warehouse_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_ccg_pricing(self):
- '''测试定价输入商品名称、客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- goods = self.env.ref('goods.mouse')
- date = 20161015
- warehouse = self.env.ref('warehouse.bj_stock')
- ccg_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', False),
- ('goods_id', '=', goods.id),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = ccg_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_ccgc_pricing(self):
- '''测试定价输入商品类别、客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20161115
- ccgc_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', False),
- ('goods_id', '=', False),
- ('goods_category_id', '=',
- goods.category_id.id),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = ccgc_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_partner_pricing(self):
- '''测试定价输入客户、日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20161215
- partner_pricing = self.env['pricing'].search([
- ('c_category_id', '=', partner.c_category_id.id),
- ('warehouse_id', '=', False),
- ('goods_id', '=', False),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = partner_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
-
- def test_all_goods_pricing(self):
- '''测试定价只输入日期时,定价策略不唯一的情况'''
- pricing = self.env['pricing']
- partner = self.env.ref('core.jd')
- warehouse = self.env.ref('warehouse.bj_stock')
- goods = self.env.ref('goods.mouse')
- date = 20170101
- all_goods_pricing = self.env['pricing'].search([
- ('c_category_id', '=', False),
- ('warehouse_id', '=', False),
- ('goods_id', '=', False),
- ('goods_category_id', '=', False),
- ('active_date', '<=', date),
- ('deactive_date', '>=', date)
- ])
- cp = all_goods_pricing.copy()
- with self.assertRaises(UserError):
- pricing.get_pricing_id(partner, warehouse, goods, date)
|