no more start_bumper

remove start_bumper
- built into __main__ + __init__
- add tests
This commit is contained in:
Brian Martin 2019-06-08 16:45:52 -04:00
parent 7637dfca6e
commit 1f0e417760
8 changed files with 316 additions and 133 deletions

View file

@ -1,4 +1,5 @@
import mock
from mock import patch
import pytest
from tinydb.storages import MemoryStorage
from tinydb import TinyDB, Query
@ -6,6 +7,9 @@ import bumper
import os
import datetime, time
import platform
import json
import asyncio
from testfixtures import LogCapture
def test_get_milli_time():
@ -19,9 +23,61 @@ def test_get_milli_time():
)
def test_strtobool():
assert bumper.strtobool("t") == True
assert bumper.strtobool("f") == False
assert bumper.strtobool(0) == False
async def test_start_stop():
with LogCapture() as l:
if os.path.exists("tests/tmp.db"):
os.remove("tests/tmp.db") # Remove existing db
b = bumper
b.db = "tests/tmp.db" # Set db location for testing
b.conf1_listen_address = "0.0.0.0"
b.conf1_listen_port = 443
asyncio.create_task(b.start())
await asyncio.sleep(0.1)
l.check_present(("bumper", "INFO", "Starting Bumper"))
l.clear()
assert b.shutting_down == False
asyncio.create_task(b.shutdown())
await asyncio.sleep(0.1)
l.check_present(
("bumper", "INFO", "Shutting down"), ("bumper", "INFO", "Shutdown complete")
)
assert b.shutting_down == True
async def test_start_stop_debug():
with LogCapture() as l:
if os.path.exists("tests/tmp.db"):
os.remove("tests/tmp.db") # Remove existing db
b = bumper
b.db = "tests/tmp.db" # Set db location for testing
b.bumper_listen = "0.0.0.0"
b.bumper_debug = True
asyncio.create_task(b.start())
await asyncio.sleep(0.1)
asyncio.create_task(b.shutdown())
l.check_present(("bumper", "INFO", "Starting Bumper"))
l.clear()
await asyncio.sleep(0.1)
l.check_present(
("bumper", "INFO", "Shutting down"), ("bumper", "INFO", "Shutdown complete")
)
assert b.shutting_down == True
def test_db_path():
bumper.db = None
assert bumper.db_file() == os.path.join(bumper.data_dir, "bumper.db")
def test_user_db():
if os.path.exists("tests/tmp.db"):
os.remove("tests/tmp.db") # Remove existing db
bumper.db = "tests/tmp.db" # Set db location for testing
bumper.user_add("testuser") # Add testuser