def test_identify_buffer_measurements(): test_df = make_test_data() assert (nd._identify_buffer_measurements(test_df) == [1]).all() test_df.loc[2, "Sample ID"] = "Buffer_100_0.5" assert (nd._identify_buffer_measurements(test_df) == [1, 2]).all() test_df.loc[:, "Sample ID"] = "Peptide_100_0.5" assert len(nd._identify_buffer_measurements(test_df)) == 0
def test_analyze_sample_names_buffer_dropping_only(): test_df = make_test_data() dropped = nd.analyze_sample_names(test_df, drop_buffers=True) assert len(dropped) == 2 assert len(nd._identify_buffer_measurements(dropped)) == 0 not_dropped = nd.analyze_sample_names(test_df, drop_buffers=False) assert len(not_dropped) == 3 assert len(nd._identify_buffer_measurements(not_dropped)) == 1 assert len(not_dropped.loc[not_dropped["Sample ID"] == "blank", :]) == 1
def test_handle_incorrectly_named_samples_drop_buffers_only(): test_df = make_test_data() with pytest.warns(UserWarning): dropped = nd._handle_incorrectly_named_samples( test_df, [0], drop_incorrectly_named_samples=False, drop_buffers=True) assert len(dropped) == 2 assert len(nd._identify_buffer_measurements(dropped)) == 0
def test_run_all_explicitly_keep_buffers(): df = test_tidy_data( to_glob=_parent_dir + "/test_data/*.csv", file_reader_kwargs={}, drop_incorrectly_named_samples=True, drop_buffers=False, ) assert "RG7" in df["Peptide"].values assert len(nd._identify_buffer_measurements(df)) > 0
def test_analyze_sample_names_drop_incorrectly_named_samples(): test_df = make_test_data() test_df.loc[2, "Sample ID"] = "hello, world!" dropped_both = nd.analyze_sample_names(test_df, drop_incorrectly_named_samples=True, drop_buffers=True) assert len(dropped_both) == 1 assert len(nd._identify_buffer_measurements(dropped_both)) == 0 dropped_incorrect_not_buffers = nd.analyze_sample_names( test_df, drop_incorrectly_named_samples=True, drop_buffers=False) assert len(dropped_incorrect_not_buffers) == 2 assert len( nd._identify_buffer_measurements(dropped_incorrect_not_buffers)) == 1 with pytest.warns(UserWarning) as sample_name_divergence: nd.analyze_sample_names(test_df, drop_incorrectly_named_samples=False) assert ("Sample names do not adhere to requirements" in sample_name_divergence[0].message.args[0]) assert ( "Identify incorrectly named samples by running analyze_sample_names" in sample_name_divergence[0].message.args[0])
def test_handle_incorrectly_named_samples_keep_buffers_only(): test_df = make_test_data() dropped = nd._handle_incorrectly_named_samples( test_df, [0], drop_incorrectly_named_samples=True, drop_buffers=False) assert len(dropped) == 2 assert len(nd._identify_buffer_measurements(dropped)) == 1