Ejemplo n.º 1
0
	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")
Ejemplo n.º 2
0
 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")
Ejemplo n.º 3
0
 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")
Ejemplo n.º 4
0
 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")
Ejemplo n.º 5
0
	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")
Ejemplo n.º 6
0
 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")
Ejemplo n.º 7
0
	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")
Ejemplo n.º 8
0
	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")