diff options
| author | Todd Willey <todd@ansolabs.com> | 2010-07-26 23:49:49 -0400 |
|---|---|---|
| committer | Todd Willey <todd@ansolabs.com> | 2010-07-26 23:49:49 -0400 |
| commit | 74ce3aef4dafca8b0fc6bf0404725afdefe335ec (patch) | |
| tree | 1678449c19d09a656812229ad2c5f1a8753482f6 | |
| parent | 7588ae06e8d6a7d526b12e0f15f3e5be522f16d0 (diff) | |
| download | nova-74ce3aef4dafca8b0fc6bf0404725afdefe335ec.tar.gz nova-74ce3aef4dafca8b0fc6bf0404725afdefe335ec.tar.xz nova-74ce3aef4dafca8b0fc6bf0404725afdefe335ec.zip | |
Give SessionToken an is_expired method
| -rw-r--r-- | nova/compute/model.py | 5 | ||||
| -rw-r--r-- | nova/tests/model_unittest.py | 11 |
2 files changed, 16 insertions, 0 deletions
diff --git a/nova/compute/model.py b/nova/compute/model.py index 7335d2c79..bae93b6c1 100644 --- a/nova/compute/model.py +++ b/nova/compute/model.py @@ -288,6 +288,11 @@ class SessionToken(datastore.BasicModel): expires = time + diff self['expiry'] = expires.strftime(utils.TIME_FORMAT) + def is_expired(self): + now = datetime.datetime.utcnow() + expires = utils.parse_isotime(self['expiry']) + return expires <= now + if __name__ == "__main__": import doctest diff --git a/nova/tests/model_unittest.py b/nova/tests/model_unittest.py index 10d3016f8..88ba5e6e9 100644 --- a/nova/tests/model_unittest.py +++ b/nova/tests/model_unittest.py @@ -279,3 +279,14 @@ class ModelTestCase(test.TrialTestCase): instance = yield model.SessionToken.generate("testuser") inst = model.SessionToken.lookup(instance.identifier) self.assert_(inst) + + @defer.inlineCallbacks + def test_session_token_is_expired_when_expired(self): + instance = yield model.SessionToken.generate("testuser") + instance['expiry'] = datetime.utcnow().strftime(utils.TIME_FORMAT) + self.assert_(instance.is_expired()) + + @defer.inlineCallbacks + def test_session_token_is_expired_when_not_expired(self): + instance = yield model.SessionToken.generate("testuser") + self.assertFalse(instance.is_expired()) |
