def test_max_strategy(self): self.metric_cache.store('foo', (123456, 1.0)) self.metric_cache.store('foo', (123457, 2.0)) self.metric_cache.store('foo', (123458, 3.0)) self.metric_cache.store('bar', (123459, 4.0)) self.metric_cache.store('bar', (123460, 5.0)) self.metric_cache.store('baz', (123461, 6.0)) max_strategy = MaxStrategy(self.metric_cache) # foo has 3 self.assertEqual('foo', max_strategy.choose_item()) # add 2 more 'bar' for 4 total self.metric_cache.store('bar', (123462, 8.0)) self.metric_cache.store('bar', (123463, 9.0)) self.assertEqual('bar', max_strategy.choose_item()) self.metric_cache.pop('foo') self.metric_cache.pop('bar') self.assertEqual('baz', max_strategy.choose_item())