Skip to content

feat(test): migrate unity test project for unity-cli#17

Merged
github-actions[bot] merged 4 commits into
developfrom
feature/test-project-migration
Feb 17, 2026
Merged

feat(test): migrate unity test project for unity-cli#17
github-actions[bot] merged 4 commits into
developfrom
feature/test-project-migration

Conversation

@akiojin

@akiojin akiojin commented Feb 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • This PR adds a full Unity test project under UnityCliBridge/TestProject so unity-cli can validate bridge behavior without depending on the legacy repository.
  • It updates the test project package linkage to com.akiojin.unity-cli-bridge so runtime and editor code is exercised through the current package path.
  • It introduces small compatibility wrappers for legacy UnityMCPServer.* namespace references so migrated scenes and scripts continue to compile while transitioning to UnityCliBridge.*.

Changes

  • UnityCliBridge/TestProject/**: added migrated Unity project assets, ProjectSettings, and package manifest for local reproducible Editor and E2E testing.
  • UnityCliBridge/TestProject/Packages/manifest.json: added com.akiojin.unity-cli-bridge with file:../../Packages/unity-cli-bridge reference.
  • UnityCliBridge/Packages/unity-cli-bridge/Runtime/IMGUI/LegacyMcpImguiControlRegistry.cs: added runtime compatibility bridge from UnityMCPServer.Runtime.IMGUI to UnityCliBridge.Runtime.IMGUI.
  • UnityCliBridge/Packages/unity-cli-bridge/Editor/Helpers/LegacyDebouncedAssetRefresh.cs: added editor helper compatibility bridge for legacy namespace calls.
  • UnityCliBridge/Packages/unity-cli-bridge/Editor/Settings/LegacyUnityMcpServerProjectSettings.cs: added settings compatibility type for existing serialized project settings.
  • UnityCliBridge/TestProject/Assets/Editor/UpmSigning/UpmPackSigner.cs: switched default package path to Packages/unity-cli-bridge.
  • docs/development.md and README.md: documented the new Unity test project location and batch EditMode test command.

Testing

  • cargo fmt --all -- --check - passes with no formatting diffs.
  • cargo clippy --all-targets --all-features -- -D warnings - passes with no warnings.
  • cargo test --all-targets --all-features - passes (23 passed, 0 failed).
  • dotnet test lsp/Server.Tests.csproj - N/A in this environment because dotnet is not installed.

Related Issues / Links

Checklist

  • Tests added/updated
  • Lint/format passed (cargo clippy, cargo fmt, svelte-check) - svelte-check N/A: no Svelte sources in this repository.
  • Documentation updated (if user-facing change)
  • Migration/backfill plan included (if schema/data change) - N/A: no schema or data migration in this PR.
  • CHANGELOG impact considered (breaking change flagged in commit)

Context

  • The migration tracker identified that unity-cli lacked a full Unity test project with ProjectSettings, which blocked end-to-end Unity validation from being self-contained.
  • This PR moves the required test project footprint into unity-cli and keeps compatibility shims so migration can proceed without immediate scene or script rewrites.

Risk / Impact

  • Affected areas: repository size, Unity project import time in CI and local environments, and compatibility behavior for legacy namespaces.
  • Rollback plan: revert commit dc07a2b to remove the test project and compatibility wrappers.

Notes

  • Base branch is main because develop does not exist in akiojin/unity-cli.

@coderabbitai

coderabbitai Bot commented Feb 17, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/test-project-migration

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@akiojin
akiojin changed the base branch from main to develop February 17, 2026 11:06
@github-actions
github-actions Bot enabled auto-merge February 17, 2026 11:07
@github-actions
github-actions Bot merged commit c396e52 into develop Feb 17, 2026
11 checks passed
akiojin pushed a commit that referenced this pull request Mar 3, 2026
feat(test): migrate unity test project for unity-cli
@akiojin
akiojin deleted the feature/test-project-migration branch April 14, 2026 04:12
arghhhhh added a commit to arghhhhh/unity-cli that referenced this pull request Jun 24, 2026
…iojin#17)

New top-level tool (sibling of vfx_runtime/vfx_settings) for the SDF Bake
Tool's programmatic path. Uses the package's PUBLIC MeshToSDFBaker
(construct → BakeSDF → read back the 3D SdfTexture RenderTexture → save
as a Texture3D asset). The package's own SaveToAsset is internal and goes
through an interactive SaveFilePanel (headless blocker), so we do our own
AsyncGPUReadback (per-layer, to capture all depth slices) +
AssetDatabase.CreateAsset at the caller's path. Params: meshPath,
outputPath, maxResolution, center/size (default mesh bounds),
signPassCount, threshold, sdfOffset, overwrite. Guards on
SystemInfo.supportsComputeShaders. Full 5-layer: catalog +
host case + handler + EditMode tests (committed Cube.obj fixture; test
Asserts.Ignore without compute) + skill v0.29.0 + docs.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
arghhhhh added a commit to arghhhhh/unity-cli that referenced this pull request Jun 25, 2026
…iojin#17)

New top-level tool (sibling of vfx_runtime/vfx_settings) for the SDF Bake
Tool's programmatic path. Uses the package's PUBLIC MeshToSDFBaker
(construct → BakeSDF → read back the 3D SdfTexture RenderTexture → save
as a Texture3D asset). The package's own SaveToAsset is internal and goes
through an interactive SaveFilePanel (headless blocker), so we do our own
AsyncGPUReadback (per-layer, to capture all depth slices) +
AssetDatabase.CreateAsset at the caller's path. Params: meshPath,
outputPath, maxResolution, center/size (default mesh bounds),
signPassCount, threshold, sdfOffset, overwrite. Guards on
SystemInfo.supportsComputeShaders. Full 5-layer: catalog +
host case + handler + EditMode tests (committed Cube.obj fixture; test
Asserts.Ignore without compute) + skill v0.29.0 + docs.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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