コード例 #1
0
def test_sample_statistics_notexists(testdir, mock_testclass):
    sample = 'POLR2A'
    splits = ['100-110', '120-130']
    s.flagstat_total = MagicMock(side_effect=[300, 200])
    Bed.count_bed = MagicMock(side_effect=[150, 50, 40])
    stats = s.sample_statistics(sample, splits)
    assert stats[0] == sample
    assert stats[1] == ''
    assert stats[2] == ''
    assert stats[3] == ''
    assert stats[4] == ''
    assert stats[5] == ''
    assert len(stats) == 6
    s.flagstat_total.assert_not_called()
    Bed.count_bed.assert_not_called()
コード例 #2
0
def test_sample_statistics(testdir, mock_testclass):
    sample = 'POLR2A'
    Path(sample + '.bam').touch()
    Path(sample + '-filtered.bam').touch()
    Path(sample + '.bed').touch()
    splits = ['100-110', '120-130']
    for split in splits:
        Path(sample + '-' + split + '.bed').touch()
    s.flagstat_total = MagicMock(side_effect=[300, 200])
    Bed.count_bed = MagicMock(side_effect=[150, 50, 40])
    stats = s.sample_statistics(sample, splits)
    assert stats[0] == sample
    assert stats[1] == 300
    assert stats[2] == 200
    assert stats[3] == 150 * 2
    assert stats[4] == 50
    assert stats[5] == 40
    assert len(stats) == 6
    s.flagstat_total.assert_any_call(sample + '.bam')
    s.flagstat_total.assert_any_call(sample + '-filtered.bam')
    Bed.count_bed.assert_any_call(sample + '.bed')
    Bed.count_bed.assert_any_call(sample + '-100-110.bed')
    Bed.count_bed.assert_any_call(sample + '-120-130.bed')