File tree Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Original file line number Diff line number Diff line change 23
23
from .models import (
24
24
TaskState , WorkerState ,
25
25
PeriodicTask , IntervalSchedule , CrontabSchedule ,
26
+ PeriodicTasks
26
27
)
27
28
from .humanize import naturaldate
28
29
from .utils import is_database_scheduler , make_aware
@@ -350,13 +351,20 @@ class PeriodicTaskAdmin(admin.ModelAdmin):
350
351
actions = ['enable_tasks' ,
351
352
'disable_tasks' ]
352
353
354
+ def update_periodic_tasks (self ):
355
+ dummy_periodic_task = PeriodicTask ()
356
+ dummy_periodic_task .no_changes = False
357
+ PeriodicTasks .changed (dummy_periodic_task )
358
+
353
359
@action (_ ('Enable selected periodic tasks' ))
354
360
def enable_tasks (self , request , queryset ):
355
361
queryset .update (enabled = True )
362
+ self .update_periodic_tasks ()
356
363
357
364
@action (_ ('Disable selected periodic tasks' ))
358
365
def disable_tasks (self , request , queryset ):
359
366
queryset .update (enabled = False )
367
+ self .update_periodic_tasks ()
360
368
361
369
def changelist_view (self , request , extra_context = None ):
362
370
extra_context = extra_context or {}
Original file line number Diff line number Diff line change 4
4
from django .test import RequestFactory , TestCase
5
5
6
6
from djcelery .admin import PeriodicTaskAdmin
7
- from djcelery .models import PeriodicTask , IntervalSchedule , PERIOD_CHOICES
7
+ from djcelery .models import (
8
+ PeriodicTask , IntervalSchedule , PERIOD_CHOICES , PeriodicTasks
9
+ )
8
10
9
11
10
12
class MockRequest (object ):
@@ -52,8 +54,11 @@ def test_enable_tasks_should_enable_disabled_periodic_tasks(self):
52
54
PeriodicTask .objects .create (name = 'Killer Queen' , task = 'killer_queen' ,
53
55
interval = self .interval , enabled = False ),
54
56
queryset = PeriodicTask .objects .filter (pk = 1 )
57
+ last_update = PeriodicTasks .objects .get (ident = 1 ).last_update
55
58
self .pt_admin .enable_tasks (request , queryset )
59
+ new_last_update = PeriodicTasks .objects .get (ident = 1 ).last_update
56
60
self .assertTrue (PeriodicTask .objects .get (pk = 1 ).enabled )
61
+ self .assertNotEqual (last_update , new_last_update )
57
62
58
63
def test_disable_tasks_should_disable_enabled_periodic_tasks (self ):
59
64
"""
You can’t perform that action at this time.
0 commit comments