test: test for watchtower and scaling

This commit is contained in:
Rohit T P
2024-05-02 12:05:05 +00:00
parent b11c92902e
commit c8a0387ca2
6 changed files with 125 additions and 4 deletions

View File

@@ -4,7 +4,7 @@
set timeout 10
# Start your main script
spawn bash ../noco.sh
spawn bash ../../noco.sh
# Respond to script prompts
expect "Enter the IP address or domain name for the NocoDB instance (default: localhost):"

View File

@@ -0,0 +1,31 @@
#!/usr/bin/expect -f
# Configure timeout for each expect command
set timeout 10
# Start your main script
spawn bash ../../noco.sh
# Respond to script prompts
expect "Enter the IP address or domain name for the NocoDB instance (default: localhost):"
send "\r"
expect "Show Advanced Options*"
send "Y\r"
expect "Choose Community or Enterprise Edition*"
send "\r"
expect "Do you want to enabled Redis for caching*"
send "Y\r"
expect "Do you want to enabled Watchtower for automatic updates*"
send "\r"
expect "How many instances of NocoDB do you want to run*"
send "2\r"
expect "Do you want to start the management menu*"
send "N\r"
expect eof

View File

@@ -0,0 +1,31 @@
#!/usr/bin/expect -f
# Configure timeout for each expect command
set timeout 10
# Start your main script
spawn bash ../../noco.sh
# Respond to script prompts
expect "Enter the IP address or domain name for the NocoDB instance (default: localhost):"
send "\r"
expect "Show Advanced Options*"
send "Y\r"
expect "Choose Community or Enterprise Edition*"
send "\r"
expect "Do you want to enabled Redis for caching*"
send "\r"
expect "Do you want to enabled Watchtower for automatic updates*"
send "Y\r"
expect "How many instances of NocoDB do you want to run*"
send "\r"
expect "Do you want to start the management menu*"
send "N\r"
expect eof

View File

@@ -7,16 +7,16 @@ WORKING_DIR="$(pwd)"
setup() {
cd "${WORKING_DIR}" || exit 1
./setup.sh
../setup.sh
}
teardown() {
cd "${WORKING_DIR}" || exit 1
./setup.sh
../setup.sh
}
@test "Check Redis is enabled when specified" {
./expects/redis.sh
../expects/install/redis.sh
cd "${NOCO_HOME}"

View File

@@ -0,0 +1,31 @@
#!/usr/bin/env bats
NOCO_HOME="${HOME}/.nocodb"
export NOCO_HOME
WORKING_DIR="$(pwd)"
setup() {
cd "${WORKING_DIR}" || exit 1
../setup.sh
}
teardown() {
cd "${WORKING_DIR}" || exit 1
../setup.sh
}
@test "Check if two instances of NoCoDB can be run" {
# Mock nproc to return 4
nproc() {
echo 4
}
../expects/install/scale.sh
cd "${NOCO_HOME}"
# Get scale from docker compose ps
scale=$(docker compose ps | grep nocodb | awk '{print $1}')
[ "$scale" -eq 2 ]
}

View File

@@ -0,0 +1,28 @@
#!/usr/bin/env bats
NOCO_HOME="${HOME}/.nocodb"
export NOCO_HOME
WORKING_DIR="$(pwd)"
setup() {
cd "${WORKING_DIR}" || exit 1
../setup.sh
}
teardown() {
cd "${WORKING_DIR}" || exit 1
../setup.sh
}
@test "Check WatchTower is enabled when specified" {
../expects/install/watchtower.sh
cd "${NOCO_HOME}"
# Check Docker Compose file to verify WatchTower configuration
grep -q 'watchtower' docker-compose.yml
# Verify WatchTower container is running
docker compose ps | grep -q 'watchtower'
}