def test_with_redis(self): with testing.redis.RedisServer() as redis: self.assertIsNotNone(redis) # connect to redis r = Redis(**redis.dsn()) self.assertIsNotNone(r) self.assertTrue(redis.is_alive()) # process is alive self.assertFalse(redis.is_alive()) # process is down
def test_stop(self): # start redis server redis = testing.redis.RedisServer() self.assertTrue(os.path.exists(redis.base_dir)) self.assertTrue(redis.is_alive()) # process is alive # call stop() redis.stop() self.assertFalse(os.path.exists(redis.base_dir)) self.assertFalse(redis.is_alive()) # process is down # call stop() again redis.stop() self.assertFalse(os.path.exists(redis.base_dir)) self.assertFalse(redis.is_alive()) # process is down # delete redis object after stop() del redis
def test_stop_on_child_process(self): redis = testing.redis.RedisServer() if os.fork() == 0: redis.stop() os.kill(redis.server_pid, 0) # process is alive (calling stop() is ignored) os.kill(os.getpid(), signal.SIGTERM) # exit tests FORCELY else: os.wait() sleep(1) self.assertTrue(redis.is_alive()) # process is alive (delete mysqld obj in child does not effect)
def test_fork(self): redis = testing.redis.RedisServer() if os.fork() == 0: del redis redis = None os.kill(os.getpid(), signal.SIGTERM) # exit tests FORCELY else: os.wait() sleep(1) self.assertTrue(redis.is_alive()) # process is alive (delete mysqld obj in child does not effect)
def test_fork(self): redis = testing.redis.RedisServer() if os.fork() == 0: del redis redis = None os.kill(os.getpid(), signal.SIGTERM) # exit tests FORCELY else: os.wait() sleep(1) self.assertTrue(redis.is_alive( )) # process is alive (delete mysqld obj in child does not effect)
def test_basic(self): # start redis server redis = testing.redis.RedisServer() self.assertIsNotNone(redis) self.assertEqual(redis.dsn(), dict(host='127.0.0.1', port=redis.redis_conf['port'], db=0)) # connect to redis r = Redis(**redis.dsn()) self.assertIsNotNone(r) pid = redis.server_pid self.assertTrue(redis.is_alive()) # shutting down redis.stop() sleep(1) self.assertFalse(redis.is_alive()) with self.assertRaises(OSError): os.kill(pid, 0) # process is down
def test_stop_on_child_process(self): redis = testing.redis.RedisServer() if os.fork() == 0: redis.stop() os.kill(redis.server_pid, 0) # process is alive (calling stop() is ignored) os.kill(os.getpid(), signal.SIGTERM) # exit tests FORCELY else: os.wait() sleep(1) self.assertTrue(redis.is_alive( )) # process is alive (delete mysqld obj in child does not effect)
def test_basic(self): # start redis server redis = testing.redis.RedisServer() self.assertIsNotNone(redis) self.assertEqual( redis.dsn(), dict(host='127.0.0.1', port=redis.redis_conf['port'], db=0)) # connect to redis r = Redis(**redis.dsn()) self.assertIsNotNone(r) pid = redis.server_pid self.assertTrue(redis.is_alive()) # shutting down redis.stop() sleep(1) self.assertFalse(redis.is_alive()) with self.assertRaises(OSError): os.kill(pid, 0) # process is down