tests: lib.ListUsers tests done
Even more coverage is on it's way. Have still to figure out in which manner i'm going to test the things i want to. It's actually not as easy as i expected...
parent
c79edbfc84
commit
b4d52b5376
@ -0,0 +1,45 @@
|
|||||||
|
import unittest
|
||||||
|
import test.testcfg as testcfg
|
||||||
|
import sys
|
||||||
|
import os
|
||||||
|
from lib.ListUsers import ListUsers
|
||||||
|
sys.path.append('..')
|
||||||
|
|
||||||
|
f = open(os.devnull, 'w')
|
||||||
|
sys.stdout = f
|
||||||
|
|
||||||
|
|
||||||
|
class TestListUsers(unittest.TestCase):
|
||||||
|
def setUp(self) -> None:
|
||||||
|
try:
|
||||||
|
self.list = ListUsers(testcfg.test_db, unapproved=False, approved=False)
|
||||||
|
except IOError as fs_err:
|
||||||
|
self.fail(fs_err)
|
||||||
|
|
||||||
|
def test_output_as_list(self):
|
||||||
|
# count newlines in string, everything under 3 is wrong, and above 20 too.
|
||||||
|
out = self.list.output_as_list().splitlines()
|
||||||
|
self.assertGreater(len(out), testcfg.ListUsers_output_newlines,
|
||||||
|
"Newlines in OUTPUT doesn't exceed minimum of at least "
|
||||||
|
f"{testcfg.ListUsers_output_newlines} "
|
||||||
|
"lines!")
|
||||||
|
print(out)
|
||||||
|
|
||||||
|
def test_pretty_print(self):
|
||||||
|
# wont going to compare the stdout sorry very much
|
||||||
|
return
|
||||||
|
|
||||||
|
def test_get_fetch(self):
|
||||||
|
fetch = self.list.get_fetch()
|
||||||
|
self.assertIsInstance(fetch, list)
|
||||||
|
self.assertGreater(len(fetch),
|
||||||
|
testcfg.ListUsers_fetch_size_min, "fetch is NOT greater than"
|
||||||
|
"the configured fetch minimum")
|
||||||
|
try:
|
||||||
|
print(fetch[0])
|
||||||
|
except (KeyError, IOError) as suddenly_not_there:
|
||||||
|
self.fail(f"Expected fetch to have at least one argument! {suddenly_not_there}")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
Loading…
Reference in New Issue