Skip to content

Commit ebced96

Browse files
InigoGRthienvh332
authored andcommitted
queue_job: fix retry format with tuple values
OCA#348 added support for randomized retry intervals. Configuration of randomized retry intervals is not possible due to the formatting checks not being updated. This should fix it.
1 parent 64a4657 commit ebced96

2 files changed

Lines changed: 36 additions & 0 deletions

File tree

test_queue_job/tests/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@
44
from . import test_job
55
from . import test_job_auto_delay
66
from . import test_job_channels
7+
from . import test_job_function
78
from . import test_related_actions
89
from . import test_delay_mocks
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import odoo.tests.common as common
2+
from odoo import exceptions
3+
4+
5+
class TestJobFunction(common.TransactionCase):
6+
def setUp(self):
7+
super(TestJobFunction, self).setUp()
8+
self.test_function_model = self.env.ref(
9+
"queue_job.job_function_queue_job__test_job"
10+
)
11+
12+
def test_check_retry_pattern_randomized_case(self):
13+
randomized_pattern = "{1: (10, 20), 2: (20, 40)}"
14+
self.test_function_model.edit_retry_pattern = randomized_pattern
15+
self.assertEqual(
16+
self.test_function_model.edit_retry_pattern, randomized_pattern
17+
)
18+
19+
def test_check_retry_pattern_fixed_case(self):
20+
fixed_pattern = "{1: 10, 2: 20}"
21+
self.test_function_model.edit_retry_pattern = fixed_pattern
22+
self.assertEqual(self.test_function_model.edit_retry_pattern, fixed_pattern)
23+
24+
def test_check_retry_pattern_invalid_cases(self):
25+
invalid_time_value_pattern = "{1: a, 2: 20}"
26+
with self.assertRaises(exceptions.UserError):
27+
self.test_function_model.edit_retry_pattern = invalid_time_value_pattern
28+
29+
invalid_retry_count_pattern = "{a: 10, 2: 20}"
30+
with self.assertRaises(exceptions.UserError):
31+
self.test_function_model.edit_retry_pattern = invalid_retry_count_pattern
32+
33+
invalid_randomized_pattern = "{1: (1, 2, 3), 2: 20}"
34+
with self.assertRaises(exceptions.UserError):
35+
self.test_function_model.edit_retry_pattern = invalid_randomized_pattern

0 commit comments

Comments
 (0)