1+ name : Run set of storage-dependant tests
2+ description : Groups runs of several test projects that require a database
3+
4+ inputs :
5+ build_config :
6+ description : ' Build configuration'
7+ required : true
8+ default : ' Release'
9+ type : string
10+ show_all_fails :
11+ description : ' No mute tests'
12+ type : boolean
13+ default : false
14+ required : true
15+ test_output_verbosity :
16+ description : ' Verbosity for dotnet test command'
17+ required : true
18+ default : ' minimal'
19+ type : string
20+ test_results_folder :
21+ description : ' Folder where trx-files will be located for later parsing'
22+ required : true
23+ type : string
24+ run_main :
25+ description : ' Run Xtensive.Orm.Tests tests'
26+ required : true
27+ default : true
28+ type : boolean
29+ run_sql :
30+ description : ' Run Xtensive.Orm.Tests.Sql tests'
31+ required : true
32+ default : true
33+ type : boolean
34+ run_extensions :
35+ description : ' Run extension projects tests'
36+ required : true
37+ default : true
38+ type : boolean
39+
40+ runs :
41+ using : " composite"
42+ steps :
43+ - name : Test Orm.Tests set of tests
44+ env :
45+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
46+ if : ${{ !cancelled() && fromJSON(inputs.run_main) }}
47+ shell : bash
48+ run : dotnet test Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.Tests.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
49+
50+ - name : Test Orm.Tests.Sql set of tests
51+ env :
52+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
53+ if : ${{ !cancelled() && fromJSON(inputs.run_sql) }}
54+ shell : bash
55+ run : dotnet test Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.Tests.Sql.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
56+
57+ - name : Test BulkOperations extension set of tests
58+ env :
59+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
60+ if : ${{ !cancelled() && fromJSON(inputs.run_extensions) }}
61+ shell : bash
62+ run : dotnet test Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.BulkOperations.Tests.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
63+
64+ - name : Test Localization extension set of tests
65+ env :
66+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
67+ if : ${{ !cancelled() && fromJSON(inputs.run_extensions) }}
68+ shell : bash
69+ run : dotnet test Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.Localization.Tests.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
70+
71+ # NOTE! NO REPROCESSING TESTS. Reprocessing tests use multi-thread processing which may cause infinite execution.
72+ # Steps in composite action are not allowed to set timeout, it can be set only in calling job for entire composite
73+ # step. To not disturb normal tests execution Reprocessing tests moved outside the action.
74+
75+ - name : Test Security extension set of tests
76+ env :
77+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
78+ if : ${{ !cancelled() && fromJSON(inputs.run_extensions) }}
79+ shell : bash
80+ run : dotnet test Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.Security.Tests.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
81+
82+ - name : Test Tracking extension set of tests
83+ env :
84+ GA_NO_IGNORE : ${{ inputs.show_all_fails }}
85+ if : ${{ !cancelled() && fromJSON(inputs.run_extensions) }}
86+ shell : bash
87+ run : dotnet test Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj -c ${{ inputs.build_config }} --no-build --logger "trx;LogFileName=Xtensive.Orm.Tracking.Tests.trx" --results-directory ${{ inputs.test_results_folder }} -v ${{ inputs.test_output_verbosity }}
0 commit comments