diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..f6325c098 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,37 @@ +# This workflow will build a .NET project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net + +name: Build + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build: + runs-on: ${{ matrix.os }} + name: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + include: + - os: ubuntu-latest + configuration: UbuntuMac + - os: macos-latest + configuration: UbuntuMac + - os: windows-latest + configuration: Release + + steps: + - uses: actions/checkout@v4 + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 8.0.204 + - name: Restore dependencies + run: dotnet restore ./MetaMorpheus/MetaMorpheus.sln + - name: Build + run: dotnet build --no-restore ./MetaMorpheus/MetaMorpheus.sln --configuration ${{ matrix.configuration }} diff --git a/MetaMorpheus/GUI/GUI.csproj b/MetaMorpheus/GUI/GUI.csproj index 29027f365..d57835e75 100644 --- a/MetaMorpheus/GUI/GUI.csproj +++ b/MetaMorpheus/GUI/GUI.csproj @@ -16,6 +16,7 @@ full true Icons\MMnice.ico + true diff --git a/MetaMorpheus/GuiFunctions/GuiFunctions.csproj b/MetaMorpheus/GuiFunctions/GuiFunctions.csproj index 27f6145ae..a45054b18 100644 --- a/MetaMorpheus/GuiFunctions/GuiFunctions.csproj +++ b/MetaMorpheus/GuiFunctions/GuiFunctions.csproj @@ -6,6 +6,7 @@ full true true + true diff --git a/MetaMorpheus/MetaMorpheus.sln b/MetaMorpheus/MetaMorpheus.sln index d03b322a1..f6a4a2a48 100644 --- a/MetaMorpheus/MetaMorpheus.sln +++ b/MetaMorpheus/MetaMorpheus.sln @@ -26,40 +26,54 @@ Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU + UbuntuMac|Any CPU = UbuntuMac|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.Debug|Any CPU.Build.0 = Debug|Any CPU {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.Release|Any CPU.ActiveCfg = Release|Any CPU {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.Release|Any CPU.Build.0 = Release|Any CPU + {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU + {FD20EBBA-F4C5-40D6-AD61-48A7EB255DAE}.UbuntuMac|Any CPU.Build.0 = Release|Any CPU {C654FC97-FBD1-43D7-9F61-35FDD1A4E0AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C654FC97-FBD1-43D7-9F61-35FDD1A4E0AD}.Debug|Any CPU.Build.0 = Debug|Any CPU {C654FC97-FBD1-43D7-9F61-35FDD1A4E0AD}.Release|Any CPU.ActiveCfg = Release|Any CPU {C654FC97-FBD1-43D7-9F61-35FDD1A4E0AD}.Release|Any CPU.Build.0 = Release|Any CPU + {C654FC97-FBD1-43D7-9F61-35FDD1A4E0AD}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.Debug|Any CPU.Build.0 = Debug|Any CPU {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.Release|Any CPU.ActiveCfg = Release|Any CPU {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.Release|Any CPU.Build.0 = Release|Any CPU + {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU + {FFAE3A5E-B5AE-4CD0-ABF9-703C91F1C7D6}.UbuntuMac|Any CPU.Build.0 = Release|Any CPU {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.Debug|Any CPU.Build.0 = Debug|Any CPU {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.Release|Any CPU.ActiveCfg = Release|Any CPU {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.Release|Any CPU.Build.0 = Release|Any CPU + {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU + {9CD3D75C-4E3C-40AC-A3D8-C32DD528DB7F}.UbuntuMac|Any CPU.Build.0 = Release|Any CPU {BE72541A-66A4-4958-9D19-56ACC7D3876B}.Debug|Any CPU.ActiveCfg = Debug|x64 {BE72541A-66A4-4958-9D19-56ACC7D3876B}.Debug|Any CPU.Build.0 = Debug|x64 {BE72541A-66A4-4958-9D19-56ACC7D3876B}.Release|Any CPU.ActiveCfg = Release|x64 {BE72541A-66A4-4958-9D19-56ACC7D3876B}.Release|Any CPU.Build.0 = Release|x64 + {BE72541A-66A4-4958-9D19-56ACC7D3876B}.UbuntuMac|Any CPU.ActiveCfg = Release|x64 {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.Debug|Any CPU.Build.0 = Debug|Any CPU {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.Release|Any CPU.ActiveCfg = Release|Any CPU {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.Release|Any CPU.Build.0 = Release|Any CPU + {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU + {653015B3-CC5A-4D1C-AAD3-1CE2A0C4D197}.UbuntuMac|Any CPU.Build.0 = Release|Any CPU {7EE028A9-75A2-450F-A9A7-76559ED15419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7EE028A9-75A2-450F-A9A7-76559ED15419}.Debug|Any CPU.Build.0 = Debug|Any CPU {7EE028A9-75A2-450F-A9A7-76559ED15419}.Release|Any CPU.ActiveCfg = Release|Any CPU {7EE028A9-75A2-450F-A9A7-76559ED15419}.Release|Any CPU.Build.0 = Release|Any CPU + {7EE028A9-75A2-450F-A9A7-76559ED15419}.UbuntuMac|Any CPU.ActiveCfg = Release|Any CPU + {7EE028A9-75A2-450F-A9A7-76559ED15419}.UbuntuMac|Any CPU.Build.0 = Release|Any CPU {E0EA5AC4-24A9-43DC-8FBC-CCEB3B9935B6}.Debug|Any CPU.ActiveCfg = Debug|x64 {E0EA5AC4-24A9-43DC-8FBC-CCEB3B9935B6}.Debug|Any CPU.Build.0 = Debug|x64 {E0EA5AC4-24A9-43DC-8FBC-CCEB3B9935B6}.Release|Any CPU.ActiveCfg = Release|x64 {E0EA5AC4-24A9-43DC-8FBC-CCEB3B9935B6}.Release|Any CPU.Build.0 = Release|x64 + {E0EA5AC4-24A9-43DC-8FBC-CCEB3B9935B6}.UbuntuMac|Any CPU.ActiveCfg = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/MetaMorpheus/Test/SpectralRecoveryTest.cs b/MetaMorpheus/Test/SpectralRecoveryTest.cs index 40c519ec4..3257361c6 100644 --- a/MetaMorpheus/Test/SpectralRecoveryTest.cs +++ b/MetaMorpheus/Test/SpectralRecoveryTest.cs @@ -285,6 +285,8 @@ public static void MiniClassicSearchEngineTest() [Test] public static void SpectralWriterTest() { + foreach (var specLibPath in Directory.GetFiles(outputFolder, "*.msp", SearchOption.AllDirectories)) + File.Delete(specLibPath); PostSearchAnalysisTask postSearchTask = new PostSearchAnalysisTask() { @@ -377,7 +379,7 @@ public static void SpectralWriterTest() postSearchTask.Run(); var libraryList = Directory.GetFiles(path, "*.*", SearchOption.AllDirectories); - string updateLibraryPath = libraryList.First(p => p.Contains("SpectralLibrary") && !p.Contains(matchingvalue)).ToString(); + string updateLibraryPath = libraryList.First(p => p.Contains("updateSpectralLibrary") && !p.Contains(matchingvalue)).ToString(); var updatedLibraryWithoutDecoy = new SpectralLibrary(new List { Path.Combine(path, updateLibraryPath) }); Assert.That(updatedLibraryWithoutDecoy.TryGetSpectrum("EESGKPGAHVTVK", 2, out spectrum)); diff --git a/MetaMorpheus/Test/Test.csproj b/MetaMorpheus/Test/Test.csproj index 10ecccb53..12286e77f 100644 --- a/MetaMorpheus/Test/Test.csproj +++ b/MetaMorpheus/Test/Test.csproj @@ -5,6 +5,7 @@ false Debug;Release full + true