date.test.ts — svelte Source File
Architecture documentation for date.test.ts, a typescript file in the svelte codebase. 8 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 3654304d_e89d_c28d_2667_5d1a3440f6d3["date.test.ts"] 1ae6fa4e_16ee_acdf_5e28_17eb0819fddb["effects.js"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> 1ae6fa4e_16ee_acdf_5e28_17eb0819fddb 7494b934_a3b8_689e_91b6_8435e26461c5["render_effect"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> 7494b934_a3b8_689e_91b6_8435e26461c5 cf74814c_38ff_1817_80eb_cbc1bb490472["effect_root"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> cf74814c_38ff_1817_80eb_cbc1bb490472 717fc8d5_bdb4_4b73_d6c5_c4a367a60cf2["index-client.js"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> 717fc8d5_bdb4_4b73_d6c5_c4a367a60cf2 7c09b4ab_171c_0277_b8c0_61940f33ff53["date.js"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> 7c09b4ab_171c_0277_b8c0_61940f33ff53 ead2ff3c_1f9f_37b6_47f8_3d9514f78e14["SvelteDate"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> ead2ff3c_1f9f_37b6_47f8_3d9514f78e14 b63ddb92_634c_990b_eb1b_0bad8a4d434e["vitest"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> b63ddb92_634c_990b_eb1b_0bad8a4d434e 1a59b12b_63d5_2eb4_1881_6fb96dbdcb56["client"] 3654304d_e89d_c28d_2667_5d1a3440f6d3 --> 1a59b12b_63d5_2eb4_1881_6fb96dbdcb56 style 3654304d_e89d_c28d_2667_5d1a3440f6d3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { render_effect, effect_root } from '../internal/client/reactivity/effects.js';
import { flushSync } from '../index-client.js';
import { SvelteDate } from './date.js';
import { assert, test } from 'vitest';
import { derived, get } from 'svelte/internal/client';
const initial_date = new Date(2023, 0, 2, 0, 0, 0, 0);
const a = new Date(2024, 1, 3, 1, 1, 1, 1);
const b = new Date(2025, 2, 4, 2, 2, 2, 2);
const c = new Date(2026, 3, 5, 3, 3, 3, 3);
test('date.setDate and date.setUTCDate', () => {
const date = new SvelteDate(initial_date);
const log: any = [];
const cleanup = effect_root(() => {
render_effect(() => {
log.push(date.getDate());
});
render_effect(() => {
log.push(date.getUTCDate());
});
});
flushSync(() => {
date.setDate(a.getDate());
});
flushSync(() => {
date.setDate(date.getDate() + 1);
});
flushSync(() => {
date.setDate(date.getDate()); // no change expected
});
flushSync(() => {
date.setUTCDate(date.getUTCDate() + 1);
});
// Date/UTCDate may vary on some timezones
const date_plus_zero = new Date(initial_date);
date_plus_zero.setDate(a.getDate());
const date_plus_one = new Date(initial_date);
date_plus_one.setDate(a.getDate() + 1);
const date_plus_two = new Date(initial_date);
date_plus_two.setDate(a.getDate() + 2);
assert.deepEqual(log, [
initial_date.getDate(),
initial_date.getUTCDate(),
date_plus_zero.getDate(),
date_plus_zero.getUTCDate(),
date_plus_one.getDate(),
date_plus_one.getUTCDate(),
date_plus_two.getDate(),
date_plus_two.getUTCDate()
]);
cleanup();
// ... (615 more lines)
Domain
Dependencies
Source
Frequently Asked Questions
What does date.test.ts do?
date.test.ts is a source file in the svelte codebase, written in typescript. It belongs to the SharedInternal domain.
What does date.test.ts depend on?
date.test.ts imports 8 module(s): SvelteDate, client, date.js, effect_root, effects.js, index-client.js, render_effect, vitest.
Where is date.test.ts in the architecture?
date.test.ts is located at packages/svelte/src/reactivity/date.test.ts (domain: SharedInternal, directory: packages/svelte/src/reactivity).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free