From 9c1de633c0812f47eca2e8c9c5c1366eb9f2212b Mon Sep 17 00:00:00 2001 From: ComputerGuy <63362464+Ocean-OS@users.noreply.github.com> Date: Sat, 19 Jul 2025 10:41:47 -0700 Subject: [PATCH] add test --- packages/svelte/tests/signals/test.ts | 38 +++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/packages/svelte/tests/signals/test.ts b/packages/svelte/tests/signals/test.ts index 937324727b..261198fc1c 100644 --- a/packages/svelte/tests/signals/test.ts +++ b/packages/svelte/tests/signals/test.ts @@ -4,6 +4,7 @@ import * as $ from '../../src/internal/client/runtime'; import { push, pop } from '../../src/internal/client/context'; import { effect, + effect_active, effect_root, render_effect, user_effect, @@ -1390,4 +1391,41 @@ describe('signals', () => { destroy(); }; }); + + test('$effect.active()', () => { + const log: Array = []; + + return () => { + log.push('effect orphan', effect_active()); + const destroy = effect_root(() => { + log.push('effect root', effect_active()); + effect(() => { + log.push('effect', effect_active()); + }); + $.get( + derived(() => { + log.push('derived', effect_active()); + return 1; + }) + ); + return () => { + log.push('effect teardown', effect_active()); + }; + }); + flushSync(); + destroy(); + assert.deepEqual(log, [ + 'effect orphan', + false, + 'effect root', + true, + 'derived', + true, + 'effect', + true, + 'effect teardown', + false + ]); + }; + }); });