Detailed Results

All Test Results

Vip Tests

25 tests — 18 passed, 1 failed, 6 skipped

PASSConnect server is reachablePrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_components.py::test_product_server_is_reachable[Connect]0.08s
Test procedure
  • Given <product> is configured in vip.toml
  • When I request the <product> health endpoint
  • Then the server responds with a successful status code
PASSWorkbench server is reachablePrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_components.py::test_product_server_is_reachable[Workbench]0.12s
Test procedure
  • Given <product> is configured in vip.toml
  • When I request the <product> health endpoint
  • Then the server responds with a successful status code
PASSPackage Manager server is reachablePrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_components.py::test_product_server_is_reachable[Package Manager]0.07s
Test procedure
  • Given <product> is configured in vip.toml
  • When I request the <product> health endpoint
  • Then the server responds with a successful status code
PASSWorkbench server is reachable but not configuredPrerequisites
As a VIP developer
src/vip_tests/prerequisites/test_expected_failure.py::test_workbench_expected_failure0.00s
Test procedure
  • Given Workbench is expected to be configured
  • When I check the Workbench configuration
  • Then Workbench should be reachable
PASSConnect version matches configurationPrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_versions.py::test_connect_version0.14s
Test procedure
  • Given Connect is configured in vip.toml with a version expectation
  • When I fetch the Connect server version
  • Then the Connect version matches the configured value
SKIPWorkbench version matches configurationPrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_versions.py::test_workbench_version0.01s
Test procedure
  • Given Workbench is configured in vip.toml with a version expectation
  • When I fetch the Workbench server version
  • Then the Workbench version matches the configured value
PASSPackage Manager version matches configurationPrerequisites
As a Posit Team administrator
src/vip_tests/prerequisites/test_versions.py::test_package_manager_version0.07s
Test procedure
  • Given Package Manager is configured in vip.toml with a version expectation
  • When I fetch the Package Manager server version
  • Then the Package Manager version matches the configured value
PASSUser can log in via the web UIConnect
As a Posit Team administrator
src/vip_tests/connect/test_auth.py::test_connect_login_ui8.14s
Test procedure
  • Given Connect is accessible at the configured URL
  • When a user navigates to the Connect login page
  • And enters valid credentials
  • Then the user is successfully authenticated
  • And the Connect dashboard is displayed
PASSAPI key authentication worksConnect
As a Posit Team administrator
src/vip_tests/connect/test_auth.py::test_connect_login_api0.26s
Test procedure
  • Given Connect is accessible at the configured URL
  • And a valid API key is configured
  • When I request the current user via the API
  • Then the API returns user information
PASSAdmin user exists and has admin privilegesConnect
As a Posit Team administrator
src/vip_tests/connect/test_users.py::test_admin_user0.26s
Test procedure
  • Given Connect is accessible at the configured URL
  • When I retrieve the current user profile
  • Then the user has admin privileges
FAILUsers can be listedConnect
As a Posit Team administrator
src/vip_tests/connect/test_users.py::test_list_users0.26s
Test procedure
  • Given Connect is accessible at the configured URL
  • When I list all users
  • Then the user list is not empty
  • And the test user exists in the user list
test_list_users: Test user 'testuser' not found in user list: ['__bootstrap_admin__'] assert 'testuser' in ['__bootstrap_admin__']
Full error traceback
fixturefunc = <function check_test_user_in_list at 0x7f8aaac06520>
request = <FixtureRequest for <Function test_list_users>>
kwargs = {'test_username': 'testuser', 'user_list': [{'active_time': '2026-04-21T01:40:06Z', 'confirmed': True, 'created_time': '2026-04-21T01:38:46Z', 'email': '', ...}]}

    def call_fixture_func(
        fixturefunc: _FixtureFunc[FixtureValue], request: FixtureRequest, kwargs
    ) -> FixtureValue:
        if inspect.isgeneratorfunction(fixturefunc):
            fixturefunc = cast(Callable[..., Generator[FixtureValue]], fixturefunc)
            generator = fixturefunc(**kwargs)
            try:
                fixture_result = next(generator)
            except StopIteration:
                raise ValueError(f"{request.fixturename} did not yield a value") from None
            finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
            request.addfinalizer(finalizer)
        else:
            fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
>           fixture_result = fixturefunc(**kwargs)
                             ^^^^^^^^^^^^^^^^^^^^^

.venv/lib/python3.13/site-packages/_pytest/fixtures.py:915: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

user_list = [{'active_time': '2026-04-21T01:40:06Z', 'confirmed': True, 'created_time': '2026-04-21T01:38:46Z', 'email': '', ...}]
test_username = 'testuser'

    @then("the test user exists in the user list")
    def check_test_user_in_list(user_list, test_username):
        usernames = [u.get("username") for u in user_list]
>       assert test_username in usernames, (
            f"Test user {test_username!r} not found in user list: {usernames}"
        )
E       AssertionError: Test user 'testuser' not found in user list: ['__bootstrap_admin__']
E       assert 'testuser' in ['__bootstrap_admin__']

src/vip_tests/connect/test_users.py:53: AssertionError
PASSGroups can be listedConnect
As a Posit Team administrator
src/vip_tests/connect/test_users.py::test_list_groups0.26s
Test procedure
  • Given Connect is accessible at the configured URL
  • When I list all groups
  • Then the response is successful
SKIPExpected R versions are available on ConnectConnect
As a Posit Team administrator
src/vip_tests/connect/test_runtime_versions.py::test_r_versions0.13s
Test procedure
  • Given Connect is accessible at the configured URL
  • And expected R versions are specified in vip.toml
  • When I query Connect for available R versions
  • Then all expected R versions are present
SKIPExpected Python versions are available on ConnectConnect
As a Posit Team administrator
src/vip_tests/connect/test_runtime_versions.py::test_python_versions0.13s
Test procedure
  • Given Connect is accessible at the configured URL
  • And expected Python versions are specified in vip.toml
  • When I query Connect for available Python versions
  • Then all expected Python versions are present
PASSExpected Quarto versions are availableConnect
As a Posit Team administrator
src/vip_tests/connect/test_runtime_versions.py::test_quarto_versions0.26s
Test procedure
  • Given Connect is accessible at the configured URL
  • When I query Connect for available Quarto versions
  • Then at least one Quarto version is available
PASSConnect system checks can be run and the report downloadedConnect
As a Posit Team administrator
src/vip_tests/connect/test_system_checks.py::test_connect_system_checks25.57s
Test procedure
  • Given Connect is accessible at the configured URL
  • And a valid API key is configured
  • When I trigger a new system check run via the Connect API
  • Then the system check report is returned
  • And I can download the system check report artifact
PASSUnauthenticated API request returns 401Security
As a Posit Team administrator
src/vip_tests/security/test_error_handling.py::test_unauthenticated_api_request_returns_4010.01s
Test procedure
  • Given Connect is configured in vip.toml
  • When I make an unauthenticated API request to Connect
  • Then the response status is 401
PASSInvalid API key returns 401Security
As a Posit Team administrator
src/vip_tests/security/test_error_handling.py::test_invalid_api_key_returns_4012.95s
Test procedure
  • Given Connect is configured in vip.toml
  • When I make an API request to Connect with an invalid key
  • Then the response status is 401
PASSNon-existent endpoint returns 404Security
As a Posit Team administrator
src/vip_tests/security/test_error_handling.py::test_nonexistent_endpoint_returns_4040.01s
Test procedure
  • Given Connect is configured in vip.toml
  • When I request a non-existent endpoint on Connect
  • Then the response status is 404
PASSUser can log in to Workbench via the web UIWorkbench
As a Posit Team administrator
src/vip_tests/workbench/test_auth.py::test_workbench_login[chromium]0.62s
Test procedure
  • Given Workbench is accessible at the configured URL
  • When a user navigates to the Workbench login page and enters valid credentials
  • Then the Workbench homepage is displayed
  • And the current user is shown in the header
PASSCRAN mirror is accessiblePackage Manager
As a Posit Team administrator
src/vip_tests/package_manager/test_repos.py::test_cran_mirror0.59s
Test procedure
  • Given Package Manager is running
  • When I query the CRAN repository for the "Matrix" package
  • Then the package is found in the repository
SKIPPyPI mirror is accessiblePackage Manager
As a Posit Team administrator
src/vip_tests/package_manager/test_repos.py::test_pypi_mirror0.06s
Test procedure
  • Given Package Manager is running
  • When I query the PyPI repository for the "requests" package
  • Then the package is found in the repository
SKIPBioconductor mirror is accessiblePackage Manager
As a Posit Team administrator
src/vip_tests/package_manager/test_repos.py::test_bioconductor_mirror0.06s
Test procedure
  • Given Package Manager is running
  • When I query the Bioconductor repository for the "BiocGenerics" package
  • Then the package is found in the repository
SKIPOpenVSX mirror is accessiblePackage Manager
As a Posit Team administrator
src/vip_tests/package_manager/test_repos.py::test_openvsx_mirror0.06s
Test procedure
  • Given Package Manager is running
  • When I query the OpenVSX repository for the "golang.Go" extension
  • Then the package is found in the repository
PASSAt least one repository is configuredPackage Manager
As a Posit Team administrator
src/vip_tests/package_manager/test_repos.py::test_repo_exists0.08s
Test procedure
  • Given Package Manager is running
  • When I list all repositories
  • Then at least one repository exists