diff --git a/test_data/A_1.bedpe.gz b/test_data/A_1.bedpe.gz new file mode 100644 index 0000000000000000000000000000000000000000..52beb16aa36e95cb5e14dfd4d7fb867f6b4183bc Binary files /dev/null and b/test_data/A_1.bedpe.gz differ diff --git a/test_data/B_1.bedpe.gz b/test_data/B_1.bedpe.gz new file mode 100644 index 0000000000000000000000000000000000000000..52beb16aa36e95cb5e14dfd4d7fb867f6b4183bc Binary files /dev/null and b/test_data/B_1.bedpe.gz differ diff --git a/workflow/tests/test_pool_and_psuedoreplicate.py b/workflow/tests/test_pool_and_psuedoreplicate.py index 7f219c926244f4a0a796df050f29a871c6ba4519..b28c59c180b48ecaf7a6c49f8cafd234528c777e 100644 --- a/workflow/tests/test_pool_and_psuedoreplicate.py +++ b/workflow/tests/test_pool_and_psuedoreplicate.py @@ -33,8 +33,11 @@ def design_experiment_2(design_experiment): @pytest.fixture def design_experiment_3(design_experiment): - # Update second control to be same as first - design_experiment.loc[1, 'control_tag_align'] = 'B_1.bedse.gz' + # Drop Replicate A_2 + design_df = design_experiment.drop(design_experiment.index[1]) + # Update to be paired as first + design_experiment.loc[0, 'control_tag_align'] = 'B_1.bedpe.gz' + design_experiment.loc[0, 'ttag_align'] = 'A_1.bedpe.gz' return design_experiment @@ -71,6 +74,18 @@ def test_single_rep(design_experiment_2): shutil.copy(test_design_path + 'B_1.tagAlign.gz', cwd) single_rep = pool_and_psuedoreplicate.generate_design('false', 1.2, design_experiment_2, cwd, 1, 1) assert single_rep.shape[0] == 4 + assert len(single_rep['control_tag_align'].unique()) == 1 + assert single_rep['control_tag_align'].unique()[0] == 'B_1.tagAlign.gz' + + +@pytest.mark.unit +def test_single_control(design_experiment_3): + cwd = os.getcwd() + shutil.copy(test_design_path + 'A_1.bedpe.gz', cwd) + shutil.copy(test_design_path + 'B_1.bedpe.gz', cwd) + shutil.copy(test_design_path + 'A_1.tagAlign.gz', cwd) + single_control = pool_and_psuedoreplicate.generate_design('true', 1.2, design_experiment_3, cwd, 1, 1) + assert single_control['control_tag_align'].unique() == 'B_1.tagAlign.gz' @pytest.mark.singleend