Previously all unit-tests that depend on 2D capture were marked with @pytest.mark.physical_camera because at some point in the past 2D captures did not work with file cameras. Such tests are not run in the CI because the CI does not have access to real cameras. The intended procedure was that developers would run pytest with -m physical_camera before making a PR. However this is a vulnerable system because:
Developers may forget or not know that they should do this.
Even if they do this, they are unlikely to do it on all supported platforms. So it was possible to merge changes to 2D capture API that for example does not work on Python 3.6.
In the latest SDK release it is not a problem to do 2D captures with file cameras. Thus we can close this pitfall by making all the 2D capture API tests use a file camera instead, so that they are run in the CI on all supported platforms.
Previously all unit-tests that depend on 2D capture were marked with
@pytest.mark.physical_camera
because at some point in the past 2D captures did not work with file cameras. Such tests are not run in the CI because the CI does not have access to real cameras. The intended procedure was that developers would run pytest with-m physical_camera
before making a PR. However this is a vulnerable system because:In the latest SDK release it is not a problem to do 2D captures with file cameras. Thus we can close this pitfall by making all the 2D capture API tests use a file camera instead, so that they are run in the CI on all supported platforms.