Skip to content

Commit 8395ef7

Browse files
committed
Add rendering regression tests
1 parent 4193580 commit 8395ef7

34 files changed

Lines changed: 439 additions & 1 deletion

.github/workflows/build.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,17 @@ jobs:
5252
run: dotnet build Source/HtmlRenderer.sln --configuration Release --no-restore
5353

5454
- name: Run Tests
55+
if: runner.os == 'Windows'
5556
run: dotnet test Source/HtmlRenderer.sln --configuration Release --no-build --logger trx --results-directory ${{ github.workspace }}/TestResults
5657
env:
5758
PDF_OUTPUT_DIRECTORY: ${{ github.workspace }}/pdf-artifacts/${{ matrix.platform.name }}-${{ matrix.dotnet.name }}
59+
HTML_RENDERER_REGRESSION_OUTPUT_DIRECTORY: ${{ github.workspace }}/image-regression/${{ matrix.platform.name }}-${{ matrix.dotnet.name }}
60+
61+
- name: Run Tests
62+
if: runner.os != 'Windows'
63+
run: dotnet test Source/Test/**/*.Test.csproj --configuration Release --no-build --logger trx --results-directory ${{ github.workspace }}/TestResults
64+
env:
65+
PDF_OUTPUT_DIRECTORY: ${{ github.workspace }}/pdf-artifacts/${{ matrix.platform.name }}-${{ matrix.dotnet.name }}
5866

5967
- name: Create HtmlRenderer.Core NuGet package
6068
run: dotnet pack Source/HtmlRenderer/HtmlRenderer.csproj --configuration Release --include-symbols -p:SymbolPackageFormat=snupkg --no-build --verbosity normal --output ${{ env.NuGetDirectory }}
@@ -82,6 +90,14 @@ jobs:
8290
path: ${{ github.workspace }}/pdf-artifacts/**/*.pdf
8391
if-no-files-found: ignore
8492

93+
- name: Upload image regression artifacts
94+
if: always()
95+
uses: actions/upload-artifact@v7
96+
with:
97+
name: "Image regression artifacts (${{ matrix.platform.name }} ${{ matrix.dotnet.name }})"
98+
path: ${{ github.workspace }}/image-regression/**/*.png
99+
if-no-files-found: ignore
100+
85101
- name: NuGet Login
86102
if: startsWith(github.ref, 'refs/tags/') && matrix.dotnet.name == '.NET 8' && runner.os == 'Windows'
87103
uses: NuGet/login@v1

Source/HtmlRenderer.sln

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{E508FA78-D
2323
EndProject
2424
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HtmlRenderer.PdfSharp.Test", "Test\HtmlRenderer.PdfSharp.Test\HtmlRenderer.PdfSharp.Test.csproj", "{AF39851E-37B9-409E-A34D-CE091A098C86}"
2525
EndProject
26+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HtmlRenderer.Test", "Test\HtmlRenderer.IntegrationTest\HtmlRenderer.IntegrationTest.csproj", "{A12F4432-337B-4030-B834-5D312A9FB16C}"
27+
EndProject
2628
Global
2729
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2830
Debug|Any CPU = Debug|Any CPU
@@ -115,6 +117,18 @@ Global
115117
{AF39851E-37B9-409E-A34D-CE091A098C86}.Release|Mixed Platforms.Build.0 = Release|Any CPU
116118
{AF39851E-37B9-409E-A34D-CE091A098C86}.Release|x86.ActiveCfg = Release|Any CPU
117119
{AF39851E-37B9-409E-A34D-CE091A098C86}.Release|x86.Build.0 = Release|Any CPU
120+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
121+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|Any CPU.Build.0 = Debug|Any CPU
122+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
123+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
124+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|x86.ActiveCfg = Debug|Any CPU
125+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Debug|x86.Build.0 = Debug|Any CPU
126+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|Any CPU.ActiveCfg = Release|Any CPU
127+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|Any CPU.Build.0 = Release|Any CPU
128+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
129+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
130+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|x86.ActiveCfg = Release|Any CPU
131+
{A12F4432-337B-4030-B834-5D312A9FB16C}.Release|x86.Build.0 = Release|Any CPU
118132
EndGlobalSection
119133
GlobalSection(SolutionProperties) = preSolution
120134
HideSolutionNode = FALSE
@@ -124,6 +138,7 @@ Global
124138
{8AD34FE8-8382-4A8A-B3AA-A0392ED42423} = {E263EA16-2E6A-4269-A319-AA2F97ADA8E1}
125139
{F02E0216-4AE3-474F-9381-FCB93411CDB0} = {E263EA16-2E6A-4269-A319-AA2F97ADA8E1}
126140
{AF39851E-37B9-409E-A34D-CE091A098C86} = {E508FA78-D57E-492F-9BF7-23640001848A}
141+
{A12F4432-337B-4030-B834-5D312A9FB16C} = {E508FA78-D57E-492F-9BF7-23640001848A}
127142
EndGlobalSection
128143
GlobalSection(ExtensibilityGlobals) = postSolution
129144
SolutionGuid = {902788D6-3165-491D-B860-DF2F74E66C1D}
83.6 KB
Loading
31.2 KB
Loading
69.3 KB
Loading
5.14 KB
Loading
7.42 KB
Loading
10.4 KB
Loading
509 KB
Loading
700 KB
Loading

0 commit comments

Comments
 (0)