def test_set_key_ttl_expiry(self): """ Assert 'k1' -> 'some_test_data' in ncache.cache_values Assert 'k1' -> ('ttl', <datetime + 0seconds>) """ ncache._set_key('k1', 'some_test_data', ttl=0) data = ncache.cache_timeouts.get('k1') self.assertEqual(data[0], 'ttl') self.assertTrue(isinstance(data[1], datetime)) self.assertTrue(bool(datetime.now() >= data[1])) data = ncache._get_or_timeout('k1') self.assertEqual(data, 'NOT FOUND')
def test_set_key_perm(self): """ Assert 'k1' -> 'some_test_data' in ncache.cache_values Assert 'k1' -> ('perm', <datetime>) """ ncache._set_key('k1', 'some_test_data') data = ncache.cache_timeouts.get('k1') self.assertEqual(data[0], 'perm') self.assertTrue(isinstance(data[1], datetime)) self.assertTrue(bool(datetime.now() >= data[1])) data = ncache._get_or_timeout('k1') self.assertEqual(data, 'some_test_data') # repeat test to guard against accidental removal using pop instead of get :-$ data = ncache._get_or_timeout('k1') self.assertEqual(data, 'some_test_data')
def test_set_key_ttl(self): """ Assert 'k1' -> 'some_test_data' in ncache.cache_values Assert 'k1' -> ('ttl', <datetime + 2000seconds>) """ ncache._set_key('k1', 'some_test_data', ttl=2000) #XXX: hopefully this test will not stall over 2000seconds. It wouldn't in pure python outside of quartz data = ncache.cache_timeouts.get('k1') self.assertEqual(data[0], 'ttl') self.assertTrue(isinstance(data[1], datetime)) self.assertTrue(bool(datetime.now() <= data[1])) data = ncache._get_or_timeout('k1') self.assertEqual(data, 'some_test_data') # repeat test to guard against accidental removal using pop instead of get :-$ data = ncache._get_or_timeout('k1') self.assertEqual(data, 'some_test_data')