def test_conv_align2GRmat_bl8_2(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex2.bl8' aliFormat = 2 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat) print U, NU, genomes, reads expectedU = {} self.assertEquals(expectedU, U, "Failed bl8 Example 2 Unique Reads Assertion") expectedNU = {0: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 1: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 2: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 3: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 4: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 5: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 6: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]]} for read in expectedNU: self.assertEquals(expectedNU[read][0], NU[read][0], "Failed bl8 Example 2 Non-Unique Read %d genome mapping Assertion" %read) self.assertEquals(expectedNU[read][1], NU[read][1], "Failed bl8 Example 2 Non-Unique Read %d score Assertion" %read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, "Failed bl8 Example 2 Non-Unique Read %d proportion Assertion" %read) expectedGenomes = ['genome2', 'genome1', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed bl8 Example 2 Genomes Assertion") expectedReads = ['read1_12', 'read2_12', 'read3_13', 'read4_13', 'read5_123', 'read6_123', 'read7_123'] self.assertEquals(expectedReads, reads, "Failed bl8 Example 2 Reads Assertion")
def test_conv_align2GRmat_bl8_2(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex2.bl8' aliFormat = 2 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff, aliFormat) print U, NU, genomes, reads expectedU = {} self.assertEquals(expectedU, U, "Failed bl8 Example 2 Unique Reads Assertion") expectedNU = { 0: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 1: [[0, 1], [703681821, 703681821], [0.5, 0.5]], 2: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 3: [[2, 1], [703681821, 703681821], [0.5, 0.5]], 4: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 5: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]], 6: [[2, 0, 1], [703681821, 703681821, 703681821], [0.3333, 0.3333, 0.3333]] } for read in expectedNU: self.assertEquals( expectedNU[read][0], NU[read][0], "Failed bl8 Example 2 Non-Unique Read %d genome mapping Assertion" % read) self.assertEquals( expectedNU[read][1], NU[read][1], "Failed bl8 Example 2 Non-Unique Read %d score Assertion" % read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals( NU[read][2][j], expectedNU[read][2][j], 4, "Failed bl8 Example 2 Non-Unique Read %d proportion Assertion" % read) expectedGenomes = ['genome2', 'genome1', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed bl8 Example 2 Genomes Assertion") expectedReads = [ 'read1_12', 'read2_12', 'read3_13', 'read4_13', 'read5_123', 'read6_123', 'read7_123' ] self.assertEquals(expectedReads, reads, "Failed bl8 Example 2 Reads Assertion")
def test_conv_align2GRmat_sam_4(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex4.sam' aliFormat = 1 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff, aliFormat) print U, NU, genomes, reads expectedU = {2: 0} self.assertEquals(expectedU, U, "Failed sam Example 4 Unique Reads Assertion") expectedNU = { 0: [[0, 1], [21, 21], [0.5, 0.5]], 1: [[1, 0], [21, 21], [0.5, 0.5]], 3: [[2, 3], [21, 21], [0.5, 0.5]], 4: [[2, 1], [21, 21], [0.5, 0.5]] } for read in expectedNU: self.assertEquals( expectedNU[read][0], NU[read][0], "Failed sam Example 4 Non-Unique Read %d genome mapping Assertion" % read) self.assertEquals( expectedNU[read][1], NU[read][1], "Failed sam Example 4 Non-Unique Read %d score Assertion" % read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals( NU[read][2][j], expectedNU[read][2][j], 4, "Failed sam Example 4 Non-Unique Read %d proportion Assertion" % read) expectedGenomes = ['genome4', 'genome3', 'genome1', 'genome2'] self.assertEquals(expectedGenomes, genomes, "Failed sam Example 4 Genomes Assertion") expectedReads = [ 'read1_34', 'read2_34', 'read3_4', 'read4_12', 'read5_13' ] self.assertEquals(expectedReads, reads, "Failed sam Example 4 Reads Assertion")
def test_conv_align2GRmat_sam_3(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex3.sam' aliFormat = 1 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff, aliFormat) print U, NU, genomes, reads expectedU = {0: 0, 1: 0, 2: 0, 3: 1, 4: 1} self.assertEquals(expectedU, U, "Failed sam Example 3 Unique Reads Assertion") expectedNU = { 5: [[2, 0, 1], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 6: [[1, 0, 2], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 7: [[2, 1, 0], [21, 21, 21], [0.3333, 0.3333, 0.3333]] } for read in expectedNU: self.assertEquals( expectedNU[read][0], NU[read][0], "Failed sam Example 3 Non-Unique Read %d genome mapping Assertion" % read) self.assertEquals( expectedNU[read][1], NU[read][1], "Failed sam Example 3 Non-Unique Read %d score Assertion" % read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals( NU[read][2][j], expectedNU[read][2][j], 4, "Failed sam Example 3 Non-Unique Read %d proportion Assertion" % read) expectedGenomes = ['genome1', 'genome2', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed sam Example 3 Genomes Assertion") expectedReads = [ 'read1_1', 'read2_1', 'read3_1', 'read4_3', 'read5_2', 'read6_123', 'read7_123', 'read8_123' ] self.assertEquals(expectedReads, reads, "Failed sam Example 3 Reads Assertion")
def test_conv_align2GRmat_sam_4(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex4.sam' aliFormat = 1 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat) print U, NU, genomes, reads expectedU = {2: 0} self.assertEquals(expectedU, U, "Failed sam Example 4 Unique Reads Assertion") expectedNU = {0: [[0, 1], [21, 21], [0.5, 0.5]], 1: [[1, 0], [21, 21], [0.5, 0.5]], 3: [[2, 3], [21, 21], [0.5, 0.5]], 4: [[2, 1], [21, 21], [0.5, 0.5]]} for read in expectedNU: self.assertEquals(expectedNU[read][0], NU[read][0], "Failed sam Example 4 Non-Unique Read %d genome mapping Assertion" %read) self.assertEquals(expectedNU[read][1], NU[read][1], "Failed sam Example 4 Non-Unique Read %d score Assertion" %read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, "Failed sam Example 4 Non-Unique Read %d proportion Assertion" %read) expectedGenomes = ['genome4', 'genome3', 'genome1', 'genome2'] self.assertEquals(expectedGenomes, genomes, "Failed sam Example 4 Genomes Assertion") expectedReads = ['read1_34', 'read2_34', 'read3_4', 'read4_12', 'read5_13'] self.assertEquals(expectedReads, reads, "Failed sam Example 4 Reads Assertion")
def test_conv_align2GRmat_gsam_1(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex1.g.sam' aliFormat = 0 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file, self.scoreCutoff, aliFormat) print U, NU, genomes, reads expectedU = {0: 0, 1: 0} self.assertEquals(expectedU, U, "Failed gnusam Example 1 Unique Reads Assertion") expectedNU = { 2: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 3: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 4: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]] } for read in expectedNU: self.assertEquals( expectedNU[read][0], NU[read][0], "Failed gnusam Example 1 Non-Unique Read %d genome mapping Assertion" % read) self.assertEquals( expectedNU[read][1], NU[read][1], "Failed gnusam Example 1 Non-Unique Read %d score Assertion" % read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals( NU[read][2][j], expectedNU[read][2][j], 4, "Failed gnusam Example 1 Non-Unique Read %d proportion Assertion" % read) expectedGenomes = ['genome1', 'genome2', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed gnusam Example 1 Genomes Assertion") expectedReads = [ 'read1_1', 'read2_1', 'read3_123', 'read4_123', 'read5_123' ] self.assertEquals(expectedReads, reads, "Failed gnusam Example 1 Reads Assertion")
def test_conv_align2GRmat_sam_3(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex3.sam' aliFormat = 1 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat) print U, NU, genomes, reads expectedU = {0: 0, 1: 0, 2: 0, 3: 1, 4: 1} self.assertEquals(expectedU, U, "Failed sam Example 3 Unique Reads Assertion") expectedNU = {5: [[2, 0, 1], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 6: [[1, 0, 2], [21, 21, 21], [0.3333, 0.3333, 0.3333]], 7: [[2, 1, 0], [21, 21, 21], [0.3333, 0.3333, 0.3333]]} for read in expectedNU: self.assertEquals(expectedNU[read][0], NU[read][0], "Failed sam Example 3 Non-Unique Read %d genome mapping Assertion" %read) self.assertEquals(expectedNU[read][1], NU[read][1], "Failed sam Example 3 Non-Unique Read %d score Assertion" %read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, "Failed sam Example 3 Non-Unique Read %d proportion Assertion" %read) expectedGenomes = ['genome1', 'genome2', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed sam Example 3 Genomes Assertion") expectedReads = ['read1_1', 'read2_1', 'read3_1', 'read4_3', 'read5_2', 'read6_123', 'read7_123', 'read8_123'] self.assertEquals(expectedReads, reads, "Failed sam Example 3 Reads Assertion")
def test_conv_align2GRmat_gsam_1(self): currentdir = os.path.dirname(os.path.abspath(__file__)) ali_file = currentdir + os.sep + 'data' + os.sep + 'ex1.g.sam' aliFormat = 0 (U, NU, genomes, reads) = PathoID.conv_align2GRmat(ali_file,self.scoreCutoff,aliFormat) print U, NU, genomes, reads expectedU = {0: 0, 1: 0} self.assertEquals(expectedU, U, "Failed gnusam Example 1 Unique Reads Assertion") expectedNU = {2: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 3: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]], 4: [[0, 1, 2], [33, 33, 33], [0.3333, 0.3333, 0.3333]]} for read in expectedNU: self.assertEquals(expectedNU[read][0], NU[read][0], "Failed gnusam Example 1 Non-Unique Read %d genome mapping Assertion" %read) self.assertEquals(expectedNU[read][1], NU[read][1], "Failed gnusam Example 1 Non-Unique Read %d score Assertion" %read) for j in range(len(expectedNU[read][2])): self.assertAlmostEquals(NU[read][2][j], expectedNU[read][2][j], 4, "Failed gnusam Example 1 Non-Unique Read %d proportion Assertion" %read) expectedGenomes = ['genome1', 'genome2', 'genome3'] self.assertEquals(expectedGenomes, genomes, "Failed gnusam Example 1 Genomes Assertion") expectedReads = ['read1_1', 'read2_1', 'read3_123', 'read4_123', 'read5_123'] self.assertEquals(expectedReads, reads, "Failed gnusam Example 1 Reads Assertion")