40 lines
1 KiB
Python
40 lines
1 KiB
Python
|
# SPDX-FileCopyrightText: 2023 Aravinth Manivannan <realaravinth@batsense.net>
|
||
|
#
|
||
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||
|
|
||
|
import os
|
||
|
import requests
|
||
|
|
||
|
|
||
|
def test_mcaptcha_nginx_is_listening(host):
|
||
|
socket = host.socket(f"tcp://127.0.0.1:80")
|
||
|
assert socket.is_listening
|
||
|
|
||
|
|
||
|
def test_mcaptcha_config_exists(host):
|
||
|
config = host.file("/etc/mcaptcha/config.toml")
|
||
|
assert config.exists
|
||
|
assert config.is_file
|
||
|
|
||
|
|
||
|
def test_mcaptcha_health(host):
|
||
|
url = f"http://{host.interface.default().addresses[0]}/api/v1/meta/health"
|
||
|
resp = requests.get(url, headers={"Host": "mcaptcha.local"})
|
||
|
assert resp.status_code == 200
|
||
|
data = resp.json()
|
||
|
if "redis" in data:
|
||
|
assert data["redis"] is True
|
||
|
assert data["db"] is True
|
||
|
|
||
|
|
||
|
def test_nginx_service_running_and_enabled(host):
|
||
|
service = host.service("nginx")
|
||
|
assert service.is_running
|
||
|
assert service.is_enabled
|
||
|
|
||
|
|
||
|
def test_mcaptcha_service_running_and_enabled(host):
|
||
|
service = host.service("mcaptcha")
|
||
|
assert service.is_running
|
||
|
assert service.is_enabled
|