MCPcopy Create free account
hub / github.com/CodSpeedHQ/codspeed / test_run_wrapper_script

Function test_run_wrapper_script

src/executor/valgrind/measure.rs:256–306  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

254
255 #[test]
256 fn test_run_wrapper_script() {
257 temp_env::with_var("TEST_ENV_VAR", "test_value".into(), || {
258 assert_eq!(safe_run("echo $TEST_ENV_VAR"), (0, 0));
259 });
260
261 assert_eq!(safe_run("ls"), (0, 0));
262 assert_eq!(safe_run("exit 0"), (0, 0));
263 assert_eq!(safe_run("exit 1"), (0, 1));
264 assert_eq!(safe_run("exit 255"), (0, 255));
265
266 assert_eq!(safe_run("ls; exit 1"), (0, 1));
267 assert_eq!(safe_run("exit 1; ls"), (0, 1));
268
269 assert_eq!(safe_run("test 1 = 1 && exit 42"), (0, 42));
270 assert_eq!(safe_run("test 1 = 2 && exit 42"), (0, 1));
271 assert_eq!(safe_run("test 1 = 1 || exit 42"), (0, 0));
272 assert_eq!(safe_run("test 1 = 2 || exit 42"), (0, 42));
273
274 const MULTILINE_ECHO_SCRIPT: &str = "echo \"Working\"
275echo \"with\"
276echo \"multiple lines\"";
277
278 const MULTILINE_ECHO_WITH_SEMICOLONS: &str = "echo \"Working\";
279echo \"with\";
280echo \"multiple lines\";";
281
282 const ENV_VAR_VALIDATION_SCRIPT: &str = "export MY_ENV_VAR=\"Hello\"
283output=$(echo \"$MY_ENV_VAR\")
284if [ \"$output\" != \"Hello\" ]; then
285 echo \"Assertion failed: Expected 'Hello' but got '$output'\"
286 exit 1
287fi";
288
289 const ENV_VAR_VALIDATION_FAIL_SCRIPT: &str = "MY_ENV_VAR=\"Wrong\"
290output=$(echo \"$MY_ENV_VAR\")
291if [ \"$output\" != \"Hello\" ]; then
292 echo \"Assertion failed: Expected 'Hello' but got '$output'\"
293 exit 1
294fi";
295
296 const DIRECTORY_CHECK_SCRIPT: &str = "cd /tmp
297# Check that the directory is actually changed
298if [ $(basename $(pwd)) != \"tmp\" ]; then
299 exit 1
300fi";
301 assert_eq!(safe_run(MULTILINE_ECHO_SCRIPT), (0, 0));
302 assert_eq!(safe_run(MULTILINE_ECHO_WITH_SEMICOLONS), (0, 0));
303 assert_eq!(safe_run(DIRECTORY_CHECK_SCRIPT), (0, 0));
304 assert_eq!(safe_run(ENV_VAR_VALIDATION_SCRIPT), (0, 0));
305 assert_eq!(safe_run(ENV_VAR_VALIDATION_FAIL_SCRIPT), (0, 1));
306 }
307}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected