Обезьяна исправляет юнит-тесты Odoo - PullRequest
2 голосов
/ 30 июня 2019

У меня есть несколько пользовательских модулей, которые изменяют рабочий процесс по умолчанию, поэтому приходится переписывать связанные модульные тесты.Сначала я без проблем исправил один crm модульный тест модуля.

Оригинальный crm модульный тест: test_crm_ui.py на GitHub .

Моя обезьянапатч в настраиваемом модуле:

import odoo.addons.crm.tests.test_crm_ui

@odoo.tests.tagged('post_install', '-at_install')
class TestUi(odoo.addons.crm.tests.test_crm_ui.TestUi):
    def test_01_crm_tour(self):
        pass
        # ...

odoo.addons.crm.tests.test_crm_ui.TestUi = TestUi

, который сработал.

Затем мне нужно обезьянить патч всех модульных тестов в модуле sale_mrp.test_multistep_manufacturing.py например: оригинал на GitHub .

Сначала я попробовал ниже, аналогично тому, что я сделал с crm.

import odoo.addons.sale_mrp.tests.test_multistep_manufacturing

class ReplaceTestMultistepManufacturing(odoo.addons.sale_mrp.tests.test_multistep_manufacturing.TestMultistepManufacturing):
    def setUp(self):
        pass
        # ...
    def test_00_manufacturing_step_one(self):
        pass
        # ...

odoo.addons.sale_mrp.tests.test_multistep_manufacturing.TestMultistepManufacturing = ReplaceTestMultistepManufacturing

Который сделал не работа, возможно, сам модуль не был исправлен.Затем я попробовал ниже.

from odoo.addons.sale_mrp.tests import test_multistep_manufacturing

class ReplaceTestMultistepManufacturing(test_multistep_manufacturing.TestMultistepManufacturing):
    def setUp(self):
        pass
        # ...
    def test_00_manufacturing_step_one(self):
        pass
        # ...

test_multistep_manufacturing.TestMultistepManufacturing = ReplaceTestMultistepManufacturing

, который также не работал.На самом деле две попытки привели к тому же результату - и новый тест и , исходный тест был запущен.

Я неправильно выполняю патч для обезьяны или мне нужно сделать что-то особенное в Odoo?Спасибо!

...