Skip to content
Open
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
7f5c9af
changes to MakeIdentifications
mzhastings Apr 1, 2025
30de0b0
Alex Commit: Made internals visible to TestFlashLFQ
mzhastings Apr 1, 2025
9adfa75
added helper to make identifications
mzhastings Apr 3, 2025
93c2c3e
modified incomplete/incorrect tests
mzhastings Apr 3, 2025
a9e03bd
made recommended changes
mzhastings Apr 3, 2025
0741148
stage
mzhastings Apr 17, 2025
a47822a
wrote tests to figure out flashLFQ issue
mzhastings Apr 17, 2025
f6bf2cd
Fixed issue where psmtsv files w/o PEP info couldn't be read in
Alexander-Sol Apr 22, 2025
969c224
Merge pull request #1 from Alexander-Sol/fixMI
mzhastings Apr 22, 2025
123fac3
changes to account for RT and spectrafile errors
mzhastings Apr 22, 2025
0262f49
fixed tests to correspond to fragger reader changes
mzhastings Apr 24, 2025
cd2252c
added to tests to account for missing PEP and PEP_QValue tests
mzhastings Apr 24, 2025
bee058c
deleted unused mzml file
mzhastings Jun 9, 2025
ad8a65b
added test stmts to improve codecov (missing PEP, PEP-QValue, and RT)
mzhastings Jun 9, 2025
05c8a62
Merge remote-tracking branch 'upstream/master' into fixMI
mzhastings Jun 9, 2025
3199c95
fixed nuspec version
mzhastings Jun 17, 2025
2c43eb0
Merge branch 'master' into fixMI
mzhastings Jun 17, 2025
c855ffc
Merge branch 'master' into fixMI
mzhastings Jun 17, 2025
c3eca54
fixed nuspec version on correct branch
mzhastings Jun 17, 2025
04db885
Merge branch 'fixMI' of https://github.com/mzhastings/mzLib into fixMI
mzhastings Jun 17, 2025
eb33927
fixed namespace issue with readers
mzhastings Jun 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public class MsFraggerPsm : IQuantifiableRecord
public int Charge { get; set; }

[Name("Retention")]
public double RetentionTime { get; set; }
public double RetentionTimeSeconds { get; set; }

[Name("Observed Mass")]
public double ObservedMass { get; set; }
Expand Down Expand Up @@ -146,11 +146,13 @@ public class MsFraggerPsm : IQuantifiableRecord
[Ignore]
public int OneBasedScanNumber => _oneBasedScanNumber ??= int.Parse(Spectrum.Split('.')[1]);

[Ignore] public double RetentionTime => RetentionTimeSeconds / 60.0;

#endregion

#region IQuantifiableRecord Implementation

[Ignore] public string FileName => SpectrumFilePath;
[Ignore] public string FileName => FileNameWithoutExtension;

[Ignore] public List<(string, string, string)> ProteinGroupInfos
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -169,8 +169,8 @@ protected SpectrumMatchFromTsv(string line, char[] split, Dictionary<string, int
NextResidue = (parsedHeader[SpectrumMatchFromTsvHeader.NextResidue] < 0) ? null : spl[parsedHeader[SpectrumMatchFromTsvHeader.NextResidue]].Trim();
QValueNotch = (parsedHeader[SpectrumMatchFromTsvHeader.QValueNotch] < 0) ? null : (double?)double.Parse(spl[parsedHeader[SpectrumMatchFromTsvHeader.QValueNotch]].Trim(), CultureInfo.InvariantCulture);
RetentionTime = (parsedHeader[SpectrumMatchFromTsvHeader.Ms2ScanRetentionTime] < 0) ? -1 : double.TryParse(spl[parsedHeader[SpectrumMatchFromTsvHeader.Ms2ScanRetentionTime]].Trim(), CultureInfo.InvariantCulture, out double rt) ? rt : -1;
PEP = double.Parse(spl[parsedHeader[SpectrumMatchFromTsvHeader.PEP]].Trim(), CultureInfo.InvariantCulture);
PEP_QValue = double.Parse(spl[parsedHeader[SpectrumMatchFromTsvHeader.PEP_QValue]].Trim(), CultureInfo.InvariantCulture);
PEP = (parsedHeader[SpectrumMatchFromTsvHeader.PEP] < 0 ) ? double.NaN : double.Parse(spl[parsedHeader[SpectrumMatchFromTsvHeader.PEP]].Trim(), CultureInfo.InvariantCulture);
PEP_QValue = (parsedHeader[SpectrumMatchFromTsvHeader.PEP_QValue] < 0) ? double.NaN : double.Parse(spl[parsedHeader[SpectrumMatchFromTsvHeader.PEP_QValue]].Trim(), CultureInfo.InvariantCulture);
VariantCrossingIons = FindVariantCrossingIons();
SpectralAngle = (parsedHeader[SpectrumMatchFromTsvHeader.SpectralAngle] < 0)
? null
Expand Down
90 changes: 90 additions & 0 deletions mzLib/Test/FileReadingTests/SearchResults/AllPSMs2.psmtsv

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public void TestLoadResults(string path)
MsFraggerCombinedResults ms = new MsFraggerCombinedResults(filePath);
ms.LoadResults();

List<string> results = ms.Results.Select(psm => psm.FileName).ToList();
List<string> results = ms.Results.Select(psm => psm.SpectrumFilePath).ToList();

NUnit.Framework.Assert.That(results.Count(s => s.Contains("A_1")).Equals(4));
NUnit.Framework.Assert.That(results.Count(s => s.Contains("A_2")).Equals(4));
Expand Down
4 changes: 2 additions & 2 deletions mzLib/Test/FileReadingTests/TestMsFraggerResultFiles.cs
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ public void TestMsFraggerPsmFirstAndLastCorrect()
Assert.That(first.NextAminoAcid, Is.EqualTo('K'));
Assert.That(first.PeptideLength, Is.EqualTo(7));
Assert.That(first.Charge, Is.EqualTo(2));
Assert.That(first.RetentionTime, Is.EqualTo(1.9398));
Assert.That(first.RetentionTime, Is.EqualTo(0.03233).Within(0.0001));
Assert.That(first.ObservedMass, Is.EqualTo(669.4164));
Assert.That(first.CalibratedObservedMass, Is.EqualTo(669.4123));
Assert.That(first.ObservedMz, Is.EqualTo(335.7155));
Expand Down Expand Up @@ -141,7 +141,7 @@ public void TestMsFraggerPsmFirstAndLastCorrect()
Assert.That(last.NextAminoAcid, Is.EqualTo('V'));
Assert.That(last.PeptideLength, Is.EqualTo(7));
Assert.That(last.Charge, Is.EqualTo(2));
Assert.That(last.RetentionTime, Is.EqualTo(19.114));
Assert.That(last.RetentionTime, Is.EqualTo(0.3186).Within(0.0001));
Assert.That(last.ObservedMass, Is.EqualTo(724.3984));
Assert.That(last.CalibratedObservedMass, Is.EqualTo
(724.3949));
Expand Down
18 changes: 18 additions & 0 deletions mzLib/Test/FileReadingTests/TestPsmFromTsv.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
using Readers;
using MzLibUtil;
using FlashLFQ;
using Easy.Common.Extensions;

namespace Test.FileReadingTests
{
Expand Down Expand Up @@ -133,6 +134,10 @@ public static void TestPsmFromTsvDisambiguatingConstructor()
List<PsmFromTsv> psms = SpectrumMatchTsvReader.ReadPsmTsv(psmTsvPath, out warnings);
PsmFromTsv psm = psms.First();

// assert that in 1st elt PEP and PEP_Q values exists and are less than one
Assert.That(psm.PEP, Is.LessThan(1.0));
Assert.That(psm.PEP_QValue, Is.LessThan(1.0));

// non ambiguous construction should not be successful
string fullSeq = psm.FullSequence;
fullSeq = fullSeq.Substring(0, fullSeq.Length - 1);
Expand Down Expand Up @@ -193,6 +198,19 @@ public static void TestPsmFromTsvDisambiguatingConstructor()
}
}

[Test]
public static void TestIncompletePsmFile()
{
string psmTsvPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"FileReadingTests\SearchResults\AllPSMs2.psmtsv");
List<string> warnings = new();
List<PsmFromTsv> psms = SpectrumMatchTsvReader.ReadPsmTsv(psmTsvPath, out warnings);
PsmFromTsv psm = psms.First();

Assert.That(psm.PEP, Is.NaN);
Assert.That(psm.PEP_QValue, Is.NaN);
Assert.That(psm.RetentionTime, Is.EqualTo(-1));
}

[Test]
public static void TestParseModification()
{
Expand Down
3 changes: 3 additions & 0 deletions mzLib/Test/Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -495,6 +495,9 @@
<None Update="DoubleProtease.tsv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="FileReadingTests\SearchResults\AllPSMs2.psmtsv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="FileReadingTests\SearchResults\BottomUpExample.psmtsv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
Expand Down
Loading
Loading