Skip to content

Remove obsolete openam-test integration test suite - #1055

Merged
vharseko merged 1 commit into
OpenIdentityPlatform:masterfrom
vharseko:issues/openam-test
Jul 12, 2026
Merged

Remove obsolete openam-test integration test suite#1055
vharseko merged 1 commit into
OpenIdentityPlatform:masterfrom
vharseko:issues/openam-test

Conversation

@vharseko

Copy link
Copy Markdown
Member

Delete the openam-test module entirely. It was an in-process TestNG
suite whose TestBase static initializer bootstrapped a full OpenAM
instance (Bootstrap.load) and called System.exit(1) when no configured
instance with a reachable configuration store was available, so the
tests could never run as part of a normal build.

The module was never registered in the Maven reactor and had been
unmaintained since the 10.2.0 era. Several tests referenced APIs that
no longer exist: the removed ssoadm policy/realm commands
(ListPolicyNames, RealmGetPolicy, RealmDeletePolicy) and the static
ApplicationManager, replaced by the Guice-based ApplicationServiceFactory.

@vharseko
vharseko requested a review from maximthomas June 19, 2026 18:28
@vharseko
vharseko force-pushed the issues/openam-test branch from 4b869d5 to 922e3cd Compare June 20, 2026 11:04
@maximthomas

Copy link
Copy Markdown
Contributor

There are some test cases which could be useful in e2e tests. I think before removing the module, we could port tests to the e2e suite

@vharseko vharseko added the build label Jun 24, 2026
@vharseko

Copy link
Copy Markdown
Member Author

Agree on the intent — we shouldn't lose the behaviour these tests document. A few points on the practical side, though:

  • The e2e/ suite is Playwright/JS (*.spec.mjs), black-box over browser/HTTP (oauth2, saml, xui). The openam-test cases are in-process Java — almost all of them exercise the ssoadm CLI (com.sun.identity.cli.*: schema, realm, datastore, idrepo, entitlement, authentication) plus API-level checks (idm.AMIdentity, log.AMLog, policy.client, sm.Realm, setup). So this isn't a mechanical port — it's effectively writing new e2e tests in a different stack/layer.
  • Several of these tests already reference APIs that were removed (ListPolicyNames, RealmGetPolicy, RealmDeletePolicy, the static ApplicationManager), so they no longer compile and can't be ported as-is.
  • The module was never registered in the Maven reactor and its TestBase static initializer calls System.exit(1) when there's no live configured instance, so it never runs in a normal build — removing it doesn't reduce current coverage.

Proposal: let's decouple the two. Merge the removal of this dead/uncompilable code now (git history keeps the originals at any time), and track the porting work in a dedicated follow-up issue with a candidate list:

Area Source (pre-removal) Target in e2e/
Federation / SAML2 federation/cli/SAML2Test, workflow/SAML2Test extend existing e2e/saml/saml-test.spec.mjs
Policy / entitlement regressions policy/client/{Issue619Test,Issue736Test,PolicyEvaluatorTest,AMIdentityMembershipConditionTest} new e2e/policy/ block
ssoadm CLI cli/{schema,realm,datastore,idrepo,entitlement,authentication}/* new "ssoadm against a running container" block

I'm happy to drive the SAML2 ones first since we already have e2e/saml/saml-test.spec.mjs. WDYT?

@vharseko vharseko added the refactoring Code cleanup, refactor, dead-code or dependency removal label Jul 8, 2026
@vharseko
vharseko merged commit 96ca922 into OpenIdentityPlatform:master Jul 12, 2026
16 checks passed
@vharseko
vharseko deleted the issues/openam-test branch July 12, 2026 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build refactoring Code cleanup, refactor, dead-code or dependency removal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants