mirror of
https://github.com/odoo/runbot.git
synced 2025-03-30 14:55:45 +07:00
71 lines
3.0 KiB
Python
71 lines
3.0 KiB
Python
# -*- coding: utf-8 -*-
|
|
from .common import RunbotCase
|
|
|
|
|
|
class TestVersion(RunbotCase):
|
|
|
|
def test_basic_version(self):
|
|
|
|
major_version = self.Version.create({'name': '12.0'})
|
|
self.assertEqual(major_version.number, '12.00')
|
|
self.assertTrue(major_version.is_major)
|
|
|
|
saas_version = self.Version.create({'name': 'saas-12.1'})
|
|
self.assertEqual(saas_version.number, '12.01')
|
|
self.assertFalse(saas_version.is_major)
|
|
|
|
self.assertGreater(saas_version.number, major_version.number)
|
|
|
|
master_version = self.Version.create({'name': 'master'})
|
|
self.assertEqual(master_version.number, '~')
|
|
self.assertGreater(master_version.number, saas_version.number)
|
|
|
|
def test_version_relations(self):
|
|
version = self.env['runbot.version']
|
|
v11 = version._get('11.0')
|
|
v113 = version._get('saas-11.3')
|
|
v12 = version._get('12.0')
|
|
v122 = version._get('saas-12.2')
|
|
v124 = version._get('saas-12.4')
|
|
v13 = version._get('13.0')
|
|
v131 = version._get('saas-13.1')
|
|
v132 = version._get('saas-13.2')
|
|
v133 = version._get('saas-13.3')
|
|
master = version._get('master')
|
|
|
|
self.assertEqual(v11.previous_major_version_id, version)
|
|
self.assertEqual(v11.intermediate_version_ids, version)
|
|
|
|
self.assertEqual(v113.previous_major_version_id, v11)
|
|
self.assertEqual(v113.intermediate_version_ids, version)
|
|
|
|
self.assertEqual(v12.previous_major_version_id, v11)
|
|
self.assertEqual(v12.intermediate_version_ids, v113)
|
|
|
|
self.assertEqual(v12.previous_major_version_id, v11)
|
|
self.assertEqual(v12.intermediate_version_ids, v113)
|
|
self.assertEqual(v12.next_major_version_id, v13)
|
|
self.assertEqual(v12.next_intermediate_version_ids, v124 | v122)
|
|
|
|
self.assertEqual(v13.previous_major_version_id, v12)
|
|
self.assertEqual(v13.intermediate_version_ids, v124 | v122)
|
|
self.assertEqual(v13.next_major_version_id, master)
|
|
self.assertEqual(v13.next_intermediate_version_ids, v133 | v132 | v131)
|
|
|
|
self.assertEqual(v132.previous_major_version_id, v13)
|
|
self.assertEqual(v132.intermediate_version_ids, v131)
|
|
self.assertEqual(v132.next_major_version_id, master)
|
|
self.assertEqual(v132.next_intermediate_version_ids, v133)
|
|
|
|
self.assertEqual(master.previous_major_version_id, v13)
|
|
self.assertEqual(master.intermediate_version_ids, v133 | v132 | v131)
|
|
|
|
def test_version_docker_file(self):
|
|
version18 = self.env['runbot.version'].create({'name': '18.0'})
|
|
versionmaster = self.env['runbot.version'].search([('name', '=', 'master')])
|
|
self.assertEqual(version18.dockerfile_id, versionmaster.dockerfile_id)
|
|
versionmaster.dockerfile_id = self.env['runbot.dockerfile'].create({'name': 'New dockefile for master'})
|
|
version181 = self.env['runbot.version'].create({'name': '18.1'})
|
|
self.assertEqual(version181.dockerfile_id, versionmaster.dockerfile_id)
|
|
self.assertEqual(version181.dockerfile_id.name, 'New dockefile for master')
|