Skip to content

Commit 1dc2165

Browse files
committed
Begin fixing and expanding tests after ability to instantiate parameters
1 parent c918578 commit 1dc2165

4 files changed

Lines changed: 35 additions & 22 deletions

File tree

conftest.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from pathlib import Path
33

44
from corems.transient.input.brukerSolarix import ReadBrukerSolarix
5+
from corems.encapsulation.factory.parameters import MSParameters
56

67
@pytest.fixture
78
def mass_spectrum_ftms(bruker_transient):
@@ -10,11 +11,7 @@ def mass_spectrum_ftms(bruker_transient):
1011
mass_spectrum = bruker_transient.get_mass_spectrum(
1112
plot_result=False, auto_process=False, keep_profile=True
1213
)
13-
14-
mass_spectrum.settings.noise_threshold_method = "log"
15-
mass_spectrum.settings.noise_threshold_log_nsigma = 12
16-
mass_spectrum.mspeaks_settings.peak_min_prominence_percent = 0.01
17-
14+
mass_spectrum.parameters = MSParameters(use_defaults=True)
1815
# Process the mass spectrum
1916
mass_spectrum.process_mass_spec()
2017

tests/test_calibration.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
from corems.molecular_id.search.molecularFormulaSearch import SearchMolecularFormulas
1515
from corems.transient.input.brukerSolarix import ReadBrukerSolarix
1616

17+
#TODO KRH: Remove this test file once all tests have been moved to test_calibration2.py
18+
1719
def create_mass_spectrum():
1820
# Creates a profile mode mass spectrum object
1921
'''parse transient data from Bruker into a mass spectrum class object

tests/test_calibration2.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
from corems.molecular_id.search.findOxygenPeaks import FindOxygenPeaks
1313
from corems.molecular_id.search.molecularFormulaSearch import SearchMolecularFormulas
1414

15+
#TODO KRH: Revisit all tests in this file
16+
1517
@pytest.fixture
1618
def mass_spectrum_centroid():
1719
file_location = Path.cwd() / "tests/tests_data/ftms/ESI_NEG_SRFA_UnCal_Unassign.csv"

tests/test_input.py

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ def test_import_booster_mass_spectrum_hdf():
4545

4646
booster_reader = ReadHDF_BoosterMassSpectrum(file_path, isCentroid=False)
4747

48-
mass_spectrum = booster_reader.get_mass_spectrum(auto_process=True)
48+
mass_spectrum = booster_reader.get_mass_spectrum(auto_process=False)
49+
mass_spectrum.parameters = MSParameters(use_defaults=True)
50+
mass_spectrum.process_mass_spec()
4951

5052
assert len(mass_spectrum) > 0
5153
assert mass_spectrum.number_average_molecular_weight() > 0
@@ -114,12 +116,13 @@ def test_import_corems_hdf5():
114116
assert len(mass_spectrum) == 20
115117

116118
# Import unprocessed mass spectrum, check that the mass spectrum is loaded correctly
117-
MSParameters.mass_spectrum.noise_threshold_method = 'relative_abundance'
118119
mass_spectrum2 = mass_list_reader.get_mass_spectrum(
119120
load_settings=False,
120121
auto_process=False,
121122
load_molecular_formula=False
122123
)
124+
mass_spectrum2.parameters.mass_spectrum.noise_threshold_method = 'relative_abundance'
125+
123126
assert mass_spectrum2.settings.noise_threshold_method == 'relative_abundance'
124127
assert len(mass_spectrum2) == 0
125128

@@ -168,24 +171,30 @@ def test_import_thermo_profile_mass_list():
168171
polarity = +1
169172

170173
mass_spectrum = mass_list_reader.get_mass_spectrum(
171-
polarity, auto_process=True, loadSettings=False
174+
polarity, auto_process=False, loadSettings=False
172175
)
176+
mass_spectrum.parameters = MSParameters(use_defaults=True)
177+
mass_spectrum.process_mass_spec()
173178

174179
assert mass_spectrum.to_dataframe().shape[0] > 0
175180
assert round(mass_spectrum[0].mz_exp, 0) == 59
176181

177182

178183
def test_import_numpy_array_profile(mass_spectrum_ftms):
184+
#TODO KRH: This test is failing to create a replicated mass spectrum as the original one
179185
mass_spectrum_new = ms_from_array_profile(
180186
mz=mass_spectrum_ftms.mz_exp_profile,
181187
abundance=mass_spectrum_ftms.abundance_profile,
182188
dataname="test",
183189
polarity=-1,
184190
data_type=Labels.booster_profile,
191+
auto_process=False
185192
)
186-
187-
assert mass_spectrum_new.to_dataframe().shape[0] > 0
188-
assert round(mass_spectrum_new[0].mz_exp, 0) == 190
193+
mass_spectrum_new.parameters = mass_spectrum_ftms.parameters
194+
mass_spectrum_new.process_mass_spec()
195+
196+
assert mass_spectrum_new.to_dataframe().shape == mass_spectrum_ftms.to_dataframe().shape
197+
assert round(mass_spectrum_new[0].mz_exp, 0) == round(mass_spectrum_ftms[0].mz_exp, 0)
189198
assert not mass_spectrum_new.is_centroid
190199

191200
mass_spectrum_new.plot_mz_domain_profile()
@@ -254,13 +263,12 @@ def test_import_mass_list():
254263
# polarity need to be set or read from the file
255264
polarity = -1
256265

257-
# TODO KRH: We should be able to remove these parameters after MR https://code.emsl.pnl.gov/mass-spectrometry/corems/-/merge_requests/122
258-
MSParameters.mass_spectrum.noise_threshold_method = "relative_abundance"
259-
MSParameters.mass_spectrum.noise_threshold_min_relative_abundance = 1
260-
261266
mass_list_reader = ReadMassList(file_location)
262267

263-
mass_spectrum = mass_list_reader.get_mass_spectrum(polarity, auto_process=True)
268+
mass_spectrum = mass_list_reader.get_mass_spectrum(polarity, auto_process=False)
269+
mass_spectrum.parameters.mass_spectrum.noise_threshold_method = "relative_abundance"
270+
mass_spectrum.parameters.mass_spectrum.noise_threshold_min_relative_abundance = 1
271+
mass_spectrum.process_mass_spec()
264272

265273
assert mass_spectrum.baseline_noise > 10000
266274
assert mass_spectrum.baseline_noise_std > 10000
@@ -278,23 +286,27 @@ def test_import_mass_list():
278286

279287

280288
def test_import_thermo_average():
289+
#TODO KRH: Revisit this test to check that assertions are implemented at each step
281290
file_location = Path.cwd() / "tests/tests_data/ftms/" / "SRFA_NEG_ESI_ORB.raw"
282291

283-
# change parameters here
284-
MSParameters.mass_spectrum.noise_threshold_method = "relative_abundance"
285-
MSParameters.mass_spectrum.noise_threshold_min_relative_abundance = 1
286-
287292
# creates the parser obj
288293
parser = rawFileReader.ImportMassSpectraThermoMSFileReader(file_location)
289294

290295
# sums all the mass spectra
291-
292296
parser.chromatogram_settings.scans = (-1, -1)
293-
mass_spectrum = parser.get_average_mass_spectrum(spectrum_mode="profile")
297+
mass_spectrum = parser.get_average_mass_spectrum(spectrum_mode="profile", auto_process=False)
298+
mass_spectrum.parameters = MSParameters(use_defaults=True)
299+
mass_spectrum.parameters.mass_spectrum.noise_threshold_method = "relative_abundance"
300+
mass_spectrum.parameters.mass_spectrum.noise_threshold_min_relative_abundance = 1
301+
mass_spectrum.process_mass_spec()
294302

295303
# sums scans in selected range
296304
parser.chromatogram_settings.scans = (1, 1)
297305
mass_spectrum = parser.get_average_mass_spectrum(spectrum_mode="profile")
306+
mass_spectrum.parameters = MSParameters(use_defaults=True)
307+
mass_spectrum.parameters.mass_spectrum.noise_threshold_method = "relative_abundance"
308+
mass_spectrum.parameters.mass_spectrum.noise_threshold_min_relative_abundance = 1
309+
mass_spectrum.process_mass_spec()
298310

299311
parser.chromatogram_settings.scans = [1]
300312

0 commit comments

Comments
 (0)