assertEquals

import { assertEquals } from "jsr:@ende/assert";

function

function assertEquals<T>(actual: T, expected: T, msg?: string): void

Make an assertion that actual and expected are equal, deeply. If not deeply equal, then throw.

Type parameter can be specified to ensure values under comparison have the same type.

Note: This function is based on value equality, but for some cases (such as data that can only be read asynchronously or function properties) value equality is not possible to determine. In such cases, reference equality is used instead, which may cause false negatives for objects such as Blobs or Requests.

actual: T

The actual value to compare.

expected: T

The expected value to compare.

msg?: string

The optional message to display if the assertion fails.

Example: Usage

import { assertEquals } from "@ende/assert";

assertEquals("world", "world"); // Doesn't throw
assertEquals("hello", "world"); // Throws

Example: Compare Blob objects

import { assertEquals } from "@ende/assert";

const bytes1 = await new Blob(["foo"]).bytes();
const bytes2 = await new Blob(["foo"]).bytes();

assertEquals(bytes1, bytes2);

Source