mirror of
https://github.com/odoo/runbot.git
synced 2025-03-19 01:15:48 +07:00
![]() The `statuses` field of a staging is always "live" because it's a computed non-stored field. This is an issue when a staging finishes in whatever state, then someone gets new statuses sent on one of the head commits, either by rebuilding (part of) the staging or by just using the same commit for one of their branches. This makes the reporting of the main dashboard confusing, as one might look at a failed staging and see all the required statuses successful. It also makes post-mortem analysis more complicated as the logs have to be trawled for what the statuses used to be (and they don't always tell). Solve this by storing a snapshot of the statuses the first time a staging moves away from `pending`, whether it's to success or failure. Fixes #667 |
||
---|---|---|
.. | ||
conftest.py | ||
README.rst | ||
test_basic.py | ||
test_by_branch.py | ||
test_disabled_branch.py | ||
test_multirepo.py | ||
test_oddities.py | ||
test_provisioning.py | ||
test_status_overrides.py |
Execute this test suite using pytest. The default mode is to run tests locally using a mock github.com. See the docstring of remote.py for instructions to run against github "actual" (including remote-specific options) and the end of this file for a sample. Shared properties running tests, regardless of the github implementation: * test should be run from the root of the runbot repository providing the name of this module aka ``pytest runbot_merge`` or ``python -mpytest runbot_merge`` * a database name to use must be provided using ``--db``, the database should not exist beforehand * the addons path must be specified using ``--addons-path``, both "runbot" and the standard addons (odoo/addons) must be provided explicitly See pytest's documentation for other options, I would recommend ``-rXs``, ``-v`` and ``--showlocals``. When running "remote" tests as they take a very long time (hours) ``-x`` (aka ``--maxfail=1``) and ``--ff`` (run previously failed first) is also recommended unless e.g. you run the tests overnight. ``pytest.ini`` sample --------------------- .. code:: ini [github] owner = test-org token = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa [role_reviewer] name = Dick Bong user = loginb token = bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb [role_self_reviewer] name = Fanny Chmelar user = loginc token = cccccccccccccccccccccccccccccccccccccccc [role_other] name = Harry Baals user = logind token = dddddddddddddddddddddddddddddddddddddddd