ocarina/tests/db_entry

66 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
# Copyright 2014 (c) Anna Schumaker
. $(dirname $0)/_functions
function test_entry
{
test_equal "./src/db_entry.run $1 $2" "$3"
}
function test_print
{
test_entry $1 $2 "Value: $1 Key: $2 Valid: 0"
}
function test_primary_key
{
test_entry "-p $1" $2 "Primary key: $2"
}
function test_write
{
rm $DATA_DIR/db_entry.txt 2>/dev/null || true
./src/db_entry.run -w $1 $2
test_equal "tail -1 $DATA_DIR/db_entry.txt" "$1 $2"
}
function test_read
{
rm $DATA_DIR/db_entry.txt 2>/dev/null || true
echo 0 > $DATA_DIR/db_entry.txt
echo $1 $2 >> $DATA_DIR/db_entry.txt
test_entry "-r $1" $2 "Value: $1 Key: $2 Valid: 0"
}
new_test "Database Entry Print Test"
test_print 1 1
test_print 1 2
test_print 2 1
test_print 2 2
echo
new_test "Database Entry Primary Key Test"
test_primary_key 1 1
test_primary_key 1 2
test_primary_key 2 1
test_primary_key 2 2
echo
new_test "Database Entry Write Test"
test_write 1 1
test_write 1 2
test_write 2 1
test_write 2 2
echo
new_test "Database Entry Read Test"
test_read 1 1
test_read 1 2
test_read 2 1
test_read 2 2