conftest.py 843 B

1234567891011121314151617181920212223242526272829303132
  1. import glob
  2. import io
  3. import logging
  4. import pytest
  5. from baker import load, logger, log_handler
  6. # Disable default handler
  7. logger.removeHandler(log_handler)
  8. @pytest.yield_fixture(scope='function')
  9. def log_handler(request):
  10. buff = io.StringIO()
  11. handler = logging.StreamHandler(buff)
  12. logger.addHandler(handler)
  13. yield buff
  14. logger.removeHandler(handler)
  15. def pytest_generate_tests(metafunc):
  16. if 'cfg' in metafunc.fixturenames:
  17. configs = []
  18. logs = []
  19. for name in glob.glob('tests/*yaml'):
  20. print(name)
  21. configs.append(load(name))
  22. log_file = name.replace('.yaml', '.log')
  23. logs.append(open(log_file).read())
  24. metafunc.parametrize("cfg,nominal_log", zip(configs, logs))
  25. # metafunc.parametrize("log", logs)