Skip to content

test(mnnvl): rewrite E2E tests for single-annotation model#583

Merged
shmuel-runai merged 3 commits into
ai-dynamo:mainfrom
shmuel-runai:grove-417/single-annotation-e2e
May 7, 2026
Merged

test(mnnvl): rewrite E2E tests for single-annotation model#583
shmuel-runai merged 3 commits into
ai-dynamo:mainfrom
shmuel-runai:grove-417/single-annotation-e2e

Conversation

@shmuel-runai

Copy link
Copy Markdown
Contributor

/kind feature

Summary

  • Rewrites the MNNVL E2E test suite for the single-annotation (grove.io/mnnvl-group) model introduced in refactor(mnnvl): replace two-annotation model with single mnnvl-group annotation #574
  • Replaces Go builder functions with pre-written YAML fixtures under operator/e2e/yaml/auto-mnnvl/, aligning with the repository's existing E2E patterns
  • Adds applyMNNVLYAML helper to dynamically patch PCS resource names for test isolation
  • Adds comprehensive testMNNVLEndToEnd covering all annotation propagation layers (PCS → PCSG → PCLQ) with inherit/override/opt-out combinations, plus scale-out, scale-in, and deletion
  • Removes redundant tests consolidated into the end-to-end test
  • Updates supported_but_disabled_test.go and shared_cases.go to use AnnotationMNNVLGroup

Test plan

  • make check passes (lint, format, codegen)
  • go vet -tags=e2e ./e2e/tests/auto-mnnvl/... compiles cleanly
  • All 4 E2E configurations pass locally:
    • Config1_UnsupportedAndDisabled: PASS
    • Config2_UnsupportedButEnabled: PASS
    • Config3_SupportedAndEnabled: PASS (12 test cases, all green)
    • Config4_SupportedButDisabled: PASS

Ref #417

Made with Cursor

- Replace Go builder functions with pre-written YAML fixtures
- Add applyMNNVLYAML helper for unique resource naming
- Add testMNNVLEndToEnd comprehensive test covering all layers
- Streamline test suite, remove redundant tests

Co-authored-by: Cursor <cursoragent@cursor.com>
@copy-pr-bot

copy-pr-bot Bot commented May 6, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Comment thread operator/e2e/tests/auto-mnnvl/shared_cases.go Outdated
Comment thread operator/e2e/yaml/auto-mnnvl/mnnvl-comprehensive-bare.yaml Outdated
Comment thread operator/e2e/yaml/auto-mnnvl/mnnvl-comprehensive-mix.yaml
Comment thread operator/e2e/yaml/auto-mnnvl/mnnvl-comprehensive.yaml Outdated
- Clarify shared_cases.go comment: distinguish operator-disabled vs
  CRD-unsupported scenarios
- Simplify mnnvl-comprehensive-bare.yaml to 2 PCLQs (GPU + CPU)
- Remove 4 redundant tests covered by testMNNVLEndToEnd:
  testMNNVLComputeDomainAndClaimInjection, testMultipleGroupsInOnePCS,
  testPCLQOptOutOverridesParent, testThreeLayerPCSPCSGPCLQAllDifferent
- Delete 4 corresponding YAML fixtures
- Move finalizer-blocks-deletion check into testMNNVLEndToEnd

Co-authored-by: Cursor <cursoragent@cursor.com>
@shmuel-runai shmuel-runai merged commit 80605c2 into ai-dynamo:main May 7, 2026
15 checks passed
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