summaryrefslogtreecommitdiff
path: root/testing/test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'testing/test.ts')
-rw-r--r--testing/test.ts106
1 files changed, 106 insertions, 0 deletions
diff --git a/testing/test.ts b/testing/test.ts
index 7012a6e47..34b2762b4 100644
--- a/testing/test.ts
+++ b/testing/test.ts
@@ -28,6 +28,7 @@ test(function testingAssertEqual() {
const a = Object.create(null);
a.b = "foo";
assertEqual(a, a);
+ assert(assert.equal === assertEqual);
});
test(function testingAssertEqualActualUncoercable() {
@@ -55,3 +56,108 @@ test(function testingAssertEqualExpectedUncoercable() {
}
assert(didThrow);
});
+
+test(function testingAssertStrictEqual() {
+ const a = {};
+ const b = a;
+ assert.strictEqual(a, b);
+});
+
+test(function testingAssertNotStrictEqual() {
+ let didThrow = false;
+ const a = {};
+ const b = {};
+ try {
+ assert.strictEqual(a, b);
+ } catch (e) {
+ assert(e.message === "actual: [object Object] expected: [object Object]");
+ didThrow = true;
+ }
+ assert(didThrow);
+});
+
+test(function testingDoesThrow() {
+ let count = 0;
+ assert.throws(() => {
+ count++;
+ throw new Error();
+ });
+ assert(count === 1);
+});
+
+test(function testingDoesNotThrow() {
+ let count = 0;
+ let didThrow = false;
+ try {
+ assert.throws(() => {
+ count++;
+ console.log("Hello world");
+ });
+ } catch (e) {
+ assert(e.message === "Expected function to throw.");
+ didThrow = true;
+ }
+ assert(count === 1);
+ assert(didThrow);
+});
+
+test(function testingThrowsErrorType() {
+ let count = 0;
+ assert.throws(() => {
+ count++;
+ throw new TypeError();
+ }, TypeError);
+ assert(count === 1);
+});
+
+test(function testingThrowsNotErrorType() {
+ let count = 0;
+ let didThrow = false;
+ try {
+ assert.throws(() => {
+ count++;
+ throw new TypeError();
+ }, RangeError);
+ } catch (e) {
+ assert(e.message === `Expected error to be instance of "RangeError".`);
+ didThrow = true;
+ }
+ assert(count === 1);
+ assert(didThrow);
+});
+
+test(function testingThrowsMsgIncludes() {
+ let count = 0;
+ assert.throws(
+ () => {
+ count++;
+ throw new TypeError("Hello world!");
+ },
+ TypeError,
+ "world"
+ );
+ assert(count === 1);
+});
+
+test(function testingThrowsMsgNotIncludes() {
+ let count = 0;
+ let didThrow = false;
+ try {
+ assert.throws(
+ () => {
+ count++;
+ throw new TypeError("Hello world!");
+ },
+ TypeError,
+ "foobar"
+ );
+ } catch (e) {
+ assert(
+ e.message ===
+ `Expected error message to include "foobar", but got "Hello world!".`
+ );
+ didThrow = true;
+ }
+ assert(count === 1);
+ assert(didThrow);
+});