예제 #1
0
 def testEmpty(self):
     """
     If passed an empty readsAlignments, titleCounts must return an
     empty dictionary.
     """
     mockOpener = mockOpen(read_data=PARAMS)
     with patch.object(builtins, 'open', mockOpener):
         readsAlignments = LightReadsAlignments('file.json', DB)
         self.assertEqual({}, titleCounts(readsAlignments))
예제 #2
0
 def testEmpty(self):
     """
     If passed an empty readsAlignments, titleCounts must return an
     empty dictionary.
     """
     mockOpener = mockOpen(read_data=dumps(PARAMS) + '\n')
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         readsAlignments = BlastReadsAlignments(reads, 'file.json')
         self.assertEqual({}, titleCounts(readsAlignments))
예제 #3
0
 def testEmpty(self):
     """
     If passed an empty readsAlignments, titleCounts must return an
     empty dictionary.
     """
     mockOpener = mock_open(read_data=dumps(PARAMS) + '\n')
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         readsAlignments = DiamondReadsAlignments(reads, 'file.json')
         self.assertEqual({}, titleCounts(readsAlignments))
예제 #4
0
 def testDuplicatedTitle(self):
     """
     If alignments for reads have a common title, the count on that title
     must be correct.
     """
     mockOpener = mockOpen(read_data=(PARAMS + RECORD2 + RECORD3))
     with patch.object(builtins, 'open', mockOpener):
         readsAlignments = LightReadsAlignments('file.json', DB)
         self.assertEqual(
             {
                 COWPOX.id: 2,
             },
             titleCounts(readsAlignments))
예제 #5
0
 def testDuplicatedTitle(self):
     """
     If alignments for reads have a common title, the count on that title
     must be correct.
     """
     mockOpener = mockOpen(read_data=(dumps(PARAMS) + '\n' +
                                      dumps(RECORD2) + '\n' +
                                      dumps(RECORD3) + '\n'))
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         reads.add(Read('id2', 'A' * 70))
         reads.add(Read('id3', 'A' * 70))
         readsAlignments = BlastReadsAlignments(reads, 'file.json')
         self.assertEqual({
             'gi|887699|gb|DQ37780 Cowpox virus 15': 2,
         }, titleCounts(readsAlignments))
예제 #6
0
 def testThreeRecords(self):
     """
     If alignments for three reads are passed to titleCounts, it must
     return the correct title counts.
     """
     mockOpener = mockOpen(read_data=(PARAMS + RECORD0 + RECORD1 + RECORD2))
     with patch.object(builtins, 'open', mockOpener):
         readsAlignments = LightReadsAlignments('file.json', DB)
         self.assertEqual(
             {
                 SQUIRRELPOX.id: 1,
                 MUMMYPOX.id: 1,
                 COWPOX.id: 1,
                 MONKEYPOX.id: 1,
                 CATPOX.id: 1
             },
             titleCounts(readsAlignments))
예제 #7
0
 def testDuplicatedTitle(self):
     """
     If alignments for reads have a common title, the count on that title
     must be correct.
     """
     mockOpener = mockOpen(read_data=(
         dumps(PARAMS) + '\n' + dumps(RECORD2) + '\n' +
         dumps(RECORD3) + '\n'))
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         reads.add(Read('id2', 'A' * 70))
         reads.add(Read('id3', 'A' * 70))
         readsAlignments = BlastReadsAlignments(reads, 'file.json')
         self.assertEqual(
             {
                 'gi|887699|gb|DQ37780 Cowpox virus 15': 2,
             },
             titleCounts(readsAlignments))
예제 #8
0
 def testThreeRecords(self):
     """
     If alignments for three reads are passed to titleCounts, it must
     return the correct title counts.
     """
     mockOpener = mockOpen(
         read_data=(dumps(PARAMS) + '\n' + dumps(RECORD0) + '\n' +
                    dumps(RECORD1) + '\n' + dumps(RECORD2) + '\n'))
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         reads.add(Read('id0', 'A' * 70))
         reads.add(Read('id1', 'A' * 70))
         reads.add(Read('id2', 'A' * 70))
         readsAlignments = BlastReadsAlignments(reads, 'file.json')
         self.assertEqual(
             {
                 'gi|887699|gb|DQ37780 Squirrelpox virus 1296/99': 1,
                 'gi|887699|gb|DQ37780 Mummypox virus 3000 B.C.': 1,
                 'gi|887699|gb|DQ37780 Cowpox virus 15': 1,
                 'gi|887699|gb|DQ37780 Monkeypox virus 456': 1,
                 'gi|887699|gb|DQ37780 Squirrelpox virus 55': 1
             }, titleCounts(readsAlignments))
예제 #9
0
 def testThreeRecords(self):
     """
     If alignments for three reads are passed to titleCounts, it must
     return the correct title counts.
     """
     mockOpener = mockOpen(read_data=(
         dumps(PARAMS) + '\n' + dumps(RECORD0) + '\n' +
         dumps(RECORD1) + '\n' + dumps(RECORD2) + '\n'))
     with patch.object(builtins, 'open', mockOpener):
         reads = Reads()
         reads.add(Read('id0', 'A' * 70))
         reads.add(Read('id1', 'A' * 70))
         reads.add(Read('id2', 'A' * 70))
         readsAlignments = BlastReadsAlignments(reads, 'file.json')
         self.assertEqual(
             {
                 'gi|887699|gb|DQ37780 Squirrelpox virus 1296/99': 1,
                 'gi|887699|gb|DQ37780 Mummypox virus 3000 B.C.': 1,
                 'gi|887699|gb|DQ37780 Cowpox virus 15': 1,
                 'gi|887699|gb|DQ37780 Monkeypox virus 456': 1,
                 'gi|887699|gb|DQ37780 Squirrelpox virus 55': 1
             },
             titleCounts(readsAlignments))