[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Assert](https://evolu.dev/docs/api-reference/common/Assert) › assertEqual

```ts
function assertEqual(actual: unknown, expected: unknown): void;
```

Defined in: [packages/common/src/Assert.ts:1091](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Assert.ts#L1091)

Asserts that two values are equal.

Use this for value comparisons of both primitive and deeply structured
values. Use [assertSame](https://evolu.dev/docs/api-reference/common/Assert/variables/assertSame) when exact sameness or narrowing is required.

Like `assert.deepEqual` from `node:assert/strict`, it performs deep
structural comparison, but uses deliberately smaller, platform-agnostic
equality logic based on [eqData](https://evolu.dev/docs/api-reference/common/Eq/functions/eqData). More complex comparison logic is
difficult to reason about and rarely needed. Other values are opaque and
compare equal only by identity. If broader comparison semantics are needed in
Node.js, use the native assertion instead.

### Example

```ts

assertEqual(21 * 2, 42);

const actual: unknown = new Map([["roles", new Set(["admin", "author"])]]);
const expected = new Map([["roles", new Set(["author", "admin"])]]);

assertEqual(actual, expected);
```