def test_statreload(): """ A basic sanity check. Simply run the reloader against a no-op server, and signal for it to quit immediately. """ config = Config(app=None, reload=True) reloader = StatReload(config, target=run, sockets=[]) reloader.signal_handler(sig=signal.SIGINT, frame=None) reloader.run()
def test_should_not_reload_when_dot_file_is_changed(tmpdir): update_file = Path(tmpdir) / ".dotted" update_file.touch() working_dir = os.getcwd() os.chdir(str(tmpdir)) try: config = Config(app=None, reload=True) reloader = StatReload(config, target=run, sockets=[]) reloader.signal_handler(sig=signal.SIGINT, frame=None) reloader.startup() assert not reloader.should_restart() time.sleep(0.1) update_file.touch() assert not reloader.should_restart() reloader.restart() reloader.shutdown() finally: os.chdir(working_dir)
def test_should_reload(tmpdir): update_file = Path(os.path.join(str(tmpdir), "example.py")) update_file.touch() working_dir = os.getcwd() os.chdir(str(tmpdir)) try: config = Config(app=None, reload=True) reloader = StatReload(config, target=run, sockets=[]) reloader.signal_handler(sig=signal.SIGINT, frame=None) reloader.startup() assert not reloader.should_restart() time.sleep(0.1) update_file.touch() assert reloader.should_restart() reloader.restart() reloader.shutdown() finally: os.chdir(working_dir)