Пример #1
0
    def test_exclude_if_more(self):
        """exclude_if_more should be True if #items in s <= x"""

        self.assertRaises(ValueError, exclude_if_more,'lksfj','ksfd') #not int
        self.assertRaises(IndexError,exclude_if_more,'ACGU',-3) #negative
        
        f = exclude_if_more('a',0) #zero
        self.assertEqual(f(''),1)
        self.assertEqual(f('a'),0)
        self.assertEqual(f('b'),1)
        
        # works on strings
        f = exclude_if_more('ACGU',5) #positive
        self.assertEqual(f(''),1)
        self.assertEqual(f('ACGUAGCUioooNNNNNA'),0)
        self.assertEqual(f('NNNNNNN'),1)

        # works on words
        f = exclude_if_more(['foo'],1)
        self.assertEqual(f(''),1)
        self.assertEqual(f(['foo', 'bar','foo']),0)
        self.assertEqual(f(['joe']),1)

        # works on numbers
        f = exclude_if_more([0,1],3)
        self.assertEqual(f(''),1)
        self.assertEqual(f([0,1,2,3,4,5]),1)
        self.assertEqual(f([0,1,0,1]),0)
Пример #2
0
    def test_exclude_if_more(self):
        """exclude_if_more should be True if #items in s <= x"""

        self.assertRaises(ValueError, exclude_if_more, 'lksfj',
                          'ksfd')  #not int
        self.assertRaises(IndexError, exclude_if_more, 'ACGU', -3)  #negative

        f = exclude_if_more('a', 0)  #zero
        self.assertEqual(f(''), 1)
        self.assertEqual(f('a'), 0)
        self.assertEqual(f('b'), 1)

        # works on strings
        f = exclude_if_more('ACGU', 5)  #positive
        self.assertEqual(f(''), 1)
        self.assertEqual(f('ACGUAGCUioooNNNNNA'), 0)
        self.assertEqual(f('NNNNNNN'), 1)

        # works on words
        f = exclude_if_more(['foo'], 1)
        self.assertEqual(f(''), 1)
        self.assertEqual(f(['foo', 'bar', 'foo']), 0)
        self.assertEqual(f(['joe']), 1)

        # works on numbers
        f = exclude_if_more([0, 1], 3)
        self.assertEqual(f(''), 1)
        self.assertEqual(f([0, 1, 2, 3, 4, 5]), 1)
        self.assertEqual(f([0, 1, 0, 1]), 0)
Пример #3
0
    def setUp(self):
        """Define some standard Organizers for testing"""
        self.Empty = Organizer([])

        self.a = Filter('a', {None: [find_any('a')]})
        self.b = Filter('b', {None: [find_any('b')]})
        self.Ab_org = Organizer([self.a, self.b])

        lsu = Filter('LSU',{None:[exclude_if_more('N',5)],\
                            'Gene':[find_any(['LSU'])]})
        ssu = Filter('SSU',{None:[exclude_if_more('N',5)],\
                            'Gene':[find_any(['SSU'])]})
        self.Gene_org = Organizer([lsu, ssu])

        self.Ab_seq = ['aa', 'bb', 'abab', 'cc', '']
        self.seq1 = Sequence('ACGU', {'Gene': 'LSU'})
        self.seq2 = Sequence('ACGUACGU', {'Gene': 'SSU'})
        self.seq3 = Sequence('ACGUNNNNNN', {'Gene': 'LSU'})
        self.seq4 = Sequence('ACGUNNNNNN', {'Gene': 'SSU'})
        self.seq5 = Sequence('ACGU', {})
        self.seq6 = Sequence('', {})
        self.seq7 = Sequence('ACGU', {'Gene': 'unit'})

        self.Gene_seq = [self.seq1,self.seq2,self.seq3,self.seq4,\
                self.seq5,self.seq6,self.seq7]

        f = Filter('valid',{None:[find_all('AGCU'),find_no('N')],\
                            'Gene':[find_any(['LSU'])]})
        self.Mult_func_org = Organizer([f])
Пример #4
0
    def setUp(self):
        """Define some standard Organizers for testing"""
        self.Empty = Organizer([])
        
        self.a = Filter('a',{None:[find_any('a')]})
        self.b = Filter('b',{None:[find_any('b')]})
        self.Ab_org = Organizer([self.a,self.b])
        
        lsu = Filter('LSU',{None:[exclude_if_more('N',5)],\
                            'Gene':[find_any(['LSU'])]})
        ssu = Filter('SSU',{None:[exclude_if_more('N',5)],\
                            'Gene':[find_any(['SSU'])]})
        self.Gene_org = Organizer([lsu,ssu])
        
        self.Ab_seq = ['aa','bb','abab','cc','']
        self.seq1 = Sequence('ACGU',{'Gene':'LSU'})
        self.seq2 = Sequence('ACGUACGU',{'Gene':'SSU'})
        self.seq3 = Sequence('ACGUNNNNNN',{'Gene':'LSU'})
        self.seq4 = Sequence('ACGUNNNNNN',{'Gene':'SSU'})
        self.seq5 = Sequence('ACGU',{})
        self.seq6 = Sequence('',{})
        self.seq7 = Sequence('ACGU',{'Gene':'unit'})
        
        self.Gene_seq = [self.seq1,self.seq2,self.seq3,self.seq4,\
                self.seq5,self.seq6,self.seq7]

        f = Filter('valid',{None:[find_all('AGCU'),find_no('N')],\
                            'Gene':[find_any(['LSU'])]})
        self.Mult_func_org = Organizer([f])
Пример #5
0
    def test_exclude_if_more(self):
        """exclude_if_more should be True if #items in s <= x"""

        self.assertRaises(ValueError, exclude_if_more, "lksfj", "ksfd")  # not int
        self.assertRaises(IndexError, exclude_if_more, "ACGU", -3)  # negative

        f = exclude_if_more("a", 0)  # zero
        self.assertEqual(f(""), 1)
        self.assertEqual(f("a"), 0)
        self.assertEqual(f("b"), 1)

        # works on strings
        f = exclude_if_more("ACGU", 5)  # positive
        self.assertEqual(f(""), 1)
        self.assertEqual(f("ACGUAGCUioooNNNNNA"), 0)
        self.assertEqual(f("NNNNNNN"), 1)

        # works on words
        f = exclude_if_more(["foo"], 1)
        self.assertEqual(f(""), 1)
        self.assertEqual(f(["foo", "bar", "foo"]), 0)
        self.assertEqual(f(["joe"]), 1)

        # works on numbers
        f = exclude_if_more([0, 1], 3)
        self.assertEqual(f(""), 1)
        self.assertEqual(f([0, 1, 2, 3, 4, 5]), 1)
        self.assertEqual(f([0, 1, 0, 1]), 0)