Fix tests in trunk#6315
Conversation
| npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm | ||
| upm-ci project test -u {{ editor.version }} --project-path {{ editor.testProject }} --package-filter {{ package.name }} --extra-create-project-arg="-upmNoDefaultPackages" --extra-utr-arg "reruncount=2" | ||
| - unity-downloader-cli -u {{ editor.version }} -c editor --wait --fast | ||
| - upm-pvp create-test-project test-project --packages "upm-ci~/packages/*.tgz" --unity .Editor |
There was a problem hiding this comment.
This switches the trunk lane from testing the checked-in DevProject to creating a fresh project from the packed UPM tarballs, which means the DevProject-only dev test assemblies stop running. In this repo those tests live under DevProject/Assets/ML-Agents/Scripts/Tests/... (Unity.ML-Agents.DevTests.Editor in Editor.asmdef, Unity.ML-Agents.DevTests.Runtime in Runtime.asmdef), with concrete cases like MLAgentsSettingsTests and AcademyStepperTest. The packed inputs for this flow are only the root packages (com.unity.ml-agents and com.unity.ml-agents.tests), so those DevProject assets are not present in the generated test-project. As a result, trunk will no longer catch regressions covered only by these dev tests. Please either keep running trunk against DevProject, or move/include the dev-test assemblies in the package-based project before invoking UTR.
🤖 Helpful? 👍/👎
Rebuild Google.Protobuf_Packed.dll from source (netstandard2.0) without merging System.Memory/System.Buffers polyfills into the assembly. The previous packed DLL embedded the Span<T> polyfill, which caused IL2CPP to crash in IntrinsicRemap.SpanGetItemArguments during standalone player builds. The rebuilt DLL references System.Memory externally, letting Unity resolve Span<T> through its BCL type-forwarder. Also set isOverridable to 0 in the plugin meta to prevent com.unity.ai.inference's editor-only copy from shadowing this DLL during builds. Fixes #6310
727175d to
3ab1c83
Compare
|
/review |
| npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm | ||
| upm-ci project test -u {{ editor.version }} --project-path {{ editor.testProject }} --package-filter {{ package.name }} --extra-create-project-arg="-upmNoDefaultPackages" --extra-utr-arg "reruncount=2" | ||
| - unity-downloader-cli -u {{ editor.version }} -c editor --wait --fast | ||
| - UnifiedTestRunner --suite=editor --suite=playmode --editor-location=.Editor --testproject={{ editor.testProject }} --artifacts-path=upm-ci~/test-results --reruncount=2 |
There was a problem hiding this comment.
This job now calls UnifiedTestRunner directly, but unlike every other active direct UTR invocation in this repo it does not bootstrap that tool first. The Wrench-generated jobs all curl/extract wrench-localapv.zip before running UnifiedTestRunner, and the older non-Wrench example fetched utr explicitly; this template now has neither step after removing upm-ci. On a clean agent that means trunk can fail with UnifiedTestRunner: command not found before any tests run. Please either add the same bootstrap/install step used by the existing UTR jobs, or keep using the wrapper that provisions UTR for you.
🤖 Helpful? 👍/👎
Proposed change(s)
Tests with trunk did not run anymore, and we had to use Unity 6.5 (See #6304)
Now, as suggested internally, use upm-pvp instead of upm-ci.
Types of change(s)
CI fix