Skip to content

Commit a2f7491

Browse files
committed
project-tests comments and modifications
1 parent d4a6ea6 commit a2f7491

File tree

1 file changed

+27
-8
lines changed

1 file changed

+27
-8
lines changed

.yamato/project-tests.yml

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,29 @@
1-
{% metadata_file .yamato/project.metafile %}
1+
{% metadata_file .yamato/project.metafile %} # All configuration that is used to create different configurations (used in for loops) is taken from this file.
22
---
33

4-
# Executes PlayMode and EditMode tests of the given project (ones that have tests) in the Editor context
5-
# Those tests don't include NGO package tests since they are handled on their respective jobs.
6-
# Those tests run in the editor so we don't need to consider different scripting backends or architectures
7-
# Tests are executed for all supported editors on each desktop platform as in project.metafile declaration
4+
# DESCRIPTION--------------------------------------------------------------------------
5+
# This job executes project-specific tests in Unity Editor context
6+
# Those tests cover both PlayMode and EditMode tests from project test assemblies
7+
# NGO package tests are NOT being executed within this job (those are handled in separate package test jobs)
8+
9+
# CONFIGURATION STRUCTURE--------------------------------------------------------------
10+
# Jobs configurations are generated using nested loops through:
11+
# 1. For all projects WITH TESTS (filtered by has_tests flag) (testproject, testproject-tools-interation) [For more info look into project.metafile configuration]
12+
# 2. For all desktop platforms (Windows, Ubuntu, macOS)
13+
# 3. For all supported Unity Editor versions (for NGOv1.X this means 2021.3+ editors)
14+
15+
# TECHNICAL CONSIDERATIONS---------------------------------------------------------------
16+
# This job runs in Editor context only (no player builds is required)
17+
# No scripting backend variations needed (Editor context)
18+
# Architecture variations not applicable (Editor context)
19+
# Requires project packaging as prerequisite (dependency job)
20+
21+
# QUALITY CONSIDERATIONS--------------------------------------------------------------------
22+
# TODO: Currently upm-ci is being used but in the future it will be replaced by upm-pvp
23+
# To see where this job is included (in trigger job definitions) look into _triggers.yml file
24+
25+
#------------------------------------------------------------------------------------
26+
827
{% for project in projects.all -%}
928
{% if project.has_tests == "true" -%}
1029
{% for platform in test_platforms.desktop -%}
@@ -16,9 +35,9 @@ test_{{ project.name }}_{{ platform.name }}_{{ editor }}:
1635
image: {{ platform.image }}
1736
flavor: {{ platform.flavor }}
1837
commands:
19-
- npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm
20-
- unity-downloader-cli -u {{ editor }} -c Editor --fast --wait
21-
- {% if platform.name == "ubuntu" %}DISPLAY=:0 && {% endif %}upm-ci project test -u {{ editor }} --project-path {{ project.path }} --type project-tests --extra-utr-arg="--extra-editor-arg=-testCategory --extra-editor-arg=!Performance --reruncount=1 --clean-library-on-rerun"
38+
- npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm # upm-ci is not preinstalled on the image so we need to download it
39+
- unity-downloader-cli -u {{ editor }} -c Editor # Installing basic editor for tests execution
40+
- upm-ci project test -u {{ editor }} --project-path {{ project.path }} --type project-tests --extra-utr-arg="--reruncount=1 --clean-library-on-rerun" # project tests execution via upm-ci
2241
artifacts:
2342
logs:
2443
paths:

0 commit comments

Comments
 (0)