mirror of
				https://github.com/cuberite/polarssl.git
				synced 2025-10-30 11:11:12 -04:00 
			
		
		
		
	Move the core loop of run_test into an auxiliary function
No behavior change. Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
		
							parent
							
								
									236bf98cfd
								
							
						
					
					
						commit
						196d73bc1b
					
				| @ -1005,6 +1005,49 @@ check_test_failure() { | ||||
|     pass=1 | ||||
| } | ||||
| 
 | ||||
| # Run the current test case: start the server and if applicable the proxy, run | ||||
| # the client, wait for all processes to finish or time out. | ||||
| # | ||||
| # Inputs: | ||||
| # * $NAME: test case name | ||||
| # * $CLI_CMD, $SRV_CMD, $PXY_CMD: commands to run | ||||
| # * $CLI_OUT, $SRV_OUT, $PXY_OUT: files to contain client/server/proxy logs | ||||
| # | ||||
| # Outputs: | ||||
| # * $CLI_EXIT: client return code | ||||
| # * $SRV_RET: server return code | ||||
| do_run_test_once() { | ||||
|     # run the commands | ||||
|     if [ -n "$PXY_CMD" ]; then | ||||
|         printf "# %s\n%s\n" "$NAME" "$PXY_CMD" > $PXY_OUT | ||||
|         $PXY_CMD >> $PXY_OUT 2>&1 & | ||||
|         PXY_PID=$! | ||||
|         wait_proxy_start "$PXY_PORT" "$PXY_PID" | ||||
|     fi | ||||
| 
 | ||||
|     check_osrv_dtls | ||||
|     printf '# %s\n%s\n' "$NAME" "$SRV_CMD" > $SRV_OUT | ||||
|     provide_input | $SRV_CMD >> $SRV_OUT 2>&1 & | ||||
|     SRV_PID=$! | ||||
|     wait_server_start "$SRV_PORT" "$SRV_PID" | ||||
| 
 | ||||
|     printf '# %s\n%s\n' "$NAME" "$CLI_CMD" > $CLI_OUT | ||||
|     eval "$CLI_CMD" >> $CLI_OUT 2>&1 & | ||||
|     wait_client_done | ||||
| 
 | ||||
|     sleep 0.05 | ||||
| 
 | ||||
|     # terminate the server (and the proxy) | ||||
|     kill $SRV_PID | ||||
|     wait $SRV_PID | ||||
|     SRV_RET=$? | ||||
| 
 | ||||
|     if [ -n "$PXY_CMD" ]; then | ||||
|         kill $PXY_PID >/dev/null 2>&1 | ||||
|         wait $PXY_PID | ||||
|     fi | ||||
| } | ||||
| 
 | ||||
| # Usage: run_test name [-p proxy_cmd] srv_cmd cli_cmd cli_exit [option [...]] | ||||
| # Options:  -s pattern  pattern that must be present in server output | ||||
| #           -c pattern  pattern that must be present in client output | ||||
| @ -1073,35 +1116,7 @@ run_test() { | ||||
|     while [ $TIMES_LEFT -gt 0 ]; do | ||||
|         TIMES_LEFT=$(( $TIMES_LEFT - 1 )) | ||||
| 
 | ||||
|         # run the commands | ||||
|         if [ -n "$PXY_CMD" ]; then | ||||
|             printf "# %s\n%s\n" "$NAME" "$PXY_CMD" > $PXY_OUT | ||||
|             $PXY_CMD >> $PXY_OUT 2>&1 & | ||||
|             PXY_PID=$! | ||||
|             wait_proxy_start "$PXY_PORT" "$PXY_PID" | ||||
|         fi | ||||
| 
 | ||||
|         check_osrv_dtls | ||||
|         printf '# %s\n%s\n' "$NAME" "$SRV_CMD" > $SRV_OUT | ||||
|         provide_input | $SRV_CMD >> $SRV_OUT 2>&1 & | ||||
|         SRV_PID=$! | ||||
|         wait_server_start "$SRV_PORT" "$SRV_PID" | ||||
| 
 | ||||
|         printf '# %s\n%s\n' "$NAME" "$CLI_CMD" > $CLI_OUT | ||||
|         eval "$CLI_CMD" >> $CLI_OUT 2>&1 & | ||||
|         wait_client_done | ||||
| 
 | ||||
|         sleep 0.05 | ||||
| 
 | ||||
|         # terminate the server (and the proxy) | ||||
|         kill $SRV_PID | ||||
|         wait $SRV_PID | ||||
|         SRV_RET=$? | ||||
| 
 | ||||
|         if [ -n "$PXY_CMD" ]; then | ||||
|             kill $PXY_PID >/dev/null 2>&1 | ||||
|             wait $PXY_PID | ||||
|         fi | ||||
|         do_run_test_once | ||||
| 
 | ||||
|         # retry only on timeouts | ||||
|         if grep '===CLIENT_TIMEOUT===' $CLI_OUT >/dev/null; then | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Gilles Peskine
						Gilles Peskine