Skip to content

Commit c14b9d3

Browse files
committed
Rename dependency method done() to on_done()
on_done() is maybe a better choice, it is less ambiguous than then() (clearer on the fact it happens on done()) and done() (less confusion with set_done()). I'll do the renaming soon, unless you have other suggestions. Ref: OCA#154 (comment)
1 parent 520b1d0 commit c14b9d3

7 files changed

Lines changed: 30 additions & 30 deletions

File tree

queue_job/controllers/main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ def _create_graph_test_jobs(
270270
root_delayable = delayable
271271
else:
272272
tail_delayable = random.choice(tails)
273-
tail_delayable.done(delayable)
273+
tail_delayable.on_done(delayable)
274274
tails.append(delayable)
275275

276276
root_delayable.delay()

queue_job/delay.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ def group(*delayables):
2727
2828
g1 = group(delayable1, delayable2)
2929
g2 = group(delayable3, delayable4)
30-
g1.done(g2)
30+
g1.on_done(g2)
3131
g1.delay()
3232
"""
3333
return DelayableGroup(*delayables)
@@ -46,7 +46,7 @@ def chain(*delayables):
4646
4747
chain1 = chain(delayable1, delayable2, delayable3)
4848
chain2 = chain(delayable4, delayable5, delayable6)
49-
chain1.done(chain2)
49+
chain1.on_done(chain2)
5050
chain1.delay()
5151
"""
5252
return DelayableChain(*delayables)
@@ -351,7 +351,7 @@ def __repr__(self):
351351
inner_graph = "\n\t".join(repr(self._graph).split("\n"))
352352
return 'DelayableChain(\n\t{}\n)'.format(inner_graph)
353353

354-
def done(self, *delayables):
354+
def on_done(self, *delayables):
355355
"""Connects the current chain to other delayables/chains/groups
356356
357357
The delayables/chains/groups passed in the parameters will be executed
@@ -406,7 +406,7 @@ def __repr__(self):
406406
inner_graph = "\n\t".join(repr(self._graph).split("\n"))
407407
return 'DelayableGroup(\n\t{}\n)'.format(inner_graph)
408408

409-
def done(self, *delayables):
409+
def on_done(self, *delayables):
410410
"""Connects the current group to other delayables/chains/groups
411411
412412
The delayables/chains/groups passed in the parameters will be executed
@@ -512,7 +512,7 @@ def set(self, *args, **kwargs):
512512
self._set_from_dict(kwargs)
513513
return self
514514

515-
def done(self, *delayables):
515+
def on_done(self, *delayables):
516516
"""Connects the current Delayable to other delayables/chains/groups
517517
518518
The delayables/chains/groups passed in the parameters will be executed

queue_job/models/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ def delayable(self, priority=None, eta=None,
9494
9595
job1 = record1.delayable().do_work()
9696
job2 = record2.delayable().do_work()
97-
job1.done(job2)
97+
job1.on_done(job2)
9898
9999
The ``delay()`` call must be made on ``job1``, otherwise ``job2`` will
100100
be delayed, but ``job1`` will never be. When done on ``job1``, the

queue_job/readme/USAGE.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ which in some cases allow to build the jobs dynamically:
6060
.delay()
6161
)
6262
63-
The simplest way to define a dependency is to use ``.done(job)`` on a Delayable:
63+
The simplest way to define a dependency is to use ``.on_done(job)`` on a Delayable:
6464

6565
.. code-block:: python
6666
@@ -70,13 +70,13 @@ The simplest way to define a dependency is to use ``.done(job)`` on a Delayable:
7070
job2 = self.browse(1).delayable().generate_thumbnail((50, 50))
7171
job3 = self.browse(1).delayable().generate_thumbnail((50, 50))
7272
# job 3 is executed when job 2 is done which is executed when job 1 is done
73-
job1.done(job2.done(job3)).delay()
73+
job1.on_done(job2.on_done(job3)).delay()
7474
7575
Delayables can be chained to form more complex graphs using the ``chain()`` and
7676
``group()`` primitives.
7777
A chain represents a sequence of jobs to execute in order, a group represents
7878
jobs which can be executed in parallel. Using ``chain()`` has the same effect as
79-
using several nested ``done()`` but is more readable. Both can be combined to
79+
using several nested ``on_done()`` but is more readable. Both can be combined to
8080
form a graph, for instance we can group [A] of jobs, which blocks another group
8181
[B] of jobs. When and only when all the jobs of the group [A] are executed, the
8282
jobs of the group [B] are executed. The code would look like:

queue_job/tests/test_delayable.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ def test_graph_connect(self):
6262
node_tail2 = Delayable(self.recordset)
6363
node_middle = Delayable(self.recordset)
6464
node_top = Delayable(self.recordset)
65-
node_middle.done(node_tail)
66-
node_middle.done(node_tail2)
67-
node_top.done(node_middle)
65+
node_middle.on_done(node_tail)
66+
node_middle.on_done(node_tail2)
67+
node_top.on_done(node_middle)
6868
collected = node_top._graph._connect_graphs()
6969
self.assertEqual(
7070
collected._graph,

test_queue_job/tests/test_delay_mocks.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ def test_trap_jobs_perform(self):
7373
node = Delayable(model).create_ir_logging("test_trap_jobs_perform graph 1")
7474
node2 = Delayable(model).create_ir_logging("test_trap_jobs_perform graph 2")
7575
node3 = Delayable(model).create_ir_logging("test_trap_jobs_perform graph 3")
76-
node2.done(node3)
77-
node3.done(node)
76+
node2.on_done(node3)
77+
node3.on_done(node)
7878
node2.delay()
7979

8080
# jobs are not executed
@@ -141,7 +141,7 @@ def test_delay_graph_direct_exec_env_var(self):
141141
node2 = Delayable(self.env["test.queue.job"]).create_ir_logging(
142142
"test_delay_graph_direct_exec 2"
143143
)
144-
node2.done(node)
144+
node2.on_done(node)
145145
node2.delay()
146146
# jobs are executed directly
147147
logs = self.env["ir.logging"].search(
@@ -168,7 +168,7 @@ def test_delay_graph_direct_exec_context_key(self):
168168
node2 = Delayable(self.env["test.queue.job"]).create_ir_logging(
169169
"test_delay_graph_direct_exec 2"
170170
)
171-
node2.done(node)
171+
node2.on_done(node)
172172
node2.delay()
173173
# jobs are executed directly
174174
logs = self.env["ir.logging"].search(

test_queue_job/tests/test_delayable.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -57,18 +57,18 @@ def test_delayable_delay_single(self):
5757
node.delay()
5858
self.assert_generated_job(node)
5959

60-
def test_delayable_delay_done(self):
60+
def test_delayable_delay_on_done(self):
6161
node = self.job_node(1)
6262
node2 = self.job_node(2)
63-
node.done(node2).delay()
63+
node.on_done(node2).delay()
6464
self.assert_generated_job(node, node2)
6565
self.assert_dependencies({node: {}, node2: {node}})
6666

6767
def test_delayable_delay_done_multi(self):
6868
node = self.job_node(1)
6969
node2 = self.job_node(2)
7070
node3 = self.job_node(3)
71-
node.done(node2, node3).delay()
71+
node.on_done(node2, node3).delay()
7272
self.assert_generated_job(node, node2, node3)
7373
self.assert_dependencies({
7474
node: {}, node2: {node}, node3: {node}
@@ -94,7 +94,7 @@ def test_delayable_delay_job_after_group(self):
9494
node = self.job_node(1)
9595
node2 = self.job_node(2)
9696
node3 = self.job_node(3)
97-
DelayableGroup(node, node2).done(node3).delay()
97+
DelayableGroup(node, node2).on_done(node3).delay()
9898
self.assert_generated_job(node, node2, node3)
9999
self.assert_dependencies({
100100
node: {}, node2: {}, node3: {node, node2}
@@ -107,7 +107,7 @@ def test_delayable_delay_group_after_group(self):
107107
node4 = self.job_node(4)
108108
g1 = DelayableGroup(node, node2)
109109
g2 = DelayableGroup(node3, node4)
110-
g1.done(g2).delay()
110+
g1.on_done(g2).delay()
111111
self.assert_generated_job(node, node2, node3, node4)
112112
self.assert_dependencies({
113113
node: {}, node2: {},
@@ -120,7 +120,7 @@ def test_delayable_delay_implicit_group_after_group(self):
120120
node2 = self.job_node(2)
121121
node3 = self.job_node(3)
122122
node4 = self.job_node(4)
123-
g1 = DelayableGroup(node, node2).done(node3, node4)
123+
g1 = DelayableGroup(node, node2).on_done(node3, node4)
124124
g1.delay()
125125
self.assert_generated_job(node, node2, node3, node4)
126126
self.assert_dependencies({
@@ -138,7 +138,7 @@ def test_delayable_delay_group_after_group_after_group(self):
138138
g2 = DelayableGroup(node2)
139139
g3 = DelayableGroup(node3)
140140
g4 = DelayableGroup(node4)
141-
g1.done(g2.done(g3.done(g4))).delay()
141+
g1.on_done(g2.on_done(g3.on_done(g4))).delay()
142142
self.assert_generated_job(node, node2, node3, node4)
143143
self.assert_dependencies({
144144
node: {},
@@ -153,8 +153,8 @@ def test_delayable_diamond(self):
153153
node3 = self.job_node(3)
154154
node4 = self.job_node(4)
155155
g1 = DelayableGroup(node2, node3)
156-
g1.done(node4)
157-
node.done(g1)
156+
g1.on_done(node4)
157+
node.on_done(g1)
158158
node.delay()
159159
self.assert_generated_job(node, node2, node3, node4)
160160
self.assert_dependencies({
@@ -196,7 +196,7 @@ def test_delayable_chain_after_job(self):
196196
node3 = self.job_node(3)
197197
node4 = self.job_node(4)
198198
c1 = DelayableChain(node2, node3, node4)
199-
node.done(c1)
199+
node.on_done(c1)
200200
node.delay()
201201
self.assert_generated_job(node, node2, node3, node4)
202202
self.assert_dependencies({
@@ -215,7 +215,7 @@ def test_delayable_chain_after_chain(self):
215215
node6 = self.job_node(6)
216216
chain1 = DelayableChain(node, node2, node3)
217217
chain2 = DelayableChain(node4, node5, node6)
218-
chain1.done(chain2)
218+
chain1.on_done(chain2)
219219
chain1.delay()
220220
self.assert_generated_job(node, node2, node3, node4, node5, node6)
221221
self.assert_dependencies({
@@ -240,7 +240,7 @@ def test_delayable_group_of_chain(self):
240240
chain2 = DelayableChain(node3, node4)
241241
chain3 = DelayableChain(node5, node6)
242242
chain4 = DelayableChain(node7, node8)
243-
g1 = DelayableGroup(chain1, chain2).done(chain3, chain4)
243+
g1 = DelayableGroup(chain1, chain2).on_done(chain3, chain4)
244244
g1.delay()
245245
self.assert_generated_job(
246246
node, node2, node3, node4,
@@ -278,6 +278,6 @@ def test_delay_job_already_exists(self):
278278
node = self.job_node(1)
279279
node2 = self.job_node(2)
280280
node2.delay()
281-
node.done(node2).delay()
281+
node.on_done(node2).delay()
282282
self.assert_generated_job(node, node2)
283283
self.assert_dependencies({node: {}, node2: {node}})

0 commit comments

Comments
 (0)