def test_simple_creation(self):
     uut = CountVector("varname")
     self.assertEqual(uut.count_vector, [])
     uut = CountVector("varname", [])
     self.assertEqual(uut.count_vector, [])
     self.assertRaises(AssertionError,
                       CountVector,
                       "varname",
                       conditions=[],
                       weightings=[2])
Beispiel #2
0
 def test_abs(self):
     uut = CountVector("varname", [lambda x: True, lambda x: x])
     self.assertEqual(abs(uut), 0)
     uut.count_reference(True)
     self.assertEqual(abs(uut), sqrt(2))
     uut.count_reference(False)
     self.assertEqual(abs(uut), sqrt(5))
 def test_conversions(self):
     uut = CountVector("varname",
                       conditions=[lambda cursor, stack: cursor and stack],
                       weightings=[2])
     uut.count_reference(True, True)
     self.assertEqual(str(uut), "[2]")
     self.assertEqual(list(uut), [2])
Beispiel #4
0
 def test_counting(self):
     uut = CountVector("varname", [lambda cursor, stack: cursor and stack])
     self.assertEqual(uut.count_vector, [0])
     uut.count_reference(True, True)
     self.assertEqual(uut.count_vector, [1])
     uut.count_reference(True, False)
     self.assertEqual(uut.count_vector, [1])
     self.assertEqual(uut.unweighted, [1])
Beispiel #5
0
 def test_cloning(self):
     uut = CountVector("varname", [lambda cursor, stack: cursor and stack],
                       [2])
     uut.count_reference(True, True)
     clone = uut.create_null_vector("test")
     self.assertEqual(clone.name, "test")
     self.assertEqual(clone.weightings, uut.weightings)
     self.assertEqual(clone.conditions, uut.conditions)
     self.assertEqual(clone.count_vector, [0])
 def test_weighting(self):
     uut = CountVector("varname",
                       conditions=[
                           lambda cursor, stack: cursor and stack,
                           lambda cursor, stack: cursor
                       ],
                       weightings=[2, 1])
     uut.count_reference(True, True)
     self.assertEqual(uut.count_vector, [2, 1])
     self.assertEqual(uut.unweighted, [1, 1])
     uut.count_reference(True, False)
     self.assertEqual(uut.count_vector, [2, 2])
     self.assertEqual(uut.unweighted, [1, 2])
Beispiel #7
0
    def count_identifier(self, identifier, category):
        if identifier not in self.count_vectors:
            self.count_vectors[identifier] = CountVector(
                identifier, category, self.conditions, self.weightings)

        self.count_vectors[identifier].count_reference(self.stack)
Beispiel #8
0
    def test_len(self):
        uut = CountVector("varname")
        self.assertEqual(len(uut), 0)

        uut = CountVector("varname", [lambda x: x])
        self.assertEqual(len(uut), 1)