def test_23_usercache(self): username = "******" resolver = "resolver1" user_id = 1 timestamp = datetime.now() # create a user in the cache cached_user = UserCache(username, resolver, user_id, timestamp) self.assertTrue(cached_user) cached_user.save() # search a user in the cache find_user = UserCache.query.filter( UserCache.username == username).first() self.assertTrue(find_user) self.assertEqual(find_user.user_id, str(user_id)) self.assertEqual(find_user.resolver, resolver) self.assertEqual( find_user.timestamp, timestamp ) # TODO: Sensible, or might we have a small loss of precision? # delete the user from the cache r = find_user.delete() self.assertTrue(r) find_user = UserCache.query.filter( UserCache.username == username).first() self.assertFalse(find_user)
def test_23_usercache(self): username = "******" resolver = "resolver1" user_id = 1 timestamp = datetime.now() # create a user in the cache cached_user = UserCache(username, resolver, user_id, timestamp) self.assertTrue(cached_user) cached_user.save() # search a user in the cache find_user = UserCache.query.filter(UserCache.username == username).first() self.assertTrue(find_user) self.assertEqual(find_user.user_id, str(user_id)) self.assertEqual(find_user.resolver, resolver) self.assertEqual(find_user.timestamp, timestamp) # TODO: Sensible, or might we have a small loss of precision? # delete the user from the cache r = find_user.delete() self.assertTrue(r) find_user = UserCache.query.filter(UserCache.username == username).first() self.assertFalse(find_user)
def add_to_cache(username, resolver, user_id): """ Add the given record to the user cache, if it is enabled. The user cache is considered disabled if the config option EXPIRATION_SECONDS is set to 0. :param username: login name of the user :param resolver: resolver name of the user :param user_id: ID of the user in its resolver """ if is_cache_enabled(): timestamp = datetime.datetime.now() record = UserCache(username, resolver, user_id, timestamp) log.debug('Adding record to cache: ({!r}, {!r}, {!r}, {!r})'.format( username, resolver, user_id, timestamp)) record.save()
def test_23_usercache(self): username = "******" resolver = "resolver1" user_id = 1 # we don't need a timestamp with microseconds here, the MySQL DATETIME # type doesn't support it out of the box anyway timestamp = datetime.now().replace(microsecond=0) # create a user in the cache cached_user = UserCache(username, username, resolver, user_id, timestamp) self.assertTrue(cached_user) cached_user.save() # search a user in the cache find_user = UserCache.query.filter( UserCache.username == username).first() self.assertTrue(find_user) self.assertEqual(find_user.user_id, str(user_id)) self.assertEqual(find_user.resolver, resolver) self.assertEqual( find_user.timestamp, timestamp ) # TODO: Sensible, or might we have a small loss of precision? # search the user by his used_login # search a user in the cache find_user = UserCache.query.filter( UserCache.used_login == username).first() self.assertTrue(find_user) self.assertEqual(find_user.user_id, str(user_id)) self.assertEqual(find_user.resolver, resolver) # delete the user from the cache r = find_user.delete() self.assertTrue(r) find_user = UserCache.query.filter( UserCache.username == username).first() self.assertFalse(find_user)