[IMP] <quality_control> and <quality_control_stock>

* Added "partner_selectable" field, so that inspections can by made by partner
* Stock inspections are "partner_selectable"
* Little view fixing, field was oe_edit_only instead of label
* Added partner to creation from stock_picking
* Added tests
* Picking pack operations automatically created
This commit is contained in:
oihane
2015-08-13 11:42:41 +02:00
committed by Ignacio Ales
parent 7442c7fe6b
commit c0013020de
8 changed files with 575 additions and 23 deletions

View File

@@ -1,19 +1,27 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * quality_control_stock
#
# * quality_control_stock
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Project-Id-Version: odoomrp-wip (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-12-10 19:26+0000\n"
"PO-Revision-Date: 2014-12-10 19:26+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"POT-Creation-Date: 2015-10-07 10:44+0000\n"
"PO-Revision-Date: 2015-10-09 10:50+0000\n"
"Last-Translator: Pedro M. Baeza <pedro.baeza@gmail.com>\n"
"Language-Team: Spanish (http://www.transifex.com/oca/odoomrp-wip-8-0/language/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: quality_control_stock
#: field:stock.picking,qc_inspections:0
#: field:stock.production.lot,qc_inspections:0
msgid "Inspections"
msgstr "Inspecciones"
#. module: quality_control_stock
#: help:stock.production.lot,qc_inspections:0
@@ -30,9 +38,15 @@ msgstr "Inspecciones relativas a este albarán."
#: field:qc.inspection,lot:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,lot:0
#: model:res.request.link,name:quality_control_stock.req_link_stock_production_lot
msgid "Lot"
msgstr "Lote"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Lote/Nº de serie"
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,picking:0
@@ -41,11 +55,38 @@ msgstr "Lote"
msgid "Picking"
msgstr "Albarán"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking
#: model:res.request.link,name:quality_control_stock.req_link_stock_picking
msgid "Picking List"
msgstr "Albarán"
#. module: quality_control_stock
#: field:qc.trigger,picking_type:0
msgid "Picking type"
msgstr "Tipo de albarán"
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
msgid "Product"
msgstr "Producto"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection
msgid "Quality control inspection"
msgstr "Inspección del control de calidad"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection_line
msgid "Quality control inspection line"
msgstr "Línea de inspección de control de calidad"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_trigger
msgid "Quality control trigger"
msgstr "Disparador del control de calidad"
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_done
msgid "Quality inspection from lot done"
@@ -86,9 +127,18 @@ msgstr "Inspecciones desde albarán"
msgid "Quality inspections from picking failed"
msgstr "Inspecciones desde albarán falladas"
#. module: quality_control_stock
#: model:res.request.link,name:quality_control_stock.req_link_stock_move
msgid "Stock Move"
msgstr "Movimiento de stock"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking_type
msgid "The picking type determines the picking view"
msgstr ""
#. module: quality_control_stock
#: view:stock.picking:quality_control_stock.stock_picking_qc_view
#: view:stock.production.lot:quality_control_stock.stock_lot_qc_view
msgid "inspections"
msgstr "inspecciones"

View File

@@ -0,0 +1,144 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * quality_control_stock
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: odoomrp-wip (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-10-07 10:44+0000\n"
"PO-Revision-Date: 2015-09-10 16:38+0000\n"
"Last-Translator: <>\n"
"Language-Team: French (http://www.transifex.com/oca/odoomrp-wip-8-0/language/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: quality_control_stock
#: field:stock.picking,qc_inspections:0
#: field:stock.production.lot,qc_inspections:0
msgid "Inspections"
msgstr ""
#. module: quality_control_stock
#: help:stock.production.lot,qc_inspections:0
msgid "Inspections related to this lot."
msgstr ""
#. module: quality_control_stock
#: help:stock.picking,qc_inspections:0
msgid "Inspections related to this picking."
msgstr ""
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,lot:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,lot:0
#: model:res.request.link,name:quality_control_stock.req_link_stock_production_lot
msgid "Lot"
msgstr "Lot"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Lot/n° de série"
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,picking:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,picking:0
msgid "Picking"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking
#: model:res.request.link,name:quality_control_stock.req_link_stock_picking
msgid "Picking List"
msgstr ""
#. module: quality_control_stock
#: field:qc.trigger,picking_type:0
msgid "Picking type"
msgstr ""
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
msgid "Product"
msgstr "Article"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection
msgid "Quality control inspection"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection_line
msgid "Quality control inspection line"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_trigger
msgid "Quality control trigger"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_done
msgid "Quality inspection from lot done"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_passed
msgid "Quality inspection from lot passed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_done
msgid "Quality inspection from picking done"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_passed
msgid "Quality inspection from picking passed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot
msgid "Quality inspections from lot"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_failed
msgid "Quality inspections from lot failed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking
msgid "Quality inspections from picking"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_failed
msgid "Quality inspections from picking failed"
msgstr ""
#. module: quality_control_stock
#: model:res.request.link,name:quality_control_stock.req_link_stock_move
msgid "Stock Move"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking_type
msgid "The picking type determines the picking view"
msgstr ""
#. module: quality_control_stock
#: view:stock.picking:quality_control_stock.stock_picking_qc_view
#: view:stock.production.lot:quality_control_stock.stock_lot_qc_view
msgid "inspections"
msgstr ""

View File

@@ -0,0 +1,144 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * quality_control_stock
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: odoomrp-wip (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-10-07 10:44+0000\n"
"PO-Revision-Date: 2015-10-09 03:43+0000\n"
"Last-Translator: danimaribeiro <danimaribeiro@gmail.com>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/odoomrp-wip-8-0/language/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: quality_control_stock
#: field:stock.picking,qc_inspections:0
#: field:stock.production.lot,qc_inspections:0
msgid "Inspections"
msgstr ""
#. module: quality_control_stock
#: help:stock.production.lot,qc_inspections:0
msgid "Inspections related to this lot."
msgstr ""
#. module: quality_control_stock
#: help:stock.picking,qc_inspections:0
msgid "Inspections related to this picking."
msgstr ""
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,lot:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,lot:0
#: model:res.request.link,name:quality_control_stock.req_link_stock_production_lot
msgid "Lot"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Lote/Serial"
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,picking:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,picking:0
msgid "Picking"
msgstr "Separação"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking
#: model:res.request.link,name:quality_control_stock.req_link_stock_picking
msgid "Picking List"
msgstr "Lista de separação"
#. module: quality_control_stock
#: field:qc.trigger,picking_type:0
msgid "Picking type"
msgstr ""
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
msgid "Product"
msgstr "Produto"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection
msgid "Quality control inspection"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection_line
msgid "Quality control inspection line"
msgstr ""
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_trigger
msgid "Quality control trigger"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_done
msgid "Quality inspection from lot done"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_passed
msgid "Quality inspection from lot passed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_done
msgid "Quality inspection from picking done"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_passed
msgid "Quality inspection from picking passed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot
msgid "Quality inspections from lot"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_failed
msgid "Quality inspections from lot failed"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking
msgid "Quality inspections from picking"
msgstr ""
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_picking_failed
msgid "Quality inspections from picking failed"
msgstr ""
#. module: quality_control_stock
#: model:res.request.link,name:quality_control_stock.req_link_stock_move
msgid "Stock Move"
msgstr "Movimentação de estoque"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking_type
msgid "The picking type determines the picking view"
msgstr ""
#. module: quality_control_stock
#: view:stock.picking:quality_control_stock.stock_picking_qc_view
#: view:stock.production.lot:quality_control_stock.stock_lot_qc_view
msgid "inspections"
msgstr ""

View File

@@ -1,21 +1,28 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * quality_control_stock
#
# * quality_control_stock
#
# Translators:
# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Project-Id-Version: odoomrp-wip (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-08-01 20:50+0200\n"
"PO-Revision-Date: 2015-08-01 20:53+0200\n"
"Last-Translator: Matjaz Mozetic <m.mozetic@matmoz.si>\n"
"Language-Team: \n"
"POT-Creation-Date: 2015-10-07 10:44+0000\n"
"PO-Revision-Date: 2015-09-20 19:04+0000\n"
"Last-Translator: Matjaž Mozetič <m.mozetic@matmoz.si>\n"
"Language-Team: Slovenian (http://www.transifex.com/oca/odoomrp-wip-8-0/language/sl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
"X-Generator: Poedit 1.8.2\n"
"Content-Transfer-Encoding: \n"
"Language: sl\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
#. module: quality_control_stock
#: field:stock.picking,qc_inspections:0
#: field:stock.production.lot,qc_inspections:0
msgid "Inspections"
msgstr "Inšpekcije"
#. module: quality_control_stock
#: help:stock.production.lot,qc_inspections:0
@@ -28,10 +35,11 @@ msgid "Inspections related to this picking."
msgstr "Inšpekcije vezane na ta zbirnik."
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_putvalid
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,lot:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,lot:0
#: model:res.request.link,name:quality_control_stock.req_link_stock_production_lot
msgid "Lot"
msgstr "Lot"
@@ -41,18 +49,45 @@ msgid "Lot/Serial"
msgstr "Lot/serijska št."
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_putvalid
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: field:qc.inspection,picking:0
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
#: field:qc.inspection.line,picking:0
msgid "Picking"
msgstr "Zbirnik"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking
#: model:res.request.link,name:quality_control_stock.req_link_stock_picking
msgid "Picking List"
msgstr "Zbirnik"
#. module: quality_control_stock
#: field:qc.trigger,picking_type:0
msgid "Picking type"
msgstr "Tip zbirnika"
#. module: quality_control_stock
#: view:qc.inspection:quality_control_stock.qc_inspection_search_view_picking
#: view:qc.inspection.line:quality_control_stock.qc_inspection_line_search_stock_view
msgid "Product"
msgstr "Proizvod"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection
msgid "Quality control inspection"
msgstr "Inšpekcija nadzora kvalitete"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_inspection_line
msgid "Quality control inspection line"
msgstr "Inšpekcijska postavka kontrole kakovosti"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_qc_trigger
msgid "Quality control trigger"
msgstr "Sprožilec kontrole kakovosti"
#. module: quality_control_stock
#: model:ir.actions.act_window,name:quality_control_stock.action_qc_inspection_per_lot_done
msgid "Quality inspection from lot done"
@@ -93,6 +128,16 @@ msgstr "Inšpekcije kakovosti na zbirniku"
msgid "Quality inspections from picking failed"
msgstr "Neuspešne inšpekcije kakovosti na zbirniku"
#. module: quality_control_stock
#: model:res.request.link,name:quality_control_stock.req_link_stock_move
msgid "Stock Move"
msgstr "Premik zaloge"
#. module: quality_control_stock
#: model:ir.model,name:quality_control_stock.model_stock_picking_type
msgid "The picking type determines the picking view"
msgstr "Tip zbirnika določi prikaz zbirnika"
#. module: quality_control_stock
#: view:stock.picking:quality_control_stock.stock_picking_qc_view
#: view:stock.production.lot:quality_control_stock.stock_lot_qc_view

View File

@@ -3,6 +3,8 @@
# For copyright and license notices, see __openerp__.py file in root directory
##############################################################################
from openerp import models, fields, api
from openerp.addons.quality_control.models.qc_trigger_line import\
_filter_trigger_lines
class StockPicking(models.Model):
@@ -42,9 +44,11 @@ class StockPicking(models.Model):
for model in ['qc.trigger.product_category_line',
'qc.trigger.product_template_line',
'qc.trigger.product_line']:
partner = (self.partner_id
if qc_trigger.partner_selectable else False)
trigger_lines = trigger_lines.union(
self.env[model].get_trigger_line_for_product(
qc_trigger, operation.product_id))
for trigger_line in trigger_lines:
qc_trigger, operation.product_id, partner=partner))
for trigger_line in _filter_trigger_lines(trigger_lines):
inspection_model._make_inspection(operation, trigger_line)
return res

View File

@@ -15,6 +15,7 @@ class StockPickingType(models.Model):
'name': self.complete_name,
'company_id': self.warehouse_id.company_id.id,
'picking_type': self.id,
'partner_selectable': True,
}
return self.env['qc.trigger'].sudo().create(qc_trigger)

View File

@@ -0,0 +1,5 @@
# -*- coding: utf-8 -*-
# (c) 2015 Oihane Crucelaegui - AvanzOSC
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from . import test_quality_control_stock

View File

@@ -0,0 +1,159 @@
# -*- coding: utf-8 -*-
# (c) 2015 Oihane Crucelaegui - AvanzOSC
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from openerp.tests.common import TransactionCase
class TestQualityControl(TransactionCase):
def setUp(self):
super(TestQualityControl, self).setUp()
self.picking_model = self.env['stock.picking']
self.operation_model = self.env['stock.pack.operation']
self.transfer_details_model = self.env['stock.transfer_details']
self.qc_trigger_model = self.env['qc.trigger']
self.product = self.env.ref('product.product_product_4')
self.partner1 = self.env.ref('base.res_partner_2')
self.partner2 = self.env.ref('base.res_partner_4')
self.test = self.env.ref('quality_control.qc_test_1')
self.picking_type = self.env.ref('stock.picking_type_out')
self.trigger = self.qc_trigger_model.search(
[('picking_type', '=', self.picking_type.id)])
move_vals = {
'name': self.product.name,
'product_id': self.product.id,
'product_uom': self.product.uom_id.id,
'location_id': self.picking_type.default_location_src_id.id,
'location_dest_id': self.picking_type.default_location_dest_id.id,
}
self.picking1 = self.picking_model.create({
'partner_id': self.partner1.id,
'picking_type_id': self.picking_type.id,
'move_lines': [(0, 0, move_vals)],
})
self.picking1.action_confirm()
self.picking1.force_assign()
self.picking1.do_prepare_partial()
def test_inspection_create_for_product(self):
self.product.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_template(self):
self.product.product_tmpl_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_category(self):
self.product.categ_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_product_partner(self):
self.product.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner1.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_template_partner(self):
self.product.product_tmpl_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner1.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_category_partner(self):
self.product.categ_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner1.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')
def test_inspection_create_for_product_wrong_partner(self):
self.product.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner2.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 0,
'No inspection must be created')
def test_inspection_create_for_template_wrong_partner(self):
self.product.product_tmpl_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner2.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 0,
'No inspection must be created')
def test_inspection_create_for_category_wrong_partner(self):
self.product.categ_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
'partners': [(6, 0, [self.partner2.id])],
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 0,
'No inspection must be created')
def test_inspection_create_only_one(self):
self.product.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
}
)]
self.product.categ_id.qc_triggers = [(
0, 0, {
'trigger': self.trigger.id,
'test': self.test.id,
}
)]
self.picking1.do_transfer()
self.assertEqual(self.picking1.created_inspections, 1,
'Only one inspection must be created')