Beispiel #1
0
def test_pipeline_double_distance_only_insertions():
    param = simulator.SimParameters(wgd_type="DD", num_genes=40, num_chr=2, ins_p=[0, 1], indel_length=[0, 3], events=[0, 10])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert 2 * len(genomes[0].chromosomes) == len(genomes[1].chromosomes)
    assert len(genomes[0].gene_count().keys()) < len(genomes[1].gene_count().keys())
Beispiel #2
0
def test_pipeline_no_wgd_only_deletions():
    param = simulator.SimParameters(wgd_type=None, num_genes=40, num_chr=2, del_p=[1, 0], indel_length=[3, 0], events=[10, 0])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert len(genomes[0].chromosomes) >= len(genomes[1].chromosomes)
    assert len(genomes[0].gene_count().keys()) > len(genomes[1].gene_count().keys())
Beispiel #3
0
def test_genome_halving_only_rearrangements_pre_wgd():
    param = simulator.SimParameters(wgd_type="GH", num_genes=40, num_chr=2, events=[10, 0])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert 2 * len(genomes[0].chromosomes) == len(genomes[2].chromosomes)
    assert len(genomes[0].gene_count().keys()) == len(genomes[2].gene_count().keys())
    assert str(genomes[1].chromosomes[0]) == str(genomes[2].chromosomes[2])
Beispiel #4
0
def test_double_distance_events_before_wgd_event():
    param = simulator.SimParameters(wgd_type="DD", num_genes=40, num_chr=2, del_p=[.3, 0], ins_p=[.3, 0], indel_length=[3, 0], duplication_p=[.2, 0],
                                    duplication_length=[3, 0], events=[10, 0])
    sim = simulator.Simulation(folder=None, sim_parameters=param)
    genomes = sim.run_simulation()

    assert len(genomes[0].gene_count().keys()) == len(genomes[1].gene_count().keys())
    assert 2 * sum(genomes[0].gene_count().values()) == sum(genomes[1].gene_count().values())
    assert str(genomes[0].chromosomes[0]) == str(genomes[1].chromosomes[2])
Beispiel #5
0
def test_pipeline_double_distance_only_rearrangements():
    param = simulator.SimParameters(wgd_type="DD", num_genes=40, num_chr=2, events=[0, 10])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert 2 * len(genomes[0].chromosomes) == len(genomes[1].chromosomes)
    assert len(genomes[0].gene_count().keys()) == len(genomes[1].gene_count().keys())
    assert 2 * sum(genomes[0].gene_count().values()) == sum(genomes[1].gene_count().values())
Beispiel #6
0
def test_pipeline_no_wgd_with_only_inter_chromosomal_segmental_duplication():
    param = simulator.SimParameters(wgd_type=None, num_genes=40, num_chr=2, duplication_p=[1, 0], duplication_length=[3, 0], events=[10, 0], inter_p=1)
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert len(genomes[0].chromosomes) == len(genomes[1].chromosomes)
    assert len(genomes[0].gene_count().keys()) == len(genomes[1].gene_count().keys())
    assert sum(genomes[0].gene_count().values()) < sum(genomes[1].gene_count().values())
Beispiel #7
0
def test_running_events_on_genome():
    genome = gen_genome(100, 5)
    curr_copy_num = genome.gene_count()
    param = simulator.SimParameters(num_genes=100, num_chr=5, events=[100, 0])

    event_count, _ = test_sim.apply_random_events(param, genome, 101, curr_copy_num, postwgd=0)

    assert len(curr_copy_num.keys()) == 100
    assert event_count["rearrangement"] == 100
Beispiel #8
0
def test_genome_halving_only_insertions_post_wgd():
    param = simulator.SimParameters(wgd_type="GH", num_genes=40, num_chr=2, ins_p=[0, 1], indel_length=[0, 3],
                                    events=[0, 10])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert 2 * len(genomes[0].chromosomes) == len(genomes[2].chromosomes)
    assert len(genomes[0].gene_count().keys()) == len(genomes[1].gene_count().keys())
    assert len(genomes[1].gene_count().keys()) < len(genomes[2].gene_count().keys())
Beispiel #9
0
def test_genome_halving_only_segmental_duplications_pre_wgd():
    param = simulator.SimParameters(wgd_type="GH", num_genes=40, num_chr=2, duplication_p=[1, 0],
                                    duplication_length=[3, 0], events=[10, 0])
    sim = simulator.Simulation(folder=None, sim_parameters=param)

    genomes = sim.run_simulation()

    assert 2 * len(genomes[0].chromosomes) == len(genomes[2].chromosomes)
    assert len(genomes[0].gene_count().keys()) == len(genomes[1].gene_count().keys())
    assert len(genomes[1].gene_count().keys()) == len(genomes[2].gene_count().keys())
    assert sum(genomes[0].gene_count().values()) < sum(genomes[1].gene_count().values())
    assert 2 * sum(genomes[1].gene_count().values()) == sum(genomes[2].gene_count().values())
Beispiel #10
0
def test_simulation_parameters_with_no_rearrangements():
    param = simulator.SimParameters(ins_p=[.4, 0], del_p=[.4, 0], duplication_p=[.2, 0])