Commit c508559b authored by Venkat Malladi's avatar Venkat Malladi
Browse files

Fix tests so they run on single end and paired end.

parent 813fb41d
......@@ -17,7 +17,7 @@ single_end_mouse:
stage: integration
script:
- nextflow run workflow/main.nf -resume
- pytest -m integration
- pytest -m singleend
- pytest --cov=./workflow/scripts
artifacts:
expire_in: 2 days
......@@ -25,20 +25,26 @@ single_end_mouse:
paired_end_human:
stage: integration
script:
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_ENCSR729LGA_PE.txt" --genome 'GRCh38' --pairedEnd true
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_ENCSR729LGA_PE.txt" --genome 'GRCh38' --pairedEnd true -resume
- pytest -m pairedend
- pytest --cov=./workflow/scripts
artifacts:
expire_in: 2 days
single_end_diff:
stage: integration
script:
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_diff_SE.txt" --genome 'GRCm38'
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_diff_SE.txt" --genome 'GRCm38' -resume
- pytest -m pairedend
- pytest --cov=./workflow/scripts
artifacts:
expire_in: 2 days
paired_end_diff:
stage: integration
script:
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_diff_PE.txt" --genome 'GRCh38' --pairedEnd true
- nextflow run workflow/main.nf --designFile "$CI_PROJECT_DIR/test_data/design_diff_PE.txt" --genome 'GRCh38' --pairedEnd true -resume
- pytest -m pairedend
- pytest --cov=./workflow/scripts
artifacts:
expire_in: 2 days
......@@ -17,7 +17,7 @@ B_2\tB_2.bam\tB_2.bai\tB\tLiver\tH3K27ac\tNone\t2\tB_2
"""
@pytest.mark.integration
@pytest.mark.singleend
def test_annotate_peaks_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCSR238SGC.chipseeker_pie.pdf'))
assert os.path.exists(os.path.join(test_output_path, 'ENCSR238SGC.chipseeker_pie.pdf'))
......@@ -27,7 +27,7 @@ def test_annotate_peaks_singleend():
assert utils.count_lines(annotation_file) == 152839
@pytest.mark.integration
@pytest.mark.pairedend
def test_annotate_peaks_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCSR217LRF.chipseeker_pie.pdf'))
assert os.path.exists(os.path.join(test_output_path, 'ENCSR217LRF.chipseeker_pie.pdf'))
......
......@@ -8,7 +8,7 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
'/../output/callPeaksMACS/'
@pytest.mark.integration
@pytest.mark.singleend
def test_call_peaks_macs_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCLB144FDT.fc_signal.bw'))
assert os.path.exists(os.path.join(test_output_path, 'ENCLB144FDT.pvalue_signal.bw'))
......@@ -16,7 +16,7 @@ def test_call_peaks_macs_singleend():
assert utils.count_lines(peak_file) == 210349
@pytest.mark.integration
@pytest.mark.pairedend
def test_call_peaks_macs_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCLB568IYX.fc_signal.bw'))
assert os.path.exists(os.path.join(test_output_path, 'ENCLB568IYX.pvalue_signal.bw'))
......
......@@ -7,13 +7,13 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
'/../output/convertReads/'
@pytest.mark.integration
@pytest.mark.singleend
def test_convert_reads_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF646LXU.filt.nodup.tagAlign.gz'))
assert os.path.exists(os.path.join(test_output_path, 'ENCFF646LXU.filt.nodup.bedse.gz'))
@pytest.mark.integration
@pytest.mark.pairedend
def test_map_qc_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF293YFE_val_2ENCFF330MCZ_val_1.filt.nodup.tagAlign.gz'))
assert os.path.exists(os.path.join(test_output_path, 'ENCFF293YFE_val_2ENCFF330MCZ_val_1.filt.nodup.bedpe.gz'))
......@@ -30,16 +30,16 @@ def test_check_update_controls_tag(design_tag):
assert new_design.loc[0, 'control_tag_align'] == "B_1.tagAlign.gz"
@pytest.mark.integration
def test_experiment_design_single_end():
@pytest.mark.singleend
def test_experiment_design_singleend():
design_file = os.path.join(test_output_path, 'ENCSR238SGC.tsv')
assert os.path.exists(design_file)
design_df = pd.read_csv(design_file, sep="\t")
assert design_df.shape[0] == 2
@pytest.mark.integration
def test_experiment_design_paired_end():
@pytest.mark.pairedend
def test_experiment_design_pairedend():
design_file = os.path.join(test_output_path, 'ENCSR729LGA.tsv')
assert os.path.exists(design_file)
design_df = pd.read_csv(design_file, sep="\t")
......
......@@ -30,7 +30,7 @@ def test_check_update_controls(design_bam):
assert new_design.loc[0, 'control_reads'] == "B_1.bam"
@pytest.mark.integration
@pytest.mark.singleend
def test_experiment_qc_singleend():
assert os.path.exists(os.path.join(test_output_path, 'sample_mbs.npz'))
assert os.path.exists(os.path.join(test_output_path, 'heatmap_SpearmanCorr.png'))
......@@ -38,7 +38,7 @@ def test_experiment_qc_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCLB144FDT_fingerprint.png'))
assert os.path.exists(os.path.join(test_output_path, 'ENCLB831RUI_fingerprint.png'))
@pytest.mark.integration
@pytest.mark.pairdend
def test_experiment_qc_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'sample_mbs.npz'))
assert os.path.exists(os.path.join(test_output_path, 'heatmap_SpearmanCorr.png'))
......
......@@ -8,7 +8,7 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
'/../output/filterReads/'
@pytest.mark.integration
@pytest.mark.singleend
def test_map_qc_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF646LXU.filt.nodup.bam'))
assert os.path.exists(os.path.join(test_output_path, 'ENCFF646LXU.filt.nodup.bam.bai'))
......@@ -23,7 +23,7 @@ def test_map_qc_singleend():
assert df_library_complexity["PBC2"].iloc[0] == 13.706885
@pytest.mark.integration
@pytest.mark.pairedend
def test_map_qc_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF293YFE_val_2ENCFF330MCZ_val_1.filt.nodup.bam'))
assert os.path.exists(os.path.join(test_output_path, 'ENCFF293YFE_val_2ENCFF330MCZ_val_1.filt.nodup.bambai'))
......
......@@ -7,7 +7,7 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
'/../output/alignReads/'
@pytest.mark.integration
@pytest.mark.singleend
def test_map_reads_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF646LXU.srt.bam'))
aligned_reads_report = test_output_path + 'ENCFF646LXU.srt.bam.flagstat.qc'
......@@ -16,7 +16,7 @@ def test_map_reads_singleend():
assert '80050072 + 0 mapped (99.08% : N/A)' in samtools_report[4]
@pytest.mark.integration
@pytest.mark.pairedend
def test_map_reads_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF002DTU_val_1ENCFF002EFI_val_2.srt.bam'))
aligned_reads_report = test_output_path + 'ENCFF002DTU_val_1ENCFF002EFI_val_2.srt.bam.flagstat.qc'
......
......@@ -33,14 +33,14 @@ def test_check_update_design(design_diff):
assert new_design.loc[0, 'peak_caller'] == "bed"
@pytest.mark.integration
@pytest.mark.singleend
def test_overlap_peaks_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCSR238SGC.rejected.narrowPeak'))
peak_file = test_output_path + 'ENCSR238SGC.replicated.narrowPeak'
assert utils.count_lines(peak_file) == 150302
@pytest.mark.integration
@pytest.mark.pairedend
def test_overlap_peaks_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCSR729LGA.rejected.narrowPeak'))
peak_file = test_output_path + 'ENCSR729LGA.replicated.narrowPeak'
......
......@@ -60,16 +60,16 @@ def test_check_controls_single(design_experiment_3):
assert no_controls == 1
@pytest.mark.integration
def test_pool_and_psuedoreplicate_single_end():
@pytest.mark.singleend
def test_pool_and_psuedoreplicate_singleend():
design_file = os.path.join(test_output_path, 'ENCSR238SGC_ppr.tsv')
assert os.path.exists(design_file)
design_df = pd.read_csv(design_file, sep="\t")
assert design_df.shape[0] == 5
@pytest.mark.integration
def test_experiment_design_paired_end():
@pytest.mark.pairedend
def test_experiment_design_pairedend():
design_file = os.path.join(test_output_path, 'ENCSR729LGA_ppr.tsv')
assert os.path.exists(design_file)
design_df = pd.read_csv(design_file, sep="\t")
......
......@@ -10,7 +10,7 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
@pytest.mark.integration
@pytest.mark.singleend
def test_trim_reads_singleend():
raw_fastq = test_data_path + 'ENCFF833BLU.fastq.gz'
trimmed_fastq = test_output_path + 'ENCFF833BLU_trimmed.fq.gz'
......@@ -21,7 +21,7 @@ def test_trim_reads_singleend():
assert 'Trimming mode: single-end' in open(trimmed_fastq_report).readlines()[4]
@pytest.mark.integration
@pytest.mark.pairedend
def test_trim_reads_pairedend():
raw_fastq = test_data_path + 'ENCFF582IOZ.fastq.gz'
trimmed_fastq = test_output_path + ' ENCFF582IOZ_val_2.fq.gz'
......@@ -30,4 +30,3 @@ def test_trim_reads_pairedend():
assert os.path.getsize(raw_fastq) != os.path.getsize(trimmed_fastq)
assert os.path.getsize(trimmed_fastq) == 2229312710
assert 'Trimming mode: paired-end' in open(trimmed_fastq_report).readlines()[4]
......@@ -8,7 +8,7 @@ test_output_path = os.path.dirname(os.path.abspath(__file__)) + \
'/../output/crossReads/'
@pytest.mark.integration
@pytest.mark.singleend
def test_convert_reads_singleend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF833BLU.filt.nodup.tagAlign.15.tagAlign.gz.cc.plot.pdf'))
qc_file = os.path.join(test_output_path,"ENCFF833BLU.filt.nodup.tagAlign.15.tagAlign.gz.cc.qc")
......@@ -18,7 +18,7 @@ def test_convert_reads_singleend():
assert df_xcor[9].iloc[0] == 1.266678
@pytest.mark.integration
@pytest.mark.pairedend
def test_map_qc_pairedend():
assert os.path.exists(os.path.join(test_output_path, 'ENCFF582IOZ_val_2ENCFF957SQS_val_1.filt.nodup.tagAlign.15.tagAlign.gz.cc.plot.pdf'))
qc_file = os.path.join(test_output_path,"ENCFF582IOZ_val_2ENCFF957SQS_val_1.filt.nodup.tagAlign.15.tagAlign.gz.cc.qc")
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment