def METHOD_NAME(self):
    # Using our default of 0.5 time buckets, we have:
    self.timestamp_sequences.extend(
        [
            0.1,
            0.2,
            0.3,
            0.4,
            0.49,
        ]
    )
    for _ in range(len(self.timestamp_sequences)):
        self.rate_measure.record()
    # This is showing the tradeoff we're making with measuring rates.
    # we're currently in the window from 0 <= x < 0.5, which means
    # we use the rate from the previous bucket, which is 0:
    self.assertEqual(self.rate_measure.measured_rate, 0)
    # However if we now add a new measurement that's in the next
    # time bucket  0.5 <= x < 1.0
    # we'll use the range from the previous bucket:
    self.timestamp_sequences.append(0.5)
    self.rate_measure.record()
    # And our previous bucket will be:
    # 12 * 0.8 + 0.2 * 0
    self.assertEqual(self.rate_measure.measured_rate, 12 * 0.8)