Home / File/ assert.js — svelte Source File

assert.js — svelte Source File

Architecture documentation for assert.js, a javascript file in the svelte codebase. 1 imports, 66 dependents.

File javascript BuildSystem MessageProcessor 1 imports 66 dependents 9 functions

Entity Profile

Dependency Diagram

graph LR
  2a2d28a9_d1e5_6b47_9375_279552e7c7f8["assert.js"]
  54c2bfce_50b6_b8cc_4371_e1e14f283fb3["constants"]
  2a2d28a9_d1e5_6b47_9375_279552e7c7f8 --> 54c2bfce_50b6_b8cc_4371_e1e14f283fb3
  fbfd7d35_ffe5_f36d_ef56_20111263faeb["_config.js"]
  fbfd7d35_ffe5_f36d_ef56_20111263faeb --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  9a1c7a37_a21a_40e2_6207_c3e72cb50b94["_config.js"]
  9a1c7a37_a21a_40e2_6207_c3e72cb50b94 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  46314623_107f_8730_462a_6f8f4a28d95d["_config.js"]
  46314623_107f_8730_462a_6f8f4a28d95d --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  da2e72c6_698b_d9a8_6efd_a85cddadcde5["_config.js"]
  da2e72c6_698b_d9a8_6efd_a85cddadcde5 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  57e96072_dd30_049e_df3d_37e7d4ebdfd5["_config.js"]
  57e96072_dd30_049e_df3d_37e7d4ebdfd5 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  397675bd_41e9_7e3a_de3d_b325fd4658fe["_config.js"]
  397675bd_41e9_7e3a_de3d_b325fd4658fe --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  e9b062a9_69df_d6aa_162a_b915d8e5ad72["_config.js"]
  e9b062a9_69df_d6aa_162a_b915d8e5ad72 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  98dfc561_b298_abf7_261f_bc725c7ca6a2["_config.js"]
  98dfc561_b298_abf7_261f_bc725c7ca6a2 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  7466555a_e403_d848_d1e2_a718aec70bf0["_config.js"]
  7466555a_e403_d848_d1e2_a718aec70bf0 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  91d5edf5_954a_8cfa_28f7_4e7e9decfd23["_config.js"]
  91d5edf5_954a_8cfa_28f7_4e7e9decfd23 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  cb638886_053a_126a_d875_b9f1b341a179["_config.js"]
  cb638886_053a_126a_d875_b9f1b341a179 --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  9c9acecb_99f0_9f91_39bc_6e6a5af6c2ed["_config.js"]
  9c9acecb_99f0_9f91_39bc_6e6a5af6c2ed --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  c8259962_b8a2_77cc_1a26_8b2b0c18631a["_config.js"]
  c8259962_b8a2_77cc_1a26_8b2b0c18631a --> 2a2d28a9_d1e5_6b47_9375_279552e7c7f8
  style 2a2d28a9_d1e5_6b47_9375_279552e7c7f8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/** @import { assert } from 'vitest' */
/** @import { CompileOptions, Warning } from '#compiler' */

import { ELEMENT_NODE } from '#client/constants';

/**
 * @param {any} a
 * @param {any} b
 * @param {string} [message]
 */
export function deepEqual(a, b, message) {
	if (!is_equal(a, b)) {
		throw new Error(message || `Expected ${JSON.stringify(a)} to equal ${JSON.stringify(b)}`);
	}
}

/**
 * @param {any} a
 * @param {any} b
 * @returns {boolean}
 */
function is_equal(a, b) {
	if (a && typeof a === 'object') {
		const is_array = Array.isArray(a);
		if (Array.isArray(b) !== is_array) return false;

		if (is_array) {
			if (a.length !== b.length) return false;
			return a.every((value, i) => is_equal(value, b[i]));
		}

		const a_keys = Object.keys(a).sort();
		const b_keys = Object.keys(b).sort();
		if (a_keys.join(',') !== b_keys.join(',')) return false;

		return a_keys.every((key) => is_equal(a[key], b[key]));
	}

	return a === b;
}
/**
 * @param {any} a
 * @param {any} b
 * @param {string} [message]
 */
export function equal(a, b, message) {
	if (a != b) throw new Error(message || `Expected ${a} to equal ${b}`);
}
/**
 * @param {any} condition
 * @param {string} [message]
 * @returns {asserts condition}
 */
export function ok(condition, message) {
	if (!condition) throw new Error(message || `Expected ${condition} to be truthy`);
}

/**
 * @param {any} actual
 * @param {any} expected
// ... (120 more lines)

Domain

Subdomains

Dependencies

  • constants

Imported By

Frequently Asked Questions

What does assert.js do?
assert.js is a source file in the svelte codebase, written in javascript. It belongs to the BuildSystem domain, MessageProcessor subdomain.
What functions are defined in assert.js?
assert.js defines 9 function(s): assert_ok, deepEqual, equal, htmlEqual, is_equal, normalize_children, normalize_html, ok, test.
What does assert.js depend on?
assert.js imports 1 module(s): constants.
What files import assert.js?
assert.js is imported by 66 file(s): _config.js, _config.js, _config.js, _config.js, _config.js, _config.js, _config.js, _config.js, and 58 more.
Where is assert.js in the architecture?
assert.js is located at packages/svelte/tests/runtime-browser/assert.js (domain: BuildSystem, subdomain: MessageProcessor, directory: packages/svelte/tests/runtime-browser).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free