summaryrefslogtreecommitdiff
path: root/cli/js/testing_test.ts
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-03-05 11:52:18 +0100
committerGitHub <noreply@github.com>2020-03-05 11:52:18 +0100
commit20dad3659c60b61c9f5af5427ad61857593bf3e6 (patch)
tree414fb9c533a33ac0e3cd9f38d86189325a9c1733 /cli/js/testing_test.ts
parent52b96fc22a93c804702617f20d24ed115fd5a780 (diff)
refactor: preliminary cleanup of Deno.runTests() (#4237)
* refactor: preliminary cleanup of Deno.runTests() * Change time measurement to use new Date() instead of performance.now(). Because there is no guarantee that tests are run with "--allow-hr" using new Date() guarantees higher precision of 1ms instead of 2ms. * Support String type filter in "skip" and "only". * Split "exitOnFail" into "exitOnFail" and "failFast". Former tells if "runTests()" should exit with code 1 on test failure, while latter tells if "runTests()" should stop running tests on first failure. * Use "defer" to wait for unhandled promise rejection - this bit is funky and doesn't seem right, but for now it's just a rewrite from using "setTimeout". Intended to be fixed in later commits. * Remove global "__DENO_TEST_REGISTRY", don't expose list of registered tests (to be addressed in follow up commits) * Remove arbitrary slow test threshold; use uniform coloring instead
Diffstat (limited to 'cli/js/testing_test.ts')
-rw-r--r--cli/js/testing_test.ts37
1 files changed, 37 insertions, 0 deletions
diff --git a/cli/js/testing_test.ts b/cli/js/testing_test.ts
new file mode 100644
index 000000000..b47eb03e2
--- /dev/null
+++ b/cli/js/testing_test.ts
@@ -0,0 +1,37 @@
+// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
+import { assertThrows, unitTest } from "./test_util.ts";
+
+unitTest(function testFnOverloading(): void {
+ // just verifying that you can use this test definition syntax
+ Deno.test("test fn overloading", (): void => {});
+});
+
+unitTest(function nameOfTestCaseCantBeEmpty(): void {
+ assertThrows(
+ () => {
+ Deno.test("", () => {});
+ },
+ Error,
+ "The name of test case can't be empty"
+ );
+ assertThrows(
+ () => {
+ Deno.test({
+ name: "",
+ fn: () => {}
+ });
+ },
+ Error,
+ "The name of test case can't be empty"
+ );
+});
+
+unitTest(function testFnCantBeAnonymous(): void {
+ assertThrows(
+ () => {
+ Deno.test(function() {});
+ },
+ Error,
+ "Test function can't be anonymous"
+ );
+});