Odoo18-Base/addons/product/tests/test_update_pav_wizard.py
2025-01-06 10:57:38 +07:00

53 lines
1.8 KiB
Python

# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.tests import Form, tagged
from odoo.addons.product.tests.common import ProductVariantsCommon
@tagged('post_install', '-at_install')
class TestUpdateProductAttributeValueWizard(ProductVariantsCommon):
def test_add_to_products(self):
self.assertNotIn(
self.size_attribute_m,
self.product_template_shirt.attribute_line_ids.value_ids,
)
action = self.size_attribute_m.action_add_to_products()
with Form(self.env[action['res_model']].with_context(action['context'])) as wizard:
wizard_record = wizard.save()
wizard_record.action_confirm()
self.assertIn(
self.size_attribute_m,
self.product_template_shirt.attribute_line_ids.value_ids,
)
def test_update_extra_prices(self):
self.assertEqual(
self.color_attribute.value_ids.mapped('default_extra_price'),
self.product_template_sofa.attribute_line_ids.product_template_value_ids.mapped('price_extra'),
)
self.assertEqual(
self.color_attribute.value_ids.mapped('default_extra_price'),
[0.0, 0.0, 0.0],
)
self.color_attribute_red.default_extra_price = 20.0
action = self.color_attribute_red.action_update_prices()
with Form(self.env[action['res_model']].with_context(action['context'])) as wizard:
wizard_record = wizard.save()
wizard_record.action_confirm()
self.assertEqual(
self.product_template_sofa.attribute_line_ids.product_template_value_ids.filtered(
lambda ptav: ptav.product_attribute_value_id == self.color_attribute_red,
).price_extra,
20.0,
)