fix(ui): fix upgrade needed reload

This commit is contained in:
Łukasz Mierzwa
2020-04-29 10:10:02 +01:00
committed by Łukasz Mierzwa
parent 06d8eb6089
commit d15a0f1ff1
2 changed files with 14 additions and 1 deletions

View File

@@ -11,7 +11,8 @@ import "csshake/scss/csshake-slow.scss";
const UpgradeNeeded = ({ newVersion, reloadAfter }) => {
useEffect(() => {
setTimeout(window.location.reload, reloadAfter);
const timer = setTimeout(() => window.location.reload(), reloadAfter);
return () => clearTimeout(timer);
}, [reloadAfter]);
return (

View File

@@ -34,4 +34,16 @@ describe("<UpgradeNeeded />", () => {
jest.runOnlyPendingTimers();
expect(reloadSpy).toBeCalled();
});
it("stops calling window.location.reload after unmount", () => {
const reloadSpy = jest
.spyOn(global.window.location, "reload")
.mockImplementation(() => {});
const tree = mount(
<UpgradeNeeded newVersion="1.2.3" reloadAfter={100000000} />
);
tree.unmount();
jest.runOnlyPendingTimers();
expect(reloadSpy).not.toBeCalled();
});
});