Example #1
0
    def test_grouping_repr(self):
        b_grouping = Grouping('b', [5, 6, 7, 8])
        self.assertEqual(repr(b_grouping),
                         "Grouping(key='b', items=[5, 6, 7, 8])")

        c_grouping = Grouping('c', [9, 10, 11, 12, 13])
        self.assertEqual(repr(c_grouping),
                         "Grouping(key='c', items=[9, 10, 11, 12, 13])")
Example #2
0
 def test_grouping_to_dictionary(self):
     grouping1 = Grouping('a', [1, 2, 4, 3])
     actual = grouping1.to_dictionary(
         key_selector=lambda item: item * 2,
         value_selector=lambda item: item * 3
     )
     expected = {2: 3,
                 4: 6,
                 6: 9,
                 8: 12}
     self.assertEqual(actual, expected)
Example #3
0
def as_category(g: Grouping) -> Category:
    return Category(name=g.key, time=g.sum(lambda x: x.duration))
Example #4
0
def as_collection(g: Grouping) -> Collection:
    return Collection(name=g.key, time=g.sum(lambda x: x.duration))
Example #5
0
 def test_grouping_create(self):
     grouping = Grouping('b', [5, 6, 7, 8])
Example #6
0
 def test_grouping_to_dictionary_default_selectors(self):
     grouping1 = Grouping('a', [1, 2, 4, 3])
     actual = grouping1.to_dictionary()
     expected = {'a': [1, 2, 4, 3]}
     self.assertEqual(actual, expected)
Example #7
0
 def test_grouping_not_equal_positive_sequence(self):
     grouping1 = Grouping('a', [1, 2, 4, 3])
     grouping2 = Grouping('a', [1, 2, 3, 4])
     self.assertTrue(grouping1 != grouping2)
Example #8
0
 def test_grouping_not_equal_positive_key(self):
     grouping1 = Grouping('a', [1, 2, 3, 4])
     grouping2 = Grouping('b', [1, 2, 3, 4])
     self.assertTrue(grouping1 != grouping2)
Example #9
0
 def test_grouping_not_equal_negative(self):
     grouping1 = Grouping('b', [5, 6, 7, 8])
     grouping2 = Grouping('b', [5, 6, 7, 8])
     self.assertFalse(grouping1 != grouping2)
Example #10
0
 def test_grouping_equal_negative_sequence(self):
     grouping1 = Grouping('a', [1, 2, 4, 3])
     grouping2 = Grouping('a', [1, 2, 3, 4])
     self.assertFalse(grouping1 == grouping2)
Example #11
0
 def test_grouping_equal_negative_key(self):
     grouping1 = Grouping('a', [1, 2, 3, 4])
     grouping2 = Grouping('b', [1, 2, 3, 4])
     self.assertFalse(grouping1 == grouping2)
Example #12
0
 def test_grouping_equal_positive(self):
     grouping1 = Grouping('b', [5, 6, 7, 8])
     grouping2 = Grouping('b', [5, 6, 7, 8])
     self.assertTrue(grouping1 == grouping2)
Example #13
0
 def test_grouping_as_queryable(self):
     b_grouping = Grouping('b', [5, 6, 7, 8])
     result = b_grouping.where(lambda x: x > 6).to_list()
     self.assertEqual(result, [7, 8])
Example #14
0
 def test_grouping_iterable(self):
     b_grouping = Grouping('b', [5, 6, 7, 8])
     lst = []
     for item in b_grouping:
         lst.append(item)
     self.assertEqual(lst, [5, 6, 7, 8])
Example #15
0
    def test_grouping_key(self):
        b_grouping = Grouping('b', [5, 6, 7, 8])
        self.assertEqual(b_grouping.key, 'b')

        c_grouping = Grouping('c', [9, 10, 11, 12, 13])
        self.assertEqual(c_grouping.key, 'c')
Example #16
0
    def test_grouping_len(self):
        b_grouping = Grouping('b', [5, 6, 7, 8])
        self.assertEqual(len(b_grouping), 4)

        c_grouping = Grouping('c', [9, 10, 11, 12, 13])
        self.assertEqual(len(c_grouping), 5)