#!/bin/bash RESET="\033[0m" BWHITE="\033[1;37m" BLUE="\033[0;34m" GREEN="\033[0;32m" RED="\033[0;31m" YELLOW="\033[1;33m" CYAN="\033[0;36m" ./auth_service &> auth_service.log & sleep 1 success=0 errors=0 # test /api/token printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/token${RESET} " curl --silent -X POST -d '{"username":"tola","password":"2808"}' localhost:8222/api/token &> api_token_test.log sleep 0.1 res=$(cat api_token_test.log) if [[ "$res" == *"token"* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test /api/token/verify printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/token/verify${RESET} " curl --silent -X POST -d '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IDEsInVzZXJuYW1lIjogInRvbGEiLCJlbWFpbCI6ICJtYWlsQGV4YW1wbGUuY29tIiwiZ3JvdXAiOiAicm9vdCIsImlzX3N1cGVydXNlciI6IHRydWV9.QGUnCWPmp5hWAtGFTGDMw2SugZqLsYfMboeFU4UQLXQ"}' localhost:8222/api/token/verify &> api_token_verify_test.log sleep 0.1 res=$(cat api_token_verify_test.log) if [[ "$res" == *'{"valid":"true"}'* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test /api/users printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/users${RESET} " curl --silent -X POST -d '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IDEsInVzZXJuYW1lIjogInRvbGEiLCJlbWFpbCI6ICJtYWlsQGV4YW1wbGUuY29tIiwiZ3JvdXAiOiAicm9vdCIsImlzX3N1cGVydXNlciI6IHRydWV9.QGUnCWPmp5hWAtGFTGDMw2SugZqLsYfMboeFU4UQLXQ"}' localhost:8222/api/users &> api_users_test.log sleep 0.1 res=$(cat api_users_test.log) if [[ "$res" == *'username'* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test /api/users/user printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/users/user${RESET} " curl --silent -X POST -d '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IDEsInVzZXJuYW1lIjogInRvbGEiLCJlbWFpbCI6ICJtYWlsQGV4YW1wbGUuY29tIiwiZ3JvdXAiOiAicm9vdCIsImlzX3N1cGVydXNlciI6IHRydWV9.QGUnCWPmp5hWAtGFTGDMw2SugZqLsYfMboeFU4UQLXQ"}' localhost:8222/api/users/user &> api_users_user_test.log sleep 0.1 res=$(cat api_users_user_test.log) if [[ "$res" == *'username'* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test /api/register printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/register${RESET} " curl --silent -X POST -d '{ "username":"asdf", "email":"asdf@asdf.com", "password":"asdf", "group":"users", "is_superuser":false }' localhost:8222/api/register &> api_register_test.log sleep 0.1 res=$(cat api_register_test.log) if [[ "$res" == *'username'* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test /api/users/add printf "==> ${BLUE}Testing${CYAN} POST${BWHITE} /api/users/add${RESET} " curl --silent -X POST -d '{ "username":"asdff", "email":"asdf@asdff.com", "password":"asdf", "group":"users", "is_superuser":false, "token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IDEsInVzZXJuYW1lIjogInRvbGEiLCJlbWFpbCI6ICJtYWlsQGV4YW1wbGUuY29tIiwiZ3JvdXAiOiAicm9vdCIsImlzX3N1cGVydXNlciI6IHRydWV9.QGUnCWPmp5hWAtGFTGDMw2SugZqLsYfMboeFU4UQLXQ" }' localhost:8222/api/users/add &> api_users_add_test.log sleep 0.1 res=$(cat api_users_add_test.log) if [[ "$res" == *'username'* ]]; then printf "[$GREEN OK $RESET]\n" success=$(($success+1)) else printf "[$RED ERR $RESET]\n==> ${BLUE}Response: $RESET$(echo $res)\n" errors=$(($errors+1)) fi # test killall auth_service printf "==> ${GREEN}Success: ${RESET}${success}\n==>${RED} Errors: ${RESET}${errors}\n" if [ ! $errors -eq 0 ]; then exit 1 fi