1
0
forked from Mapan/odoo17e
odoo17e-kedaikipas58/addons/website_sale_subscription/tests/test_ui.py
2024-12-10 09:04:09 +07:00

64 lines
2.7 KiB
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import Command
from odoo.tests import HttpCase, tagged
from .common import TestWebsiteSaleSubscriptionCommon
@tagged('-at_install', 'post_install')
class TestUi(HttpCase, TestWebsiteSaleSubscriptionCommon):
def test_website_sale_subscription_ui(self):
self.start_tour("/web", 'shop_buy_subscription_product', login='admin')
def test_website_sale_subscription_product_variants(self):
reccuring_product = self.env['product.template'].create({
'recurring_invoice': True,
'detailed_type': 'service',
'name': 'Reccuring product',
})
product_attribute = self.env['product.attribute'].create({'name': 'periods'})
product_attribute_val1 = self.env['product.attribute.value'].create({
'name': 'Monthly',
'attribute_id': product_attribute.id
})
product_attribute_val2 = self.env['product.attribute.value'].create({
'name': '2 Months',
'attribute_id': product_attribute.id
})
product_attribute_val3 = self.env['product.attribute.value'].create({
'name': 'Yearly',
'attribute_id': product_attribute.id
})
reccuring_product.attribute_line_ids = [(Command.create({
'attribute_id': product_attribute.id,
'value_ids': [Command.set([product_attribute_val1.id, product_attribute_val2.id, product_attribute_val3.id])],
}))]
pricing1 = self.env['sale.subscription.pricing'].create({
'plan_id': self.plan_month.id,
'price': 90,
'product_template_id': reccuring_product.id,
'product_variant_ids': [Command.link(reccuring_product.product_variant_ids[-3].id)],
})
pricing2 = self.env['sale.subscription.pricing'].create({
'plan_id': self.plan_2_month.id,
'price': 160,
'product_template_id': reccuring_product.id,
'product_variant_ids': [Command.link(reccuring_product.product_variant_ids[-2].id)],
})
pricing3 = self.env['sale.subscription.pricing'].create({
'plan_id': self.plan_year.id,
'price': 1000,
'product_template_id': reccuring_product.id,
'product_variant_ids': [Command.link(reccuring_product.product_variant_ids[-1].id)],
})
reccuring_product.write({
'product_subscription_pricing_ids': [Command.set([pricing1.id, pricing2.id, pricing3.id])]
})
self.start_tour(reccuring_product.website_url, 'sale_subscription_product_variants', login='admin')