def test_one_variant_chroms_with_no_vars_in_same_order( self, mock_var_file, mock_load_fasta): recs = [_MockVcfRecord(2, "G", ["CAAA", "CA"], chrom="ref3")] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("AGCAGCCCCG5G6CAAA6CA6G", converter._get_string())
def test_no_variants_returns_ref_chroms(self, mock_var_file, mock_load_fasta): recs = [] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("AGCAGCCCCGGG", converter._get_string())
def test_filter_pass_record_kept(self, mock_var_file, mock_load_fasta): recs = [_MockVcfRecord(2, "A", "G", chrom="JAC")] # Default filter: PASS mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual(converter._get_string(), "A5A6G6C")
def test_adjacent_snps_kept(self, mock_var_file, mock_load_fasta): recs = [ _MockVcfRecord(1, "C", ["G"], chrom="ref2"), _MockVcfRecord(2, "C", ["A"], chrom="ref2"), ] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("AGCAGC5C6G67C8A8CGGG", converter._get_string())
def test_two_snps_same_chrom(self, mock_var_file, mock_load_fasta): recs = [ _MockVcfRecord(1, "A", "G", chrom="ref1"), _MockVcfRecord(3, "C", ["T", "G"], chrom="ref1"), ] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("5A6G6G7C8T8G8AGCCCCGGG", converter._get_string())
def test_snp_inside_del(self, mock_var_file, mock_load_fasta): recs = [ _MockVcfRecord(2, "T", ["G"], chrom="ref1"), _MockVcfRecord(2, "T", ["C"], chrom="ref1"), ] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("T5T6G6TTCCC", converter._get_string())
def test_snps_at_same_position(self, mock_var_file, mock_load_fasta): recs = [ _MockVcfRecord(1, "TTTT", ["T"], chrom="ref1"), _MockVcfRecord(2, "T", ["C"], chrom="ref1"), ] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("5TTTT6T6CCC", converter._get_string())
def test_one_ins_and_one_del_diff_chroms(self, mock_var_file, mock_load_fasta): recs = [ _MockVcfRecord(3, "C", ["CGG"], chrom="ref1"), _MockVcfRecord(1, "CCC", ["C"], chrom="ref2"), ] mock_var_file.return_value.fetch.return_value = iter(recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "") self.assertEqual("AG5C6CGG6AGC7CCC8C8GGG", converter._get_string())
def test_legacy_representation(self, mock_var_file, mock_load_fasta): mock_var_file.return_value.fetch.return_value = iter(self.recs) mock_load_fasta.return_value = self.chroms converter = Vcf_to_prg("", "", "", mode="legacy") self.assertEqual("5A6G5CAC7A8AAA7A", converter._get_string())