Exemple #1
0
 def test_accumulate_with_first_value_on_step_boundary(self):
     """
     step:    0              5
            --|--+--+--+--+--|--
     value:   14
     """
     accumulated_value, step_data = accumulate(0, 0, 0, 14, 5)
     self.assertEqual(accumulated_value, 0)
     self.assertEqual(step_data, None)
Exemple #2
0
 def test_accumulate(self):
     """
     step:    0              5
            --|--+--+--+--+--|--
     value:   0              4
     """
     accumulated_value, step_data = accumulate(0, 0, 5, 4, 5)
     self.assertEqual(accumulated_value, 0)
     self.assertEqual(step_data, (5, 4))
Exemple #3
0
 def test_accumulate_within_step(self):
     """
     step:    0              5
            --|--+--+--+--+--|--
     value:   0     4
     """
     accumulated_value, step_data = accumulate(0, 0, 2, 4, 5)
     self.assertEqual(accumulated_value, 8)
     self.assertEqual(step_data, None)
Exemple #4
0
 def test_accumulate_within_step_with_nonzero_start_accumulated_value(self):
     """
     step:    0              5
            --|--+--+--+--+--|--
     value:   0     3     4
     """
     accumulated_value, step_data = accumulate(2, 6, 4, 4, 5)
     self.assertEqual(accumulated_value, 14)
     self.assertEqual(step_data, None)
Exemple #5
0
 def test_accumulate_skipped_step(self):
     """
     step:    0              5              10             15
            --|--+--+--+--+--|--+--+--+--+--|--+--+--+--+--|--
     value:   0                                   4
     """
     accumulated_value, step_data = accumulate(0, 0, 12, 4, 5)
     self.assertEqual(accumulated_value, 8)
     self.assertEqual(step_data, None)
Exemple #6
0
 def test_accumulate_non_zero_accumulated_value(self):
     """
     step:    5              10             15
            --|--+--+--+--+--|--+--+--+--+--|--
     value:         4                 3
     """
     accumulated_value, step_data = accumulate(7, 8, 13, 3, 5)
     self.assertEqual(accumulated_value, 9)
     self.assertEqual(step_data, (10, float((2 * 4) + (3 * 3)) / 5))
Exemple #7
0
    def test_accumulate(self):
        """
        step:    0              5
               --|--+--+--+--+--|--
        value:   0              4
        """
        persist = Persist()
        accumulate = Accumulator(persist, 5)

        self.assertEqual(persist.get("key"), None)
        step_data = accumulate(5, 4, "key")
        self.assertEqual(step_data, (5, 4))
        self.assertEqual(persist.get("key"), (5, 0))
Exemple #8
0
    def test_accumulate_with_first_value_on_step_boundary(self):
        """
        step:    0              5
               --|--+--+--+--+--|--
        value:   14
        """
        persist = Persist()
        accumulate = Accumulator(persist, 5)

        self.assertEqual(persist.get("key"), None)
        step_data = accumulate(0, 14, "key")
        self.assertEqual(step_data, None)
        self.assertEqual(persist.get("key"), (0, 0))
Exemple #9
0
    def test_accumulate_skipped_step(self):
        """
        step:    0              5              10             15
               --|--+--+--+--+--|--+--+--+--+--|--+--+--+--+--|--
        value:   0                                   4
        """
        persist = Persist()
        accumulate = Accumulator(persist, 5)

        self.assertEqual(persist.get("key"), None)
        step_data = accumulate(12, 4, "key")
        self.assertEqual(step_data, None)
        self.assertEqual(persist.get("key"), (12, 8))
Exemple #10
0
    def test_accumulate_non_zero_accumulated_value(self):
        """
        step:    5              10             15
               --|--+--+--+--+--|--+--+--+--+--|--
        value:         4                 3
        """
        persist = Persist()
        accumulate = Accumulator(persist, 5)

        # Persist data that would have been stored when
        # accumulate(7, 4, "key") was called.
        persist.set("key", (7, 8))
        step_data = accumulate(13, 3, "key")
        self.assertEqual(step_data, (10, float((2 * 4) + (3 * 3)) / 5))
        self.assertEqual(persist.get("key"), (13, 9))
Exemple #11
0
    def test_accumulate_within_step_with_nonzero_start_accumulated_value(self):
        """
        step:    0              5
               --|--+--+--+--+--|--
        value:   0     3     4
        """
        persist = Persist()
        accumulate = Accumulator(persist, 5)

        # Persist data that would have been stored when
        # accumulate(2, 3, "key") was called.
        persist.set("key", (2, 6))
        step_data = accumulate(4, 4, "key")
        self.assertEqual(step_data, None)
        self.assertEqual(persist.get("key"), (4, 14))