Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Go to Latest
File
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
import { expect } from "./expect.ts";import { AssertionError, assertThrows } from "../assert/mod.ts";
Deno.test("expect().toMatchObject()", () => { const house0 = { bath: true, bedrooms: 4, kitchen: { amenities: ["oven", "stove", "washer"], area: 20, wallColor: "white", }, }; const house1 = { bath: true, bedrooms: 4, kitchen: { amenities: ["oven", "stove"], area: 20, wallColor: "white", }, }; const desiredHouse = { bath: true, kitchen: { amenities: ["oven", "stove", "washer"], wallColor: "white", }, };
expect(house0).toMatchObject(desiredHouse); expect([house0]).toMatchObject([desiredHouse]);
expect(house1).not.toMatchObject(desiredHouse); expect([house1]).not.toMatchObject([desiredHouse]);
assertThrows(() => { expect(house1).toMatchObject(desiredHouse); }, AssertionError); assertThrows(() => { expect([house1]).toMatchObject([desiredHouse]); }, AssertionError);
assertThrows(() => { expect(house0).not.toMatchObject(desiredHouse); }, AssertionError); assertThrows(() => { expect([house0]).not.toMatchObject([desiredHouse]); }, AssertionError);});