Skip to content

nit(workspace dependencies): add more tests#8228

Open
pyranota wants to merge 3 commits intomainfrom
debouncing-tests
Open

nit(workspace dependencies): add more tests#8228
pyranota wants to merge 3 commits intomainfrom
debouncing-tests

Conversation

@pyranota
Copy link
Copy Markdown
Contributor

@pyranota pyranota commented Mar 4, 2026

No description provided.

Signed-off-by: pyranota <pyra@duck.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Mar 4, 2026

Deploying windmill with  Cloudflare Pages  Cloudflare Pages

Latest commit: f40a3b4
Status: ✅  Deploy successful!
Preview URL: https://919b1d1a.windmill.pages.dev
Branch Preview URL: https://debouncing-tests.windmill.pages.dev

View logs

@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 4, 2026

Claude finished @pyranota's task in 1m 19s —— View job


  • Read changed files and gather context
  • Review code quality and patterns
  • Post review feedback

Review Summary

This PR significantly improves the workspace dependencies test suite — well structured and thorough. The tests are well-organized into logical sections (CRUD, versioning, workspace isolation, language-specific, path generation, E2E) with clear doc comments explaining intent.

Key improvements:

  • Removed the #[ignore] from basic_manual_named and made it a proper E2E test with concrete assertions on job paths and counts
  • Cleaned up the fixture by removing the unused Go script and changing nativets to bun for the TS leaf
  • Added dependency_map entries to the fixture so the E2E test can verify that creating workspace deps triggers re-lock jobs for linked scripts
  • Added a new hub_sync_blacklist_from_workspace_deps test verifying hub_sync scripts are correctly excluded from dependency job triggers
  • Replaced commented-out/dead code with clean, well-documented unit tests covering CRUD, versioning, isolation, cross-language behavior, and path generation

One minor issue found:

  • PACKAGE_JSON_V2 has #[allow(dead_code)] but is actually used in multiple tests — see inline comment

Overall: Looks good. The test coverage is comprehensive and the code is clean.


Reproduction instructions

These are backend integration tests for workspace dependencies. To verify: navigate to the Windmill workspace settings page, go to the "Dependencies" section where you can create named/unnamed workspace dependencies for different languages (Python, Bun/TypeScript, PHP). Creating or updating a workspace dependency should trigger re-lock jobs for all scripts that reference it via the dependency map. Hub-synced scripts (like hub_sync) should be excluded from these triggered jobs.

}
"##;

#[allow(dead_code)]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PACKAGE_JSON_V2 is marked #[allow(dead_code)] but it's actively used in test_versioning_archives_previous, test_description_inheritance, and test_workspace_isolation. This attribute should be removed.

Suggested change
#[allow(dead_code)]
pub const PACKAGE_JSON_V2: &'static str = r##"

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.

1 participant