Revert "[ADD] purchase: average price computation test"

This reverts commit 5f9280e854.

These tests have been introduced in 7.0/saas-3, but can no longer be applied in 8.0, as they uses models that do not exist anymore in the new wms.

if such tests do not exist yet in Odoo 8.0, then these tests needs re-work, they cannot be applied like that

Conflicts:
	addons/purchase/tests/test_average_price.py
This commit is contained in:
Denis Ledoux 2014-12-04 10:20:55 +01:00
parent 5ca7fa18fc
commit 04f3fffdb4
2 changed files with 0 additions and 201 deletions

View File

@ -1,26 +0,0 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Business Applications
# Copyright (c) 2012-TODAY OpenERP S.A. <http://openerp.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import test_average_price
checks = [
test_average_price,
]

View File

@ -1,175 +0,0 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Business Applications
# Copyright (c) 2012-TODAY OpenERP S.A. <http://openerp.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
#from openerp.test.common import TransactionCase
from datetime import date
from openerp.tests import common
from openerp import workflow
class TestAveragePrice(common.TransactionCase):
def setUp(self):
super(TestAveragePrice, self).setUp()
cr, uid, context = self.cr, self.uid, {}
self.ir_model_data = self.registry('ir.model.data')
self.product_product = self.registry('product.product')
self.purchase_order = self.registry('purchase.order')
self.purchase_order_line = self.registry('purchase.order.line')
self.pricelist = self.registry('product.pricelist')
self.stock_location = self.registry('stock.location')
self.stock_picking = self.registry('stock.picking')
self.stock_move = self.registry('stock.move')
self.stock_partial_move = self.registry('stock.partial.move')
self.stock_partial_move_line = self.registry('stock.partial.move.line')
self.partial_picking = self.registry('stock.partial.picking')
self.partial_picking_line = self.registry('stock.partial.picking.line')
change_product_qty = self.registry('stock.change.product.qty')
_, partner_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'base', 'res_partner_1')
_, pricelist_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'product', 'list0')
_, self.location_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'stock', 'stock_location_stock')
_, self.supplier_location_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'stock', 'stock_location_suppliers')
_, input_account_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'account', 'xfa')
_, output_account_id = self.registry('ir.model.data').get_object_reference(cr, uid, 'account', 'xfa')
self.standard_price = 10
self.order_price_unit = 20
self.available_qty = 1
self.order_qty = 1
self.picking_qty = 1
self.product_id = self.product_product.create(cr, uid, {
'name': 'Average product',
'cost_method': 'average',
'valuation': 'real_time',
'property_stock_account_input': input_account_id,
'property_stock_account_output': output_account_id,
}, context=context)
self.product_product.do_change_standard_price(
cr, uid, [self.product_id], {
'new_price': self.standard_price,
'stock_input_account': input_account_id,
'stock_output_account': output_account_id})
change_product_qty_id = change_product_qty.create(
cr, uid, {
'location_id': self.location_id,
'new_quantity': self.available_qty,
'product_id': self.product_id})
change_product_qty.change_product_qty(
cr, uid, [change_product_qty_id], {
'active_model': 'product.product',
'active_id': self.product_id,
'active_ids': [self.product_id]})
self.po_01_id = self.purchase_order.create(cr, uid, {
'partner_id': partner_id,
'location_id': self.location_id,
'pricelist_id': pricelist_id,
}, context=context)
self.order_line_10 = self.purchase_order_line.create(cr, uid, {
'order_id': self.po_01_id,
'product_id': self.product_id,
'name': 'description',
'date_planned': date.today(),
'product_qty': self.order_qty,
'price_unit': self.order_price_unit
}, context=context)
workflow.trg_validate(uid, 'purchase.order', self.po_01_id, 'purchase_confirm', cr)
def test_10_stock_move_action_done(self):
cr, uid, context = self.cr, self.uid, {}
picking_id = self.purchase_order.read(cr, uid, [self.po_01_id], ['picking_ids'])[0]['picking_ids']
move_lines_ids = self.stock_picking.read(cr, uid, picking_id, ['move_lines'])[0]['move_lines']
for move in self.stock_move.browse(cr, uid, move_lines_ids, context=context):
move.action_done()
new_price = self.product_product.read(cr, uid, self.product_id, ['standard_price'], context=context)['standard_price']
self.assertAlmostEqual(
new_price,
(self.available_qty * self.standard_price + self.order_qty * self.order_price_unit)
/(self.available_qty + self.order_qty))
def test_20_partial_stock_move(self):
cr, uid, context = self.cr, self.uid, {}
picking_ids = self.purchase_order.read(cr, uid, [self.po_01_id], ['picking_ids'])[0]['picking_ids']
product = self.product_product.browse(cr, uid, self.product_id, context=context)
partial_move_id = self.stock_partial_move.create(cr, uid, {
'date': date.today(),
'picking_id': picking_ids[0]
}, context=context)
move_lines_ids = self.stock_picking.read(cr, uid, picking_ids, ['move_lines'])[0]['move_lines']
for move in self.stock_move.browse(cr, uid, move_lines_ids, context=context):
self.stock_partial_move_line.create(cr, uid, {
'product_id': self.product_id,
'quantity': self.picking_qty,
'product_uom': product.uom_id.id,
'location_dest_id': self.location_id,
'location_id': self.supplier_location_id,
'move_id': move.id,
'cost': self.order_price_unit,
'wizard_id': partial_move_id,
}, context=context)
self.stock_partial_move.do_partial(cr, uid, [partial_move_id], context=context)
new_price = self.product_product.read(cr, uid, self.product_id, ['standard_price'], context=context)['standard_price']
self.assertAlmostEqual(
new_price,
(self.available_qty * self.standard_price + self.order_qty * self.order_price_unit)
/(self.available_qty + self.order_qty))
def test_30_partial_stock_picking(self):
cr, uid, context = self.cr, self.uid, {}
picking_ids = self.purchase_order.read(cr, uid, [self.po_01_id], ['picking_ids'])[0]['picking_ids']
product = self.product_product.browse(cr, uid, self.product_id, context=context)
partial_picking_id = self.partial_picking.create(cr, uid, {
'date': date.today(),
'picking_id': picking_ids[0],
}, context=context)
move_lines_ids = self.stock_picking.read(cr, uid, picking_ids, ['move_lines'])[0]['move_lines']
for move in self.stock_move.browse(cr, uid, move_lines_ids, context=context):
self.partial_picking_line.create(cr, uid, {
'product_id': self.product_id,
'quantity': self.picking_qty,
'product_uom': product.uom_id.id,
'location_dest_id': self.location_id,
'location_id': self.supplier_location_id,
'move_id': move.id,
'cost': self.order_price_unit,
'wizard_id': partial_picking_id,
}, context=context)
self.partial_picking.do_partial(cr, uid, [partial_picking_id], context=context)
new_price = self.product_product.read(cr, uid, self.product_id, ['standard_price'], context=context)['standard_price']
self.assertAlmostEqual(
new_price,
(self.available_qty * self.standard_price + self.order_qty * self.order_price_unit)
/(self.available_qty + self.order_qty))