aboutsummaryrefslogblamecommitdiffstats
path: root/tests/add
blob: e65cc773c99698d4868aa1a727001b4ad668c24b (plain) (tree)
















































































                                                                                                          
#!/bin/bash
BIN=@CMAKE_BINARY_DIR@

# initialize
TEST_LOCATION=@PROJECT_TESTING_GROUNDS@
mkdir -p $TEST_LOCATION/vc
mkdir $TEST_LOCATION/sec

exec $BIN/ck conf $BIN init $TEST_LOCATION/vc $TEST_LOCATION/sec &
wait $!

# setup test configs
echo "Test 1" > $BIN/test1.conf
echo "Test 2" > $BIN/test2.conf
echo "Test 3" > $BIN/test3.conf

# add configs to ck
exec $BIN/ck conf $BIN add prog1 $BIN/test1.conf -p &
wait $!

# check db
if [ $(sqlite3 $BIN/ckdb "select name from program where name = 'prog1'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"prog1 is not in the db"
    exit 1
fi

if [ $(sqlite3 $BIN/ckdb "select path from config where path = '"$BIN"/test1.conf'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"test1.conf is not in the db"
    exit 1
fi

# check files
if [ ! -f $TEST_LOCATION/vc/prog1_test1.conf ]; then
    echo -e $ERROR"test1.conf failed (add -p)"
    exit 1
fi

# repeat
exec $BIN/ck conf $BIN add prog2 $BIN/test2.conf -s &
wait $!

if [ ! -f $TEST_LOCATION/sec/prog2_test2.conf ]; then
    echo -e $ERROR"test2.conf failed (add -s)"
    exit 1
fi

if [ $(sqlite3 $BIN/ckdb "select name from program where name = 'prog2'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"prog2 is not in the db"
    exit 1
fi

if [ $(sqlite3 $BIN/ckdb "select path from config where path = '"$BIN"/test2.conf'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"test2.conf is not in the db"
    exit 1
fi

exec $BIN/ck conf $BIN add prog3 $BIN/test3.conf -p -s &
wait $!

if [ ! -f $TEST_LOCATION/sec/prog3_test3.conf ]; then
    echo -e $ERROR"test3.conf failed (add -p -s)"
    exit 1
fi

if [ $(sqlite3 $BIN/ckdb "select name from program where name = 'prog3'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"prog3 is not in the db"
    exit 1
fi

if [ $(sqlite3 $BIN/ckdb "select path from config where path = '"$BIN"/test3.conf'" | wc -l) -ne 1 ]; then
    echo -e $ERROR"test3.conf is not in the db"
    exit 1
fi

rm $BIN/ckrc
rm $BIN/ckdb
rm $BIN/test1.conf
rm $BIN/test2.conf
rm $BIN/test3.conf
rm -rf $TEST_LOCATION
echo -e $PASS