Пример #1
0
 def tests_expire(self):
     "moments can expire values"
     b = moment()
     b.set('a', expires=datetime.now() + timedelta(milliseconds=10))
     self.assertEquals(b.get(), 'a')
     time.sleep(.01)
     self.assertRaises(ValueError, b.get)
Пример #2
0
 def test_future(self):
     "moments can have multiple future values"
     b = moment('a', future=dict(milliseconds=10))
     b.set('b', future=dict(milliseconds=20))
     self.assertRaises(ValueError, b.get)
     time.sleep(.01)
     self.assertEquals(b.get(), 'a')
     time.sleep(.01)
     self.assertEquals(b.get(), 'b')
     self.assertEquals(len(b), 1, "'a' was not removed")
Пример #3
0
 def tests_value(self):
     "moments evicts present"
     b = moment()
     b.set('a')
     b.set('b')
     self.assertEquals(b.get(), 'b')
     b.set('c')
     self.assertEquals(b.get(), 'c')
     self.assertEquals(len(b), 1)
     # replace w/ future
     b.set('d', future=datetime.now() + timedelta(milliseconds=10))
     self.assertEquals(b.get(), 'c')
     self.assertEquals(len(b), 2)
     time.sleep(.01)
     self.assertEquals(b.get(), 'd')
Пример #4
0
 def test_set(self):
     "moments validate expires/future values"
     self.assertRaises(ValueError, moment().set, 1, 'not a date')
     self.assertRaises(ValueError, moment().set, 1, future='not a date')
     self.assertRaises(AssertionError, moment().set, 1, expires=datetime.now() - timedelta(minutes=10))
     self.assertRaises(AssertionError, moment().set, 1, datetime.now() + timedelta(minutes=10), datetime.now() + timedelta(minutes=20))