Skip to content

test(workbench): test_workbench_login skips under SSO, so no lane verifies a Workbench login #602

Description

@ian-flores

No CI lane verifies a Workbench login under SSO, and the mock-IdP lane cannot, because the test it selects skips by design whenever the provider is not password.

src/vip_tests/workbench/test_auth.py:90, inside the @given("Workbench is accessible at the configured URL") step, does:

if auth_provider != "password":
    pytest.skip(f"test_auth only supports password auth, not {auth_provider!r}")

mock-idp-e2e runs vip verify --idp keycloak --filter "test_connect_login_ui or test_workbench_login", so auth_provider is oidc (or saml) and test_workbench_login always skips at setup. Since pytest exits 0 when there are skips but no failures, the job reports success.

Evidence

The skip reason is identical before and after the SSO fix in #601, taken from the JUnit artifacts of two runs:

run 32089485370 (before): test_auth only supports password auth, not 'oidc'
run 32172732884 (after):  test_auth only supports password auth, not 'oidc'

Run 32172732884 is the useful one: Workbench SSO now genuinely completes there (>>> Workbench authenticated. on all three legs, absent from every earlier run), the container is healthy, and the login test still skips. So this gate is independent of whether authentication works.

Why it matters

Options

  • Give the module an SSO path so the scenario asserts a completed SSO session instead of driving the password form, keeping the password assertions for password deployments.
  • Or point the SSO lanes at a different test that asserts an authenticated Workbench session, and stop filtering to test_workbench_login there.

Either way the lane should not be able to report success while its only Workbench test never runs; #596 covers that exit-code contract separately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions