|  |  |  | @ -348,30 +348,38 @@ class LongitudinalControl(unittest.TestCase): | 
			
		
	
		
			
				
					|  |  |  |  |   def test_longitudinal_setup(self): | 
			
		
	
		
			
				
					|  |  |  |  |     pass | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | def run_maneuver_worker(k): | 
			
		
	
		
			
				
					|  |  |  |  |   man = maneuvers[k] | 
			
		
	
		
			
				
					|  |  |  |  |   output_dir = os.path.join(os.getcwd(), 'out/longitudinal') | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   def run(self): | 
			
		
	
		
			
				
					|  |  |  |  |     print(man.title) | 
			
		
	
		
			
				
					|  |  |  |  |     manager.start_managed_process('radard') | 
			
		
	
		
			
				
					|  |  |  |  |     manager.start_managed_process('controlsd') | 
			
		
	
		
			
				
					|  |  |  |  |     manager.start_managed_process('plannerd') | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     plot, valid = man.evaluate() | 
			
		
	
		
			
				
					|  |  |  |  |     plot.write_plot(output_dir, "maneuver" + str(k+1).zfill(2)) | 
			
		
	
		
			
				
					|  |  |  |  |     valid = False | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     for retries in range(3): | 
			
		
	
		
			
				
					|  |  |  |  |       manager.start_managed_process('radard') | 
			
		
	
		
			
				
					|  |  |  |  |       manager.start_managed_process('controlsd') | 
			
		
	
		
			
				
					|  |  |  |  |       manager.start_managed_process('plannerd') | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |       plot, valid = man.evaluate() | 
			
		
	
		
			
				
					|  |  |  |  |       plot.write_plot(output_dir, "maneuver" + str(k + 1).zfill(2)) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     manager.kill_managed_process('radard') | 
			
		
	
		
			
				
					|  |  |  |  |     manager.kill_managed_process('controlsd') | 
			
		
	
		
			
				
					|  |  |  |  |     manager.kill_managed_process('plannerd') | 
			
		
	
		
			
				
					|  |  |  |  |     time.sleep(5) | 
			
		
	
		
			
				
					|  |  |  |  |       manager.kill_managed_process('radard') | 
			
		
	
		
			
				
					|  |  |  |  |       manager.kill_managed_process('controlsd') | 
			
		
	
		
			
				
					|  |  |  |  |       manager.kill_managed_process('plannerd') | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |       if valid: | 
			
		
	
		
			
				
					|  |  |  |  |         break | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     self.assertTrue(valid) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   return run | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | for k in range(len(maneuvers)): | 
			
		
	
		
			
				
					|  |  |  |  |   setattr(LongitudinalControl, "test_longitudinal_maneuvers_%d" % (k+1), run_maneuver_worker(k)) | 
			
		
	
		
			
				
					|  |  |  |  |   setattr(LongitudinalControl, "test_longitudinal_maneuvers_%d" % (k + 1), run_maneuver_worker(k)) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | if __name__ == "__main__": | 
			
		
	
		
			
				
					|  |  |  |  |   unittest.main(failfast=True) | 
			
		
	
	
		
			
				
					|  |  |  | 
 |