Skip to content

ci: Run code coverage via testproject Project Test job - #4101

Merged
unity-nikos merged 3 commits into
develop-2.0.0from
ci/add/code-coverage-project-test
Jul 25, 2026
Merged

ci: Run code coverage via testproject Project Test job#4101
unity-nikos merged 3 commits into
develop-2.0.0from
ci/add/code-coverage-project-test

Conversation

@unity-nikos

@unity-nikosunity-nikos commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Purpose of this PR

  • Adds [Code Coverage] Project Test - NGO testproject [ubuntu, trunk] (id code_coverage_project_test_testproject_ubuntu_trunk) — a single instance that runs the testproject EditMode/PlayMode tests with coverage enabled (deps run_quick_checks + package-pack, matching project-tests.yml).
  • Replaces the existing Code Coverage - NGO [ubuntu, 6000.3] job

Trigger wiring in _triggers.yml — both coverage jobs run together on:

  • PR changes (pr_code_changes_checks) — replaces the old code_coverage_ubuntu_{{ validation_editors.default }} reference.
  • Nightly (develop_nightly).

(Neither job runs in the weekly trigger.)

Both jobs stay single-instance (Ubuntu, trunk) since coverage doesn't vary meaningfully across platforms/editors.

Jira ticket

TODO: link ticket (e.g. MTT-XXXX)

Changelog

Not applicable — CI-only change, no package/public-facing changes.

Documentation

  • No documentation changes or additions were necessary.

Testing & QA (How your changes can be verified during release Playtest)

Rendered every .yamato/*.yml through a local Liquid renderer and verified:

  • Both new jobs template to valid YAML with the expected ids/names.
  • All trigger references to the coverage jobs resolve (PR + nightly, for both jobs).
  • The Project Test job's run_quick_checks dependency exists in _run-all.yml.

Final verification is the Yamato jobs themselves running green on this PR.

Functional Testing

Manual testing :

  • Manual testing done

Automated tests:

  • Covered by existing automated tests
  • Covered by new automated tests

Does the change require QA team to:

  • Review automated tests?
  • Execute manual tests?
  • Provide feedback about the PR?

Up-port

TODO: link the develop-3.0.0 up-port PR, or state if not needed (does the same code-coverage.yml structure exist on develop-3.0.0?).

Backports

TODO: link any backport PR (e.g. develop), or state if not needed.

🤖 Generated with Claude Code

Convert the existing coverage job to [Code Coverage] Package Test - NGO [ubuntu, trunk] and add [Code Coverage] Project Test - NGO testproject [ubuntu, trunk]. Wire Package Test into PR/nightly triggers and Project Test into the weekly run.
@codecov-github-com

codecov-github-comBot commented Jul 24, 2026

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

@@ Coverage Diff @@## develop-2.0.0 #4101 +/- ##
=================================================
+ Coverage 66.40% 73.87% +7.46% 
=================================================
Files 163 172 +9 Lines 24999 28013 +3014 =================================================
+ Hits 16601 20695 +4094 + Misses 8398 7318 -1080 
FlagCoverage Δ
NGOv2_project_testproject_ubuntu_trunk73.66% <ø> (?)
NGOv2_ubuntu_trunk66.43% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

see 67 files with indirect coverage changes

ComponentsCoverage Δ
com.unity.netcode.gameobjects73.87% <ø> (+7.46%)⬆️

ℹ️ Need help interpreting these results?

@unity-nikos
unity-nikos marked this pull request as ready for review July 24, 2026 14:24
Comment thread.yamato/code-coverage.yml Outdated
# [Code Coverage] Package Test runs on PR changes (pr_code_changes_checks) and nightly (develop_nightly)
# [Code Coverage] Project Test runs on PR changes (pr_code_changes_checks) and nightly (develop_nightly)

{% assign editor = "trunk" -%}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Do you mind using the pinnedTrunk variable we have in project.metafile?

Occasionally trunk breaks our tests so we have a pinned "safe" version for PRs. We update the pinned version fairly regularly. Our nightly and weekly tests run on actual trunk.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

Fixed in ce72070

@unity-nikos
unity-nikos requested a review from EmandMJuly 24, 2026 16:26
@unity-nikos

Copy link
Copy Markdown
ContributorAuthor
Screenshot 2026-07-24 at 17 28 11

@unity-nikos
unity-nikos merged commit b998fc0 into develop-2.0.0Jul 25, 2026
11 checks passed
@unity-nikos
unity-nikos deleted the ci/add/code-coverage-project-test branch July 25, 2026 00:06
@unity-nikosunity-nikos changed the title ci: Split code coverage into Package Test and Project Test jobsci: Run code coverage via testproject Project Test jobJul 25, 2026
michalChrobot added a commit that referenced this pull request Aug 3, 2026
* chore: Adding a note about DontDestroyOnLoad usage for Networked scene objects (#4070)
Docs correction
* ci: Split code coverage into Package Test and Project Test jobs (#4101)
* ci: Split code coverage into Package Test and Project Test jobs
Convert the existing coverage job to [Code Coverage] Package Test - NGO [ubuntu, trunk] and add [Code Coverage] Project Test - NGO testproject [ubuntu, trunk]. Wire Package Test into PR/nightly triggers and Project Test into the weekly run.
* ci: Run both coverage jobs on PR and nightly
* ci: Use pinnedTrunk for PR coverage and drop package-test job
* chore: Point CMB resources at new monorepo (#4106)
* chore: Point CMB resources at new monorepo
* fix: NetworkVariable change prior to ownership change using distributed authority topology fails to sync NetworkVariable (#4107)
* fix
This resolves the issue where in a distributed authority session changing a NetworkVariable prior to changing ownership in the same call-stack would result in the NetworkVariable not being synchronized.
* fix - update
Removing the additional authority check as it is not needed.
Fixing a very edge case scenario that shouldn't happen but in the event it does when finding objects by type within a specific scene, if the scene is invalid then use an empty array for the found objects.
* fix: spawn disabled in scene placed and network prefab registration (#4093)
* fix
- Issue where disabled in-scene placed NetworkObjects could not be spawned after starting a session.
- Issue where users are allowed to spawn a NetworkObject with a GlobalObjectIdHash value of 0 (zero).
* update
NetworkAnimator not pointing to an animator within awake now just logs a warning as opposed to an error.
* test
Updating tests based on the fixes applied to this branch.
A large portion is related to some integration tests trying to spawn NetworkObjects with a GlobalObjectIdHash value of zero(0).
* update
Style and providing internal write access to the prefabs list.
* test
Potentially last iteration on fixing/updating integration tests.
* test - fix
Using the fixed version of NetworkPrefabHandlerSpawnAndSynchronizeTests.
Fixing some issues with prefab and handler creation.
* style
Fixing formatting issues.
* style
Fixing some standards formatting related issues.
* style
removing trailing spaces.
* style
Super weird one... but using ? as opposed to an if null check.
* style
Removing commented out code that is no longer needed/used.
* update
Committing suggested changes.
Co-authored-by: Emma <emma.mcmillan@unity3d.com>
* update
Applying changes based on review discussion.
* update
Making adjustments based on review discussion.
* style
Removing field that is no longer valid.
Moving Awake higher in NetworkObject as it has become wedged in the middle of the code.
* update
Adding change log entries.
* update
Inverting logic (oops)
* doc
Updating NetworkObject documentation and in-scene placed documentation.
* Update documentation for the two types of NetworkObjects
Clarified the categories of NetworkObjects and their requirements. Added details for dynamically instantiated and in-scene placed NetworkObjects.
* style
White spaces!
* Apply suggestions from code review
Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>
---------
Co-authored-by: Emma <emma.mcmillan@unity3d.com>
Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>
* docs: Docs-wide link fixes and xref update (#4102)
* Docs-wide link fixes and xref update
* Typo in API docs
* chore: Add NGO_EXCLUDE_HEAVY_TESTS define (#4114)
Add NGO_EXCLUDE_HEAVY_TESTS
---------
Co-authored-by: Nikos <nikos@unity3d.com>
Co-authored-by: Emma <emma.mcmillan@unity3d.com>
Co-authored-by: Noel Stephens <noel.stephens@unity3d.com>
Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>
Co-authored-by: mnachury-unity <120488254+mnachury-unity@users.noreply.github.com>
Sign up for freeto 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.

2 participants

@unity-nikos@EmandM