aboutsummaryrefslogblamecommitdiffstats
path: root/test/edit.sh
blob: 65419b1998eac8bf3e64f4dba5306c21a4c6ec61 (plain) (tree)


















































































                                                                               
#!/bin/bash

init edit

# add configs to ck
path1=$BIN/test1.conf
path2=$BIN/test2.conf
path3=$BIN/test3.conf
path4=$BIN/test4.conf
path5=$BIN/test5.conf

add_config prog1 $path1 "" -p
add_config prog1 $path2

add_config prog2 $path3
add_config prog2 $path4

add_config prog3 $path5

# edit primary
exec $BIN/ck -c $BIN e prog1 --command ":" > __test_file &
wait $!

TEST_STR=$(cat __test_file)
EXPECTED_STR="Running: : $(realpath $path1)"

echo "Expected: $EXPECTED_STR" >&${V}
echo "  Actual: $TEST_STR" >&${V}

if [[ "$TEST_STR" != "$EXPECTED_STR" ]]; then
    err "Worng edit."
    exit 1;
fi

# edit specific
exec $BIN/ck -c $BIN e prog1 test2.conf --command ":" > __test_file &
wait $!

echo "Expected: $EXPECTED_STR" >&${V}
echo "  Actual: $TEST_STR" >&${V}

TEST_STR=$(cat __test_file)
EXPECTED_STR="Running: : $(realpath $path2)"

if [[ "$TEST_STR" != "$EXPECTED_STR" ]]; then
    err "Worng edit."
    exit 1;
fi

# Ambiguous config
exec $BIN/ck -c $BIN e prog2 --command ":" > __test_file &
wait $!

echo "Expected: $EXPECTED_STR" >&${V}
echo "  Actual: $TEST_STR" >&${V}

TEST_STR=$(head -1 __test_file)
EXPECTED_STR="Ambiguous config. Please type the config name after the program."

if [[ "$TEST_STR" != "$EXPECTED_STR" ]]; then
    err "Worng edit."
    exit 1;
fi

# solo program
exec $BIN/ck -c $BIN e prog3 --command ":" > __test_file &
wait $!

echo "Expected: $EXPECTED_STR" >&${V}
echo "  Actual: $TEST_STR" >&${V}

TEST_STR=$(cat __test_file)
EXPECTED_STR="Running: : $(realpath $path5)"

if [[ "$TEST_STR" != "$EXPECTED_STR" ]]; then
    err "Worng edit."
    exit 1;
fi

rm __test_file

clear_tests
echo -e $PASS