From 5331cf79d3157af743dd5c9e9c68374e0bbb3ff4 Mon Sep 17 00:00:00 2001 From: Poyoman <9864413+Poyoman39@users.noreply.github.com> Date: Mon, 14 Apr 2025 13:05:07 +0200 Subject: [PATCH] Add test to detect useless double rendering --- .../react-meteor-data/useTracker.tests.js | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/packages/react-meteor-data/useTracker.tests.js b/packages/react-meteor-data/useTracker.tests.js index 3ad700da..99a3c581 100644 --- a/packages/react-meteor-data/useTracker.tests.js +++ b/packages/react-meteor-data/useTracker.tests.js @@ -763,6 +763,26 @@ if (Meteor.isClient) { completed(); }); + Tinytest.addAsync('useTracker - No useless double render', async function (test, completed) { + const container = document.createElement("DIV"); + let renderCount = 0; + const Test = ({ afterMountInc = false }) => { + renderCount++; + value = useTracker(() => { + return null; + }, []); + return {renderCount}; + }; + + ReactDOM.render(, container); + + test.equal(renderCount, 1, "Should have rendered only once before mount"); + await waitFor(() => {}, { container, timeout: 250 }); + test.equal(renderCount, 1, "Should have rendered only once after mount"); + + completed(); + }); + // Tinytest.add( // "useTracker - print warning if return cursor from useTracker", // function (test) {