diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..9af10ce03 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,34 @@ +name: build-test + +on: + push: + branches: + - master + pull_request: + workflow_dispatch: + +jobs: + build: + timeout-minutes: 30 + runs-on: windows-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: '0' + + - name: Build project + run: dotnet build --configuration Release + + - name: Test project + continue-on-error: true + run: dotnet test --filter "TestCategory != SkipOnTeamCity" --logger:"trx;LogFilePrefix=results" --results-directory ./test-results + + - name: Publish test results + uses: EnricoMi/publish-unit-test-result-action/windows@v2 + with: + check_name: LibPalaso Tests + files: ./test-results/**/*.trx + action_fail: true + action_fail_on_inconclusive: true \ No newline at end of file diff --git a/ExtractCopyright.Tests/ExtractCopyright.Tests.csproj b/ExtractCopyright.Tests/ExtractCopyright.Tests.csproj index d7471589a..3acf03217 100644 --- a/ExtractCopyright.Tests/ExtractCopyright.Tests.csproj +++ b/ExtractCopyright.Tests/ExtractCopyright.Tests.csproj @@ -8,9 +8,10 @@ + - + diff --git a/SIL.Archiving.Tests/SIL.Archiving.Tests.csproj b/SIL.Archiving.Tests/SIL.Archiving.Tests.csproj index 625bf04e9..918907f46 100644 --- a/SIL.Archiving.Tests/SIL.Archiving.Tests.csproj +++ b/SIL.Archiving.Tests/SIL.Archiving.Tests.csproj @@ -10,10 +10,11 @@ + - + diff --git a/SIL.Archiving/SIL.Archiving.csproj b/SIL.Archiving/SIL.Archiving.csproj index 14048bbed..5bcf82d5b 100644 --- a/SIL.Archiving/SIL.Archiving.csproj +++ b/SIL.Archiving/SIL.Archiving.csproj @@ -26,6 +26,8 @@ + + diff --git a/SIL.Core.Desktop.Tests/SIL.Core.Desktop.Tests.csproj b/SIL.Core.Desktop.Tests/SIL.Core.Desktop.Tests.csproj index aed145a31..f29c5cfb6 100644 --- a/SIL.Core.Desktop.Tests/SIL.Core.Desktop.Tests.csproj +++ b/SIL.Core.Desktop.Tests/SIL.Core.Desktop.Tests.csproj @@ -8,10 +8,11 @@ + - + diff --git a/SIL.Core.Tests/SIL.Core.Tests.csproj b/SIL.Core.Tests/SIL.Core.Tests.csproj index ba28b5c8a..04becc466 100644 --- a/SIL.Core.Tests/SIL.Core.Tests.csproj +++ b/SIL.Core.Tests/SIL.Core.Tests.csproj @@ -8,10 +8,11 @@ + - + diff --git a/SIL.DblBundle.Tests/SIL.DblBundle.Tests.csproj b/SIL.DblBundle.Tests/SIL.DblBundle.Tests.csproj index 5ad318332..be14c797f 100644 --- a/SIL.DblBundle.Tests/SIL.DblBundle.Tests.csproj +++ b/SIL.DblBundle.Tests/SIL.DblBundle.Tests.csproj @@ -7,11 +7,12 @@ + - + diff --git a/SIL.DictionaryServices.Tests/SIL.DictionaryServices.Tests.csproj b/SIL.DictionaryServices.Tests/SIL.DictionaryServices.Tests.csproj index caf9a6643..11967c049 100644 --- a/SIL.DictionaryServices.Tests/SIL.DictionaryServices.Tests.csproj +++ b/SIL.DictionaryServices.Tests/SIL.DictionaryServices.Tests.csproj @@ -8,9 +8,10 @@ + - + diff --git a/SIL.Lexicon.Tests/SIL.Lexicon.Tests.csproj b/SIL.Lexicon.Tests/SIL.Lexicon.Tests.csproj index 3ef68977e..1a8105b1d 100644 --- a/SIL.Lexicon.Tests/SIL.Lexicon.Tests.csproj +++ b/SIL.Lexicon.Tests/SIL.Lexicon.Tests.csproj @@ -8,9 +8,10 @@ + - + diff --git a/SIL.Lift.Tests/SIL.Lift.Tests.csproj b/SIL.Lift.Tests/SIL.Lift.Tests.csproj index ae9ad4f0e..23d1db719 100644 --- a/SIL.Lift.Tests/SIL.Lift.Tests.csproj +++ b/SIL.Lift.Tests/SIL.Lift.Tests.csproj @@ -8,10 +8,11 @@ + - + diff --git a/SIL.Lift/Migration/Migrator.cs b/SIL.Lift/Migration/Migrator.cs index b319f1d4a..ebeac188f 100644 --- a/SIL.Lift/Migration/Migrator.cs +++ b/SIL.Lift/Migration/Migrator.cs @@ -56,12 +56,15 @@ public static string MigrateToLatestVersion(string pathToOriginalLift) private static void DoOneMigrationStep(string xslName, string migrationSourcePath, string migrationTargetPath) { - Stream xslstream = Assembly.GetExecutingAssembly().GetManifestResourceStream(xslName); - if (xslstream != null) + using (var xslstream = + Assembly.GetExecutingAssembly().GetManifestResourceStream(xslName)) { - XslCompiledTransform xsl = new XslCompiledTransform(); - xsl.Load(new XmlTextReader(xslstream)); - xsl.Transform(migrationSourcePath, migrationTargetPath); + if (xslstream != null) + { + XslCompiledTransform xsl = new XslCompiledTransform(); + xsl.Load(new XmlTextReader(xslstream)); + xsl.Transform(migrationSourcePath, migrationTargetPath); + } } } diff --git a/SIL.Linux.Logging.Tests/SIL.Linux.Logging.Tests.csproj b/SIL.Linux.Logging.Tests/SIL.Linux.Logging.Tests.csproj index c68a40773..5cda4581c 100644 --- a/SIL.Linux.Logging.Tests/SIL.Linux.Logging.Tests.csproj +++ b/SIL.Linux.Logging.Tests/SIL.Linux.Logging.Tests.csproj @@ -8,9 +8,10 @@ + - + diff --git a/SIL.Media.Tests/SIL.Media.Tests.csproj b/SIL.Media.Tests/SIL.Media.Tests.csproj index 02ac3fc41..32411b10c 100644 --- a/SIL.Media.Tests/SIL.Media.Tests.csproj +++ b/SIL.Media.Tests/SIL.Media.Tests.csproj @@ -13,11 +13,12 @@ + - + diff --git a/SIL.Media/SIL.Media.csproj b/SIL.Media/SIL.Media.csproj index 1f7874bc8..7e3df89cb 100644 --- a/SIL.Media/SIL.Media.csproj +++ b/SIL.Media/SIL.Media.csproj @@ -21,6 +21,8 @@ + + diff --git a/SIL.Scripture.Tests/SIL.Scripture.Tests.csproj b/SIL.Scripture.Tests/SIL.Scripture.Tests.csproj index 03e90300d..927604ab3 100644 --- a/SIL.Scripture.Tests/SIL.Scripture.Tests.csproj +++ b/SIL.Scripture.Tests/SIL.Scripture.Tests.csproj @@ -7,10 +7,11 @@ + - + diff --git a/SIL.TestUtilities.Tests/SIL.TestUtilities.Tests.csproj b/SIL.TestUtilities.Tests/SIL.TestUtilities.Tests.csproj index 1acc68128..92016a952 100644 --- a/SIL.TestUtilities.Tests/SIL.TestUtilities.Tests.csproj +++ b/SIL.TestUtilities.Tests/SIL.TestUtilities.Tests.csproj @@ -8,9 +8,10 @@ + - + diff --git a/SIL.Windows.Forms.Keyboarding.Tests/SIL.Windows.Forms.Keyboarding.Tests.csproj b/SIL.Windows.Forms.Keyboarding.Tests/SIL.Windows.Forms.Keyboarding.Tests.csproj index e50565083..a4fa46ae3 100644 --- a/SIL.Windows.Forms.Keyboarding.Tests/SIL.Windows.Forms.Keyboarding.Tests.csproj +++ b/SIL.Windows.Forms.Keyboarding.Tests/SIL.Windows.Forms.Keyboarding.Tests.csproj @@ -7,12 +7,13 @@ + - + diff --git a/SIL.Windows.Forms.Scripture.Tests/SIL.Windows.Forms.Scripture.Tests.csproj b/SIL.Windows.Forms.Scripture.Tests/SIL.Windows.Forms.Scripture.Tests.csproj index f93d4b9c9..51ba88ea6 100644 --- a/SIL.Windows.Forms.Scripture.Tests/SIL.Windows.Forms.Scripture.Tests.csproj +++ b/SIL.Windows.Forms.Scripture.Tests/SIL.Windows.Forms.Scripture.Tests.csproj @@ -10,9 +10,10 @@ + - + diff --git a/SIL.Windows.Forms.Tests/SIL.Windows.Forms.Tests.csproj b/SIL.Windows.Forms.Tests/SIL.Windows.Forms.Tests.csproj index 8a6c4bae6..7d3c9e493 100644 --- a/SIL.Windows.Forms.Tests/SIL.Windows.Forms.Tests.csproj +++ b/SIL.Windows.Forms.Tests/SIL.Windows.Forms.Tests.csproj @@ -22,11 +22,12 @@ + - + diff --git a/SIL.Windows.Forms.WritingSystems.Tests/SIL.Windows.Forms.WritingSystems.Tests.csproj b/SIL.Windows.Forms.WritingSystems.Tests/SIL.Windows.Forms.WritingSystems.Tests.csproj index 3be9aa2d8..b40da9856 100644 --- a/SIL.Windows.Forms.WritingSystems.Tests/SIL.Windows.Forms.WritingSystems.Tests.csproj +++ b/SIL.Windows.Forms.WritingSystems.Tests/SIL.Windows.Forms.WritingSystems.Tests.csproj @@ -10,12 +10,13 @@ + - + diff --git a/SIL.Windows.Forms/SIL.Windows.Forms.csproj b/SIL.Windows.Forms/SIL.Windows.Forms.csproj index ca150f590..cb3249148 100644 --- a/SIL.Windows.Forms/SIL.Windows.Forms.csproj +++ b/SIL.Windows.Forms/SIL.Windows.Forms.csproj @@ -23,6 +23,8 @@ + + diff --git a/SIL.WritingSystems.Tests/SIL.WritingSystems.Tests.csproj b/SIL.WritingSystems.Tests/SIL.WritingSystems.Tests.csproj index dfb75fc9b..aacbeb73d 100644 --- a/SIL.WritingSystems.Tests/SIL.WritingSystems.Tests.csproj +++ b/SIL.WritingSystems.Tests/SIL.WritingSystems.Tests.csproj @@ -5,12 +5,13 @@ + - + diff --git a/SIL.WritingSystems/SIL.WritingSystems.csproj b/SIL.WritingSystems/SIL.WritingSystems.csproj index a8e7bd61c..ca4f1b81b 100644 --- a/SIL.WritingSystems/SIL.WritingSystems.csproj +++ b/SIL.WritingSystems/SIL.WritingSystems.csproj @@ -15,6 +15,8 @@ + +