@@ -1825,3 +1825,30 @@ def test_periodic_task_edit(self):
18251825 self .assertEqual (results [10 ]['data' ]['inventory' ], '' )
18261826 self .assertEqual (results [12 ]['data' ]['inventory' ], './localhost, ' )
18271827 self .assertEqual (results [- 2 ]['data' ]['status' ], 'OK' )
1828+
1829+ def test_periodic_task_without_inventory (self ):
1830+ template_data = self .template_playbook
1831+ del template_data ['data' ]['inventory' ]
1832+ periodic_task = {
1833+ "name" : "WithoutInventory" ,
1834+ "kind" : "TEMPLATE" ,
1835+ "mode" : "" ,
1836+ "inventory" : "" ,
1837+ "save_result" : True ,
1838+ "template" : "<<2[data][id]>>" ,
1839+ "template_opt" : None ,
1840+ "enabled" : True ,
1841+ "type" : "CRONTAB" ,
1842+ "schedule" : "56 9 * * 1-6" ,
1843+ "notes" : ""
1844+ }
1845+ results = self .bulk ([
1846+ {'method' : 'post' , 'path' : ['project' ], 'data' : dict (name = 'test_pt_errors' , repo_type = 'MANUAL' )},
1847+ {'method' : 'post' , 'path' : ['project' , '<<0[data][id]>>' , 'sync' ]},
1848+ {'method' : 'post' , 'path' : ['project' , '<<0[data][id]>>' , 'template' ], 'data' : template_data },
1849+ {'method' : 'post' , 'path' : ['project' , '<<0[data][id]>>' , 'periodic_task' ], 'data' : periodic_task },
1850+ {'method' : 'post' , 'path' : ['project' , '<<0[data][id]>>' , 'periodic_task' , '<<3[data][id]>>' , 'execute' ]},
1851+ {'method' : 'delete' , 'path' : ['project' , '<<0[data][id]>>' ]},
1852+ ])
1853+ self .assertEqual (len (tuple (filter (lambda x : x ['status' ] not in (201 , 200 , 204 ), results ))), 0 , results )
1854+ self .assertIn ('history_id' , results [4 ]['data' ].keys ())
0 commit comments