50 lines
1.5 KiB
JavaScript
50 lines
1.5 KiB
JavaScript
test("booleans", () => {
|
|
expect(true && true).toBeTrue();
|
|
expect(false && false).toBeFalse();
|
|
expect(true && false).toBeFalse();
|
|
expect(false && true).toBeFalse();
|
|
});
|
|
|
|
test("strings", () => {
|
|
expect("" && "").toBe("");
|
|
expect("" && false).toBe("");
|
|
expect("" && true).toBe("");
|
|
expect(false && "").toBeFalse();
|
|
expect(true && "").toBe("");
|
|
expect("foo" && "bar").toBe("bar");
|
|
expect("foo" && false).toBeFalse();
|
|
expect("foo" && true).toBeTrue();
|
|
expect(false && "bar").toBeFalse();
|
|
expect(true && "bar").toBe("bar");
|
|
});
|
|
|
|
test("numbers", () => {
|
|
expect(false && 1 === 2).toBeFalse();
|
|
expect(true && 1 === 2).toBeFalse();
|
|
expect(0 && false).toBe(0);
|
|
expect(0 && true).toBe(0);
|
|
expect(42 && false).toBeFalse();
|
|
expect(42 && true).toBeTrue();
|
|
expect(false && 0).toBeFalse();
|
|
expect(true && 0).toBe(0);
|
|
expect(false && 42).toBeFalse();
|
|
expect(true && 42).toBe(42);
|
|
});
|
|
|
|
test("objects", () => {
|
|
expect([] && false).toBeFalse();
|
|
expect([] && true).toBeTrue();
|
|
expect(false && []).toBeFalse();
|
|
expect(true && []).toHaveLength(0);
|
|
});
|
|
|
|
test("null & undefined", () => {
|
|
expect(null && false).toBeNull();
|
|
expect(null && true).toBeNull();
|
|
expect(false && null).toBeFalse();
|
|
expect(true && null).toBeNull();
|
|
expect(undefined && false).toBeUndefined();
|
|
expect(undefined && true).toBeUndefined();
|
|
expect(false && undefined).toBeFalse();
|
|
expect(true && undefined).toBeUndefined();
|
|
});
|