#422 [backend] more robust run_tests.sh
Merged 5 years ago by praiskup. Opened 5 years ago by praiskup.
Unknown source fix-be-testsuite  into  master

file modified
+14 -5
@@ -1,9 +1,18 @@

- #!/usr/bin/bash

+ #! /bin/bash

  

- REDIS_PORT=7777

+ set -x

+ set -e

  

+ REDIS_PORT=7777

  redis-server --port $REDIS_PORT &> _redis.log &

  

+ cleanup ()

+ {

+     redis-cli -p "$REDIS_PORT" shutdown

+     wait

+ }

+ trap cleanup EXIT

+ 

  COVPARAMS='--cov-report term-missing --cov ./backend --cov ./run'

  

  while [[ $# > 1 ]]
@@ -31,6 +40,6 @@

  	TESTS=$@

  fi

  

- PYTHONPATH=backend:run:$PYTHONPATH python3 -B -m pytest -s $COVPARAMS $TESTS

- 

- kill %1

+ common_path=$(readlink -f ../common)

+ export PYTHONPATH="$common_path:backend:run${PYTHONPATH+:$PYTHONPATH}$common_path"

+ python3 -m pytest -s $COVPARAMS $TESTS

(sync with frontend/dist-git)

rebased onto 64cdc9633354a5e052615fe5c1631f0c06fa0b3a

5 years ago

This is different problem (occurs before this commit), but I see

Traceback (most recent call last):
  File "/home/praiskup/rh/projects/copr/backend/tests/test_helpers.py", line 29, in test_redis_logger_exception
    raise BuilderError("foobar", return_code=1, stdout="STDOUT", stderr="STDERR")
TypeError: BuilderError does not take keyword arguments

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/logging/__init__.py", line 993, in emit
    msg = self.format(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 839, in format
    return fmt.format(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 580, in format
    if record.exc_info:
AttributeError: 'LogRecord' object has no attribute 'exc_info'
Call stack:
  File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/lib/python3.6/site-packages/pytest.py", line 74, in <module>
    raise SystemExit(pytest.main())
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 59, in main
    return config.hook.pytest_cmdline_main(config=config)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 131, in pytest_cmdline_main
    return wrap_session(config, _main)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 100, in wrap_session
    session.exitstatus = doit(config, session) or 0
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 138, in _main
    config.hook.pytest_runtestloop(session=session)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 161, in pytest_runtestloop
    item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 62, in pytest_runtest_protocol
    runtestprotocol(item, nextitem=nextitem)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 79, in runtestprotocol
    reports.append(call_and_report(item, "call", log))
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 158, in call_and_report
    call = call_runtest_hook(item, when, **kwds)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 178, in call_runtest_hook
    return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 192, in __init__
    self.result = func()
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 178, in <lambda>
    return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 109, in pytest_runtest_call
    item.runtest()
  File "/usr/lib/python3.6/site-packages/_pytest/python.py", line 1179, in runtest
    self.ihook.pytest_pyfunc_call(pyfuncitem=self)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/python.py", line 155, in pytest_pyfunc_call
    testfunction(**testargs)
  File "/home/praiskup/rh/projects/copr/backend/tests/test_helpers.py", line 31, in test_redis_logger_exception
    log.exception("error occurred: {}".format(err))
  File "/usr/lib64/python3.6/logging/__init__.py", line 1342, in exception
    self.error(msg, *args, exc_info=exc_info, **kwargs)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1336, in error
    self._log(ERROR, msg, args, **kwargs)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1443, in _log
    self.handle(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1453, in handle
    self.callHandlers(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1515, in callHandlers
    hdlr.handle(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 864, in handle
    self.emit(record)
  File "/usr/lib/python3Traceback (most recent call last):
  File "/home/praiskup/rh/projects/copr/backend/tests/test_helpers.py", line 29, in test_redis_logger_exception
    raise BuilderError("foobar", return_code=1, stdout="STDOUT", stderr="STDERR")
TypeError: BuilderError does not take keyword arguments

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/logging/__init__.py", line 993, in emit
    msg = self.format(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 839, in format
    return fmt.format(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 580, in format
    if record.exc_info:
AttributeError: 'LogRecord' object has no attribute 'exc_info'
Call stack:
  File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/lib/python3.6/site-packages/pytest.py", line 74, in <module>
    raise SystemExit(pytest.main())
  File "/usr/lib/python3.6/site-packages/_pytest/config.py", line 59, in main
    return config.hook.pytest_cmdline_main(config=config)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 131, in pytest_cmdline_main
    return wrap_session(config, _main)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 100, in wrap_session
    session.exitstatus = doit(config, session) or 0
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 138, in _main
    config.hook.pytest_runtestloop(session=session)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/main.py", line 161, in pytest_runtestloop
    item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 62, in pytest_runtest_protocol
    runtestprotocol(item, nextitem=nextitem)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 79, in runtestprotocol
    reports.append(call_and_report(item, "call", log))
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 158, in call_and_report
    call = call_runtest_hook(item, when, **kwds)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 178, in call_runtest_hook
    return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 192, in __init__
    self.result = func()
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 178, in <lambda>
    return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/runner.py", line 109, in pytest_runtest_call
    item.runtest()
  File "/usr/lib/python3.6/site-packages/_pytest/python.py", line 1179, in runtest
    self.ihook.pytest_pyfunc_call(pyfuncitem=self)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/usr/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/usr/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.6/site-packages/_pytest/python.py", line 155, in pytest_pyfunc_call
    testfunction(**testargs)
  File "/home/praiskup/rh/projects/copr/backend/tests/test_helpers.py", line 31, in test_redis_logger_exception
    log.exception("error occurred: {}".format(err))
  File "/usr/lib64/python3.6/logging/__init__.py", line 1342, in exception
    self.error(msg, *args, exc_info=exc_info, **kwargs)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1336, in error
    self._log(ERROR, msg, args, **kwargs)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1443, in _log
    self.handle(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1453, in handle
    self.callHandlers(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 1515, in callHandlers
    hdlr.handle(record)
  File "/usr/lib64/python3.6/logging/__init__.py", line 864, in handle
    self.emit(record)
  File "/usr/lib/python3.6/site-packages/_pytest/logging.py", line 177, in emit
    logging.StreamHandler.emit(self, record)
Message: 'error occurred: BuilderError does not take keyword arguments'
Arguments: ()
.6/site-packages/_pytest/logging.py", line 177, in emit
    logging.StreamHandler.emit(self, record)
Message: 'error occurred: BuilderError does not take keyword arguments'
Arguments: ()

rebased onto dd2b0ac

5 years ago

Pull-Request has been merged by praiskup

5 years ago
Metadata