mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-02 21:01:51 +00:00
29 lines
608 B
TypeScript
29 lines
608 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { isPlainObject } from "./plain-object.js";
|
|
|
|
describe("isPlainObject", () => {
|
|
it.each([
|
|
{},
|
|
{ a: 1 },
|
|
Object.create(null),
|
|
new (class X {})(),
|
|
{ [Symbol.toStringTag]: "Object" },
|
|
])("accepts object-tag values: %j", (value) => {
|
|
expect(isPlainObject(value)).toBe(true);
|
|
});
|
|
|
|
it.each([
|
|
null,
|
|
[],
|
|
new Date(),
|
|
/re/,
|
|
"x",
|
|
42,
|
|
() => null,
|
|
new Map(),
|
|
{ [Symbol.toStringTag]: "Array" },
|
|
])("rejects non-plain values: %j", (value) => {
|
|
expect(isPlainObject(value)).toBe(false);
|
|
});
|
|
});
|