Skip to content

Commit

Permalink
Add logging_tests command w/o error collection
Browse files Browse the repository at this point in the history
  • Loading branch information
lsankar4033 committed Aug 9, 2020
1 parent 1623489 commit fc377b5
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 28 deletions.
22 changes: 22 additions & 0 deletions lib/logging_tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import os

from lib.runner import run_module, file_to_module

LOGGING_TESTS_DIR = 'logging_tests'

def all_logging_test_files():
tests = []
for root, dirs, files in os.walk(LOGGING_TESTS_DIR):
tests.extend([f'{root}/{f}' for f in files if f.endswith('.py')])

return tests


def run_logging_tests(client):
# print client, then call run_module for each test. collect all failures and print them at the end
print(client)
for file in all_logging_test_files():
# TODO: collect failure
run_module(file_to_module(file), {})

# TODO: print out all failures + logs
27 changes: 14 additions & 13 deletions lib/runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import subprocess

import trio
from colored import fg

from lib.console import ConsoleWriter
from lib.instance_configs import DEFAULT_ARGS
Expand All @@ -23,23 +24,23 @@ def all_test_files():
def file_to_module(script):
return script.replace('/', '.')[0:-3]

def return_code_to_status(return_code):
if return_code == 0:
return f"{fg('green')}\u2713{fg('white')}"

# TODO: add args back in
def run_module(module, args, cw):
print(f'Running module: {module} with args {args}')
#module = importlib.import_module(module)
else:
return f"{fg('red')}\u2717{fg('white')}"

#if not hasattr(module, 'run'):
#cw.fail(f'module {module} does not have a run method')
#return
def run_module(module_str, args):
module = importlib.import_module(module_str)

#return_code = trio.run(module.run, args)
#if return_code == 0:
#cw.success('SUCCESS')
if not hasattr(module, 'run'):
cw.fail(f'module {module} does not have a run method')
return

#else:
#cw.fail('FAILED')
return_code = trio.run(module.run, args)

print(f'\t{module_str} {return_code_to_status(return_code)}')

def test_matches_filter(test, test_filter):
return test_filter is None or test == test_filter
Expand All @@ -49,4 +50,4 @@ def run_all_tests(cw=ConsoleWriter(None, None), test_filter=None):
if test_matches_filter(test_file, test_filter):
cw = cw._replace(test=file_to_module(test_file))

run_module(file_to_module(test_file), DEFAULT_ARGS, cw)
run_module(file_to_module(test_file), DEFAULT_ARGS)
8 changes: 1 addition & 7 deletions logging_tests/test_fail.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,2 @@
import trio
from pyrum import SubprocessConn, Rumor

from .utils import *

@with_rumor
async def run(rumor, args):
async def run(args):
return 1
8 changes: 1 addition & 7 deletions logging_tests/test_success.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,2 @@
import trio
from pyrum import SubprocessConn, Rumor

from .utils import with_rumor

@with_rumor
async def run(rumor, args):
async def run(args):
return 0
3 changes: 2 additions & 1 deletion steth.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from lib.console import ConsoleWriter
from lib.fixtures import extract_fixtures, setup_fixture, teardown_fixture
from lib.runner import run_all_tests
from lib.logging_tests import run_logging_tests


def run_start_fixture(args):
Expand Down Expand Up @@ -63,7 +64,7 @@ def run_test(args):

def run_logging_test(args):
for client in SUPPORTED_CLIENTS:
print(f'Testing client {client}')
run_logging_tests(client)


if __name__ == '__main__':
Expand Down

0 comments on commit fc377b5

Please sign in to comment.