Skip to content

OSIS-167: contract test that OSIS keeps deactivated S3 credentials in the listing#165

Merged
anurag4DSB merged 2 commits into
mainfrom
improvement/OSIS-167-list-deactivated-s3-credentials-contract-test
Jun 29, 2026
Merged

OSIS-167: contract test that OSIS keeps deactivated S3 credentials in the listing#165
anurag4DSB merged 2 commits into
mainfrom
improvement/OSIS-167-list-deactivated-s3-credentials-contract-test

Conversation

@anurag4DSB

Copy link
Copy Markdown
Contributor

Intent: why does this change exist?

Lock the OSIS behavior that S3C-11267 depends on. S3C-11267 reports deactivated S3 keys vanishing from the VCD UI; this regression test proves and pins that OSIS keeps deactivated keys (active=false) in its listing, so the defect is provably downstream of OSIS.

System impact: what's affected, including downstream?

Test-only. One new unit test in ScalityModelConverterTest. No production code, no runtime or contract behavior change.

Preserved behavior: what explicitly stays the same?

Everything. The listing already returns inactive keys (ScalityModelConverter.toPageOfS3Credentials maps every AccessKeyMetadata with no status filter); this only guards it.

Intended change: what's different after this PR?

A new test, testToPageOfS3CredentialsKeepsInactiveCredential, that fails if a future change starts filtering inactive keys out of the credential listing.

Verification: how do we know this worked, or how would we know if it didn't?

./gradlew :osis-core:test :osis-core:jacocoTestCoverageVerification is green (coverage gate 75% holds). Also reproduced live on the OSE 3.1.0.3 / VCD 10.5.1 lab: after deactivating a key via OSIS, both the single GET and the user credential LIST still return it with active=false.

@claude

claude Bot commented Jun 25, 2026

Copy link
Copy Markdown

LGTM — test-only change that pins the correct behavior (inactive S3 credentials stay in the listing as active=false). The test correctly exercises ScalityModelConverter.toPageOfS3Credentials with a mix of Active and Inactive keys, uses existing test constants, and assertions cover both presence and status mapping. No production code, no contract change, no coverage risk.

Review by Claude Code

@claude

claude Bot commented Jun 25, 2026

Copy link
Copy Markdown

LGTM — clean, test-only change. The new test correctly pins the existing behavior in toPageOfS3Credentials (line 747–767 of ScalityModelConverter.java): every AccessKeyMetadata is mapped regardless of status, with Inactive keys surfaced as active=false. No production code changes, existing constants reused, and assertions cover both presence and correct active flag value.

Review by Claude Code

@claude

claude Bot commented Jun 26, 2026

Copy link
Copy Markdown

LGTM — clean regression test that locks existing behavior (inactive keys kept with active=false). Follows existing test patterns, constants are reused, no production code touched.

Review by Claude Code

@anurag4DSB anurag4DSB marked this pull request as ready for review June 26, 2026 10:13
@anurag4DSB anurag4DSB requested a review from a team as a code owner June 26, 2026 10:13
@anurag4DSB anurag4DSB force-pushed the improvement/OSIS-167-list-deactivated-s3-credentials-contract-test branch from 2e78593 to 675ab59 Compare June 29, 2026 09:35
@anurag4DSB

Copy link
Copy Markdown
Contributor Author

squashed the 2nd commit, rebased to main so we get a Opus 4.8 review and force pushed

@anurag4DSB anurag4DSB merged commit 7d12a67 into main Jun 29, 2026
7 checks passed
@anurag4DSB anurag4DSB deleted the improvement/OSIS-167-list-deactivated-s3-credentials-contract-test branch June 29, 2026 09:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants