summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaisuke Nojiri <dnojiri@chromium.org>2016-09-22 11:45:45 -0700
committerchrome-bot <chrome-bot@chromium.org>2016-10-05 17:11:25 -0700
commitaa77ae1b090e2f29b64531a39b2a632a6d979f87 (patch)
treea58ee3282d3eda8b34296743dff6ab7d25a17d09
parentc3daa95c50ad6976507c2f164f8be87bc7b75c1f (diff)
downloadvboot-aa77ae1b090e2f29b64531a39b2a632a6d979f87.tar.gz
bdb: Add test for futility bdb --create and --verify
This script will be testing futility bdb command. BUG=chromium:649554 BRANCH=none TEST=make runtests Change-Id: I3c5b9f9564b3cc67cac4eca02798b8146feeb072 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/388732 Reviewed-by: Randall Spangler <rspangler@chromium.org>
-rwxr-xr-xtests/futility/run_test_scripts.sh1
-rwxr-xr-xtests/futility/test_bdb.sh36
-rw-r--r--tests/testdata/bdbkey_digest.bin1
-rw-r--r--tests/testdata/datakey_digest.bin1
4 files changed, 39 insertions, 0 deletions
diff --git a/tests/futility/run_test_scripts.sh b/tests/futility/run_test_scripts.sh
index d55a44de..0080819a 100755
--- a/tests/futility/run_test_scripts.sh
+++ b/tests/futility/run_test_scripts.sh
@@ -40,6 +40,7 @@ export OUTDIR
# These are the scripts to run. Binaries are invoked directly by the Makefile.
TESTS="
+${SCRIPTDIR}/test_bdb.sh
${SCRIPTDIR}/test_create.sh
${SCRIPTDIR}/test_dump_fmap.sh
${SCRIPTDIR}/test_gbb_utility.sh
diff --git a/tests/futility/test_bdb.sh b/tests/futility/test_bdb.sh
new file mode 100755
index 00000000..96b04cba
--- /dev/null
+++ b/tests/futility/test_bdb.sh
@@ -0,0 +1,36 @@
+#!/bin/bash -eux
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+me=${0##*/}
+TMP="$me.tmp"
+
+# Work in scratch directory
+cd "$OUTDIR"
+BDB_FILE=bdb.bin
+
+TESTKEY_DIR=${SRCDIR}/tests/testkeys
+TESTDATA_DIR=${SRCDIR}/tests/testdata
+
+BDBKEY_PUB=${TESTKEY_DIR}/bdbkey.keyb
+BDBKEY_PRI=${TESTKEY_DIR}/bdbkey.pem
+DATAKEY_PUB=${TESTKEY_DIR}/datakey.keyb
+DATAKEY_PRI=${TESTKEY_DIR}/datakey.pem
+BDBKEY_DIGEST=${TESTDATA_DIR}/bdbkey_digest.bin
+DATAKEY_DIGEST=${TESTDATA_DIR}/datakey_digest.bin
+
+verify() {
+ local key_digest=${1:-${BDBKEY_DIGEST}}
+ ${FUTILITY} bdb --verify ${BDB_FILE} --key_digest ${key_digest}
+}
+
+# Demonstrate bdb --create can create a valid BDB
+${FUTILITY} bdb --create ${BDB_FILE} \
+ --bdbkey_pri ${BDBKEY_PRI} --bdbkey_pub ${BDBKEY_PUB} \
+ --datakey_pub ${DATAKEY_PUB} --datakey_pri ${DATAKEY_PRI}
+verify
+
+# cleanup
+rm -rf ${TMP}*
+exit 0
diff --git a/tests/testdata/bdbkey_digest.bin b/tests/testdata/bdbkey_digest.bin
new file mode 100644
index 00000000..47d4e68a
--- /dev/null
+++ b/tests/testdata/bdbkey_digest.bin
@@ -0,0 +1 @@
+ljVN"Isv}k͊b 'T \ No newline at end of file
diff --git a/tests/testdata/datakey_digest.bin b/tests/testdata/datakey_digest.bin
new file mode 100644
index 00000000..23f1322b
--- /dev/null
+++ b/tests/testdata/datakey_digest.bin
@@ -0,0 +1 @@
+w@˳cج&QiV \ No newline at end of file