33# file, You can obtain one at http://mozilla.org/MPL/2.0/. 
44
55
6+ import  multiprocessing 
67from  concurrent .futures  import  ProcessPoolExecutor 
78
89import  pytest 
1213from  taskgraph .generator  import  Kind , load_tasks_for_kind , load_tasks_for_kinds 
1314from  taskgraph .loader .default  import  loader  as  default_loader 
1415
16+ forkonly  =  pytest .mark .skipif (
17+     "fork"  not  in multiprocessing .get_all_start_methods (),
18+     reason = "requires 'fork' multiprocessing support" ,
19+ )
20+ 
1521
1622class  FakePPE (ProcessPoolExecutor ):
1723    loaded_kinds  =  []
@@ -21,6 +27,7 @@ def submit(self, kind_load_tasks, *args):
2127        return  super ().submit (kind_load_tasks , * args )
2228
2329
30+ @forkonly  
2431def  test_kind_ordering (mocker , maketgg ):
2532    "When task kinds depend on each other, they are loaded in postorder" 
2633    mocked_ppe  =  mocker .patch .object (generator , "ProcessPoolExecutor" , new = FakePPE )
@@ -272,9 +279,9 @@ def _get_loader(self):
272279) 
273280def  test_default_loader (config , expected_transforms ):
274281    loader  =  Kind ("" , "" , config , {})._get_loader ()
275-     assert  loader   is   default_loader ,  (
276-         "Default Kind  loader should be taskgraph.loader.default.loader" 
277-     )
282+     assert  (
283+         loader  is   default_loader 
284+     ),  "Default Kind loader should be taskgraph.loader.default.loader" 
278285    loader ("" , "" , config , {}, [], False )
279286
280287    assert  config ["transforms" ] ==  expected_transforms 
0 commit comments