diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/db.py | 7 | ||||
-rwxr-xr-x | src/quickstart_test.sh | 24 |
2 files changed, 28 insertions, 3 deletions
@@ -32,8 +32,13 @@ class DictDB(): ' COUCHDB_USER and COUCHDB_PASSWORD must be set.') sys.exit(-1) + if 'COUCHDB_PORT' in os.environ: + couchdb_port = os.environ['COUCHDB_PORT'] + else: + couchdb_port = 5984 + self.server = couch.client.Server( - f"http://{self.username}:{self.password}@{self.hostname}:5984/") + f"http://{self.username}:{self.password}@{self.hostname}:{couchdb_port}/") try: self.couchdb = self.server.database(self.database) diff --git a/src/quickstart_test.sh b/src/quickstart_test.sh index d9d2c0b..e81024f 100755 --- a/src/quickstart_test.sh +++ b/src/quickstart_test.sh @@ -8,10 +8,13 @@ export JWT_PUBKEY_PATH="`pwd`/test/unittest_cert/public.pem" export JWT_TOKEN="eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiJ9.eyJ0eXBlIjoiYWNjZXNzIiwiZG9tYWlucyI6WyJzdW5ldC5zZSJdfQ._emWyVw-6qer5u65SitS8bZJas7l8bw4almnI1TB7DBnzNsch8ctU4btlgBpfJ2jbrvXZTIl8jXIcykO4crUrQ" virtualenv=no -while getopts v flag +couchdb=no + +while getopts "vc" flag do case "$flag" in - v) virtualenv=yes + v) virtualenv=yes;; + c) couchdb=yes;; esac done @@ -29,6 +32,19 @@ if [ $virtualenv == "yes" ]; then pip3 install -r ../requirements.txt fi +if [ $couchdb == "yes" ]; then + docker run -it -p 6123:5984 --rm -d --name unittest_couchdb -e COUCHDB_USER=$COUCHDB_USER -e COUCHDB_PASSWORD=$COUCHDB_PASSWORD couchdb + + docker inspect unittest_couchdb > /dev/null + + if (( $? != 0 )); then + echo "Failed to start CouchDB container." + exit + fi + + export COUCHDB_PORT=6123 +fi + mkdir test/unittest_cert cat <<EOF > test/unittest_cert/public.pem @@ -41,3 +57,7 @@ EOF pytest --capture=tee-sys rm -r test/unittest_cert + +if [ $couchdb == "yes" ]; then + docker kill unittest_couchdb +fi |