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 2323from .models import (
2424 TaskState , WorkerState ,
2525 PeriodicTask , IntervalSchedule , CrontabSchedule ,
26+ PeriodicTasks
2627)
2728from .humanize import naturaldate
2829from .utils import is_database_scheduler , make_aware
@@ -350,13 +351,20 @@ class PeriodicTaskAdmin(admin.ModelAdmin):
350351 actions = ['enable_tasks' ,
351352 'disable_tasks' ]
352353
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+
353359 @action (_ ('Enable selected periodic tasks' ))
354360 def enable_tasks (self , request , queryset ):
355361 queryset .update (enabled = True )
362+ self .update_periodic_tasks ()
356363
357364 @action (_ ('Disable selected periodic tasks' ))
358365 def disable_tasks (self , request , queryset ):
359366 queryset .update (enabled = False )
367+ self .update_periodic_tasks ()
360368
361369 def changelist_view (self , request , extra_context = None ):
362370 extra_context = extra_context or {}
Original file line number Diff line number Diff line change 44from django .test import RequestFactory , TestCase
55
66from 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+ )
810
911
1012class MockRequest (object ):
@@ -52,8 +54,11 @@ def test_enable_tasks_should_enable_disabled_periodic_tasks(self):
5254 PeriodicTask .objects .create (name = 'Killer Queen' , task = 'killer_queen' ,
5355 interval = self .interval , enabled = False ),
5456 queryset = PeriodicTask .objects .filter (pk = 1 )
57+ last_update = PeriodicTasks .objects .get (ident = 1 ).last_update
5558 self .pt_admin .enable_tasks (request , queryset )
59+ new_last_update = PeriodicTasks .objects .get (ident = 1 ).last_update
5660 self .assertTrue (PeriodicTask .objects .get (pk = 1 ).enabled )
61+ self .assertNotEqual (last_update , new_last_update )
5762
5863 def test_disable_tasks_should_disable_enabled_periodic_tasks (self ):
5964 """
You can’t perform that action at this time.
0 commit comments