Skip to content

Commit 342e13b

Browse files
authored
Merge pull request #3392 from PrismLibrary/uno-tests
Adds Uno.WinUI and DryIoc.Uno.WinUI unit tests
2 parents a185bf1 + 19eaa83 commit 342e13b

23 files changed

Lines changed: 831 additions & 27 deletions

.github/workflows/build_avalonia.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,11 @@ on:
1919

2020
jobs:
2121
build-prism-avalonia:
22-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
22+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2323
with:
2424
name: Build Prism.Avalonia
2525
solution-path: PrismLibrary_Avalonia.slnf
26+
test-projects: |
27+
tests/Avalonia/Prism.Avalonia.Tests/Prism.Avalonia.Tests.csproj
28+
tests/Avalonia/Prism.DryIoc.Avalonia.Tests/Prism.DryIoc.Avalonia.Tests.csproj
2629
dotnet-version: 10.0.100

.github/workflows/build_core.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,10 @@ on:
1717

1818
jobs:
1919
build-prism-core:
20-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
20+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2121
with:
2222
name: Build Prism.Core
2323
solution-path: PrismLibrary_Core.slnf
24+
test-projects: |
25+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
2426
dotnet-version: 10.0.100

.github/workflows/build_maui.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,12 @@ on:
2020

2121
jobs:
2222
build-prism-maui:
23-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
23+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2424
with:
2525
name: Build Prism.Maui
2626
solution-path: PrismLibrary_Maui.slnf
2727
install-workload: maui maui-tizen
28+
test-projects: |
29+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
30+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
2831
dotnet-version: 10.0.100

.github/workflows/build_uno.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ on:
2121

2222
jobs:
2323
build-prism-uno:
24-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
24+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
2525
with:
2626
name: Build Prism.Uno
2727
solution-path: PrismLibrary_Uno.slnf
@@ -31,4 +31,6 @@ jobs:
3131
uno-check: false
3232
uno-check-version: 1.33.1
3333
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
34-
run-tests: false
34+
test-projects: |
35+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
36+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj

.github/workflows/build_wpf.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ on:
1919

2020
jobs:
2121
build-prism-wpf:
22-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
22+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2323
with:
2424
name: Build Prism.Wpf
2525
solution-path: PrismLibrary_Wpf.slnf
26+
test-projects: |
27+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
28+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
29+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
2630
dotnet-version: 10.0.100

.github/workflows/ci.yml

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@ on:
2525

2626
jobs:
2727
build-prism-core:
28-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
28+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2929
with:
3030
name: Build Prism.Core
3131
solution-path: PrismLibrary_Core.slnf
32+
test-projects: |
33+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
3234
code-sign: false
3335
artifact-name: Core
3436
dotnet-version: 10.0.100
@@ -40,10 +42,14 @@ jobs:
4042
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
4143

4244
build-prism-wpf:
43-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
45+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
4446
with:
4547
name: Build Prism.Wpf
4648
solution-path: PrismLibrary_Wpf.slnf
49+
test-projects: |
50+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
51+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
52+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
4753
code-sign: false
4854
artifact-name: Wpf
4955
dotnet-version: 10.0.100
@@ -55,7 +61,7 @@ jobs:
5561
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
5662

5763
build-prism-uno:
58-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
64+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
5965
with:
6066
name: Build Prism.Uno
6167
solution-path: PrismLibrary_Uno.slnf
@@ -65,7 +71,9 @@ jobs:
6571
uno-check: false
6672
uno-check-version: 1.33.1
6773
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
68-
run-tests: false
74+
test-projects: |
75+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
76+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj
6977
code-sign: false
7078
artifact-name: Uno
7179
secrets:
@@ -76,11 +84,14 @@ jobs:
7684
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
7785

7886
build-prism-maui:
79-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
87+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
8088
with:
8189
name: Build Prism.Maui
8290
solution-path: PrismLibrary_Maui.slnf
8391
install-workload: maui maui-tizen
92+
test-projects: |
93+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
94+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
8495
code-sign: false
8596
artifact-name: Maui
8697
dotnet-version: 10.0.100
@@ -92,10 +103,13 @@ jobs:
92103
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
93104

94105
build-prism-avalonia:
95-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
106+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
96107
with:
97108
name: Build Prism.Avalonia
98109
solution-path: PrismLibrary_Avalonia.slnf
110+
test-projects: |
111+
tests/Avalonia/Prism.Avalonia.Tests/Prism.Avalonia.Tests.csproj
112+
tests/Avalonia/Prism.DryIoc.Avalonia.Tests/Prism.DryIoc.Avalonia.Tests.csproj
99113
code-sign: false
100114
artifact-name: Avalonia
101115
dotnet-version: 10.0.100
@@ -154,7 +168,7 @@ jobs:
154168
path: .\artifacts\nuget
155169

156170
deploy-internal:
157-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1
171+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v2
158172
needs: generate-consolidated-artifacts
159173
if: ${{ github.event_name == 'push' }}
160174
with:
@@ -164,7 +178,7 @@ jobs:
164178
apiKey: ${{ secrets.IN_HOUSE_API_KEY }}
165179

166180
deploy-commercial-plus:
167-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1
181+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v2
168182
needs: generate-consolidated-artifacts
169183
if: ${{ github.event_name == 'push' }}
170184
with:

.github/workflows/publish-release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ on:
66

77
jobs:
88
publish-internal:
9-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v1
9+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v2
1010
secrets:
1111
feedUrl: ${{ secrets.IN_HOUSE_NUGET_FEED }}
1212
apiKey: ${{ secrets.IN_HOUSE_API_KEY }}
1313

1414
publish-commercial-plus:
15-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v1
15+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v2
1616
secrets:
1717
feedUrl: ${{ secrets.PRISM_NUGET_FEED }}
1818
apiKey: ${{ secrets.PRISM_NUGET_TOKEN }}

.github/workflows/start-release.yml

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ on:
55

66
jobs:
77
build-prism-core:
8-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
8+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
99
with:
1010
name: Build Prism.Core
1111
solution-path: PrismLibrary_Core.slnf
12+
test-projects: |
13+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
1214
code-sign: true
1315
artifact-name: Core
1416
build-args: /p:OfficialRelease=true
@@ -20,10 +22,14 @@ jobs:
2022
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
2123

2224
build-prism-wpf:
23-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
25+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2426
with:
2527
name: Build Prism.Wpf
2628
solution-path: PrismLibrary_Wpf.slnf
29+
test-projects: |
30+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
31+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
32+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
2733
code-sign: true
2834
artifact-name: Wpf
2935
build-args: /p:OfficialRelease=true
@@ -35,17 +41,19 @@ jobs:
3541
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
3642

3743
build-prism-uno:
38-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
44+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
3945
with:
4046
name: Build Prism.Uno
4147
solution-path: PrismLibrary_Uno.slnf
4248
windows-sdk-version: 18362
43-
dotnet-version: 8.0.300
44-
install-workload: ios android macos maccatalyst wasm-tools
49+
dotnet-version: 10.0.100
50+
install-workload: ios android macos maccatalyst wasm-tools tvos
4551
uno-check: false
46-
uno-check-version: 1.25.1
52+
uno-check-version: 1.33.1
4753
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
48-
run-tests: false
54+
test-projects: |
55+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
56+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj
4957
code-sign: true
5058
artifact-name: Uno
5159
build-args: /p:OfficialRelease=true
@@ -57,12 +65,15 @@ jobs:
5765
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
5866

5967
build-prism-maui:
60-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
68+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
6169
with:
6270
name: Build Prism.Maui
6371
solution-path: PrismLibrary_Maui.slnf
6472
dotnet-version: 8.0.x
6573
install-workload: maui maui-tizen
74+
test-projects: |
75+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
76+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
6677
code-sign: true
6778
artifact-name: Maui
6879
build-args: /p:OfficialRelease=true
@@ -74,7 +85,7 @@ jobs:
7485
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
7586

7687
generate-consolidated-artifacts:
77-
needs: [build-prism-core, build-prism-wpf, build-prism-uno]
88+
needs: [build-prism-core, build-prism-wpf, build-prism-uno, build-prism-maui]
7889
runs-on: windows-latest
7990
steps:
8091
- name: Checkout
@@ -115,7 +126,7 @@ jobs:
115126
path: .\artifacts\nuget
116127

117128
release:
118-
uses: avantipoint/workflow-templates/.github/workflows/generate-release.yml@v1
129+
uses: avantipoint/workflow-templates/.github/workflows/generate-release.yml@v2
119130
needs: [generate-consolidated-artifacts]
120131
permissions:
121132
contents: write

Directory.Packages.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@
7575
<!-- Tests -->
7676
<ItemGroup>
7777
<PackageVersion Include="coverlet.collector" Version="6.0.2" />
78+
<PackageVersion Include="coverlet.msbuild" Version="6.0.2" />
7879
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
7980
<PackageVersion Include="Xamarin.Forms.Mocks" Version="4.7.0.1" />
8081
<PackageVersion Include="Humanizer.Core" Version="2.14.1" />

PrismLibrary.sln

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,16 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Prism.IocContainer.Avalonia
8686
EndProject
8787
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Avalonia", "Avalonia", "{904D5094-55F9-4581-90AC-D6C1131F8152}"
8888
EndProject
89+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Uno", "Uno", "{8B763117-8E13-0D1A-AFE0-5BC3FACCF29C}"
90+
EndProject
91+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Uno.WinUI.Tests", "tests\Uno\Prism.Uno.WinUI.Tests\Prism.Uno.WinUI.Tests.csproj", "{05132055-211C-42D4-B40A-39E4BB066E7B}"
92+
EndProject
93+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Prism.Uno", "Prism.Uno", "{1E1EDCAE-FD32-8442-764F-7F151A12D8D4}"
94+
EndProject
95+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.DryIoc.Uno.WinUI.Tests", "tests\Uno\Prism.DryIoc.Uno.WinUI.Tests\Prism.DryIoc.Uno.WinUI.Tests.csproj", "{158173F6-E776-422C-9127-8994C504867B}"
96+
EndProject
97+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Prism.DryIoc.Uno", "Prism.DryIoc.Uno", "{064C69BC-4576-336C-79BF-6771226CD9DC}"
98+
EndProject
8999
Global
90100
GlobalSection(SolutionConfigurationPlatforms) = preSolution
91101
Debug|Any CPU = Debug|Any CPU
@@ -372,6 +382,30 @@ Global
372382
{887E0794-798D-4127-847E-6F68D5C9B334}.Release|x64.Build.0 = Release|Any CPU
373383
{887E0794-798D-4127-847E-6F68D5C9B334}.Release|x86.ActiveCfg = Release|Any CPU
374384
{887E0794-798D-4127-847E-6F68D5C9B334}.Release|x86.Build.0 = Release|Any CPU
385+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
386+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|Any CPU.Build.0 = Debug|Any CPU
387+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|x64.ActiveCfg = Debug|Any CPU
388+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|x64.Build.0 = Debug|Any CPU
389+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|x86.ActiveCfg = Debug|Any CPU
390+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Debug|x86.Build.0 = Debug|Any CPU
391+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|Any CPU.ActiveCfg = Release|Any CPU
392+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|Any CPU.Build.0 = Release|Any CPU
393+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|x64.ActiveCfg = Release|Any CPU
394+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|x64.Build.0 = Release|Any CPU
395+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|x86.ActiveCfg = Release|Any CPU
396+
{05132055-211C-42D4-B40A-39E4BB066E7B}.Release|x86.Build.0 = Release|Any CPU
397+
{158173F6-E776-422C-9127-8994C504867B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
398+
{158173F6-E776-422C-9127-8994C504867B}.Debug|Any CPU.Build.0 = Debug|Any CPU
399+
{158173F6-E776-422C-9127-8994C504867B}.Debug|x64.ActiveCfg = Debug|Any CPU
400+
{158173F6-E776-422C-9127-8994C504867B}.Debug|x64.Build.0 = Debug|Any CPU
401+
{158173F6-E776-422C-9127-8994C504867B}.Debug|x86.ActiveCfg = Debug|Any CPU
402+
{158173F6-E776-422C-9127-8994C504867B}.Debug|x86.Build.0 = Debug|Any CPU
403+
{158173F6-E776-422C-9127-8994C504867B}.Release|Any CPU.ActiveCfg = Release|Any CPU
404+
{158173F6-E776-422C-9127-8994C504867B}.Release|Any CPU.Build.0 = Release|Any CPU
405+
{158173F6-E776-422C-9127-8994C504867B}.Release|x64.ActiveCfg = Release|Any CPU
406+
{158173F6-E776-422C-9127-8994C504867B}.Release|x64.Build.0 = Release|Any CPU
407+
{158173F6-E776-422C-9127-8994C504867B}.Release|x86.ActiveCfg = Release|Any CPU
408+
{158173F6-E776-422C-9127-8994C504867B}.Release|x86.Build.0 = Release|Any CPU
375409
EndGlobalSection
376410
GlobalSection(SolutionProperties) = preSolution
377411
HideSolutionNode = FALSE
@@ -409,6 +443,11 @@ Global
409443
{03B9C775-9582-409F-B67F-6B8A0CE0C7AF} = {904D5094-55F9-4581-90AC-D6C1131F8152}
410444
{887E0794-798D-4127-847E-6F68D5C9B334} = {904D5094-55F9-4581-90AC-D6C1131F8152}
411445
{904D5094-55F9-4581-90AC-D6C1131F8152} = {00FFDC13-7397-46F1-897E-A62A7575D28A}
446+
{8B763117-8E13-0D1A-AFE0-5BC3FACCF29C} = {00FFDC13-7397-46F1-897E-A62A7575D28A}
447+
{05132055-211C-42D4-B40A-39E4BB066E7B} = {8B763117-8E13-0D1A-AFE0-5BC3FACCF29C}
448+
{1E1EDCAE-FD32-8442-764F-7F151A12D8D4} = {8F959801-D494-4CAF-9437-90F30472E169}
449+
{158173F6-E776-422C-9127-8994C504867B} = {8B763117-8E13-0D1A-AFE0-5BC3FACCF29C}
450+
{064C69BC-4576-336C-79BF-6771226CD9DC} = {8F959801-D494-4CAF-9437-90F30472E169}
412451
EndGlobalSection
413452
GlobalSection(ExtensibilityGlobals) = postSolution
414453
SolutionGuid = {C7433AE2-B1A0-4C1A-887E-5CAA7AAF67A6}

0 commit comments

Comments
 (0)