summaryrefslogtreecommitdiff
path: root/cli/tests
AgeCommit message (Collapse)Author
2020-04-14test(inspector): add coverage test case (#4725)Bartek Iwańczuk
2020-04-14fix(worker): make worker name spec compliant (#4746)Bartek Iwańczuk
2020-04-13feat: implement EventTarget for worker scope (#4737)Bartek Iwańczuk
2020-04-13feat(worker): add MessageEvent, ErrorEvent and handling to Worker API (#4391)crowlKats
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-04-13refactor(core/js_error): Align JSStackFrame with CallSite (#4715)Nayeem Rahman
Renames and adds missing fields to JSStackFrame from CallSite. Fixes #4705. Cleans up base changes for line and column numbers.
2020-04-11refactor(cli/fmt_errors): Format stack frames in prepareStackTrace() (#4706)Nayeem Rahman
2020-04-10Remove __domTypes namespace (#4698)Ryan Dahl
2020-04-10fix(core/js_error): Get frame data from prepareStackTrace() (#4690)Nayeem Rahman
Fixes: #2703 Fixes: #2710 Closes: #4153 Closes: #4232 Co-authored-by: Kevin (Kun) Kassimo Qian <kevinkassimo@gmail.com>
2020-04-10implement Worker.terminate() and self.close() (#4684)Bartek Iwańczuk
2020-04-07BREAKING: Rename 'deno fetch' subcommand to 'deno cache' (#4656)Akshat Agarwal
2020-04-07feat: add --importmap flag to deno bundle (#4651)Bartek Iwańczuk
2020-04-06fix: fetch reference types for JS files (#4652)Giorgi Rostomashvili
Fixes #4000 and fixes #4476. Now always tries to fetch reference types for JS files. Does not throw if it fails, since Typescript compiler will complain if the file is not there(it will try to fetch it again first) and people who just use JS should not be bothered by this error. Not sure about my test, it passes and catches the bug but maybe there is a better way to express it.
2020-04-04Enable inspector tests (#4628)Andres Villegas
2020-04-03Make inspector more robust, add --inspect-brk support (#4552)Bert Belder
2020-04-01Support dynamic import in bundles. (#4561)Kitson Kelly
2020-03-30console: iterable printing improvements (#4472)Michał Sabiniarz
1. Array elements are now grouped the same as in Node.js 2. Limit to 100 (Node.js default) elements to display in iterable 3. Print each element in new line if excessing max line length (same as in Node.js) 4. Print length of the TypedArray 5. Print information about empty items in Array
2020-03-28Ignore flaky test cafile_info (#4517)Ryan Dahl
Ref #4512
2020-03-28fix(inspector): proper error message on port collision (#4514)Kevin (Kun) "Kassimo" Qian
2020-03-28Update to Prettier 2 and use ES Private Fields (#4498)Kitson Kelly
2020-03-27feat: Support Inspector / Chrome Devtools (#4484)Ryan Dahl
This is a first pass implementation which is still missing several important features: - support for --inspect-brk (#4503) - support for source maps (#4501) - support for piping console.log to devtools console (#4502) Co-authored-by: Bert Belder <bertbelder@gmail.com> Co-authored-by: Matt Harrison <mt.harrison86@gmail.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-03-24feat: window.close() (#4474)Kevin (Kun) "Kassimo" Qian
2020-03-24errors: replace .lines with explicit .split newline (#4483)Kevin (Kun) "Kassimo" Qian
2020-03-24hide source line if error message longer than 150 chars (#4487)Kevin (Kun) "Kassimo" Qian
2020-03-24console: replace object abbreviation with line breaking (#4425)Michał Sabiniarz
2020-03-23feat: first pass at "deno upgrade" (#4328)bartOssh
2020-03-21BREAKING CHANGE Rename Deno.run's args to cmd (#4444)Akshat Agarwal
This is to avoid confusion with Deno.args which does not include the executable to be run.
2020-03-20Remove DENO_BUILD_MODE and DENO_BUILD_PATH (#4431)Ryan Dahl
* Remove DENO_BUILD_MODE and DENO_BUILD_PATH Also remove outdated docs related to ninja/gn. * fix * remove parameter to build_mode() * remove arg parsing from benchmark.py
2020-03-20Add require-await lint rule (#4401)Samrith Shankar
2020-03-19Clean up installer tests (#4433)Ryan Dahl
2020-03-19perf: Optimize TextEncoder and TextDecoder (#4430)Bartek Iwańczuk
* add tests for "Deno.core.encode" and "Deno.core.decode" for empty inputs * use "Deno.core.encode" in "TextEncoder" * use "Deno.core.decode" in "TextDecoder" * remove "core_decode" and "core_encode" benchmarks
2020-03-19Fix cafile_install_remote_module test (#4429)Ryan Dahl
2020-03-19remove std/testing/runner.ts, use deno test for std/ tests (#4397)Bartek Iwańczuk
This introduces BREAKING CHANGE by removing "std/testing/runner.ts". Std tests are now run using "deno test" subcommand.
2020-03-19fix: std/testing/runner.ts and deno test (#4392)Bartek Iwańczuk
After splitting "failFast" and "exitOnFail" arguments, there was a situation where failing tests did not exit with code 1. * fixed argument value passed to Deno.runTests() in deno test * fixed argument value passed to Deno.runTests() in std/testing/runner.ts * added integration tests for deno test to ensure failFast and exitOnFail work as expected * don't write test file to file system, but keep it in memory
2020-03-18feat: Deno.test() sanitizes ops and resources (#4399)Bartek Iwańczuk
This PR brings assertOps and assertResources sanitizers to Deno.test() API. assertOps checks that test doesn't leak async ops, ie. there are no unresolved promises originating from Deno APIs. Enabled by default, can be disabled using Deno.TestDefinition.disableOpSanitizer. assertResources checks that test doesn't leak resources, ie. all resources used in test are closed. For example; if a file is opened during a test case it must be explicitly closed before test case finishes. It's most useful for asynchronous generators. Enabled by default, can be disabled using Deno.TestDefinition.disableResourceSanitizer. We've used those sanitizers in internal runtime tests and it proved very useful in surfacing incorrect tests which resulted in interference between the tests. All tests have been sanitized. Closes #4208
2020-03-18Provide compiled JSON to TypeScript compiler. (#4404)Kitson Kelly
Fixes #4101 Previously, we would just provide the raw JSON to the TypeScript compiler worker, but TypeScript does not transform JSON. This caused a problem when emitting a bundle, that the JSON would just be "inlined" into the output, instead of being transformed into a module. This fixes this problem by providing the compiled JSON to the TypeScript compiler, so TypeScript just sees JSON as a "normal" TypeScript module.
2020-03-17try to handle ConnectionReset error in windows CI for unit tests (#4407)Bartek Iwańczuk
2020-03-16console: Symbol.toStringTag and display Object symbol entries (#4388)Kevin (Kun) "Kassimo" Qian
2020-03-15refactor: change test reporter output (#4371)Bartek Iwańczuk
This commit changes output of default test reporter to resemble output from Rust test runner; first the name of running test is printed with "...", then after test has run result is printed on the same line. * Split "Deno.TestEvent.Result" into "TestStart" and "TestEnd"; * changes TestReporter interface to support both events; Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-03-15feat: Deno.core.{encode,decode}; standalone UTF-8 encoding/decoding (#4349)Bartek Iwańczuk
This commits add two new methods to "Deno.core" namespace: "encode" and "decode". Those methods are bound in Rust to provide a) fast b) generally available of encoding and decoding UTF-8 strings. Both methods are now used in "cli/js/dispatch_json.ts".
2020-03-15Remove Object.prototype.__proto__ (#4341)Kitson Kelly
2020-03-15feat(cli/js/testing): Add TestDefinition::skip (#4351)Nayeem Rahman
2020-03-14Update CLI for unit_test_runner.ts (#4352)Bartek Iwańczuk
* drop server guard before unit test result check To prevent cascading test failures when js_unit_test http server guard is dropped before asserting that tests were successful. This is really a band-aid and doesn't solve underlying issue with http server. * Update CLI for unit_test_runner.ts * Change cli/js/tests/unit_test_runner.ts command line interface to work in 3 modes: - "one-off" - run tests that match permissions of currently running process - "master" - run tests for all possible permission combinations, by spawning subprocesses running in "worker" mode and communicating via TCP socket; requires elevated permissions - "worker" - run tests for set of permissions provided by CLI arg; requires elevated permissions to setup TCP connection to "master"; after initial setup process drops permissions to given set * Support filtering of tests by string passed after "--" CLI arg * Update cli/js/tests/README.md
2020-03-13refactor: unit test runner communicates using TCP socket (#4336)Bartek Iwańczuk
Rewrites "cli/js/unit_test_runner.ts" to communicate with spawned subprocesses using TCP socket. * Rewrite "Deno.runTests()" by factoring out testing logic to private "TestApi" class. "TestApi" implements "AsyncIterator" that yields "TestEvent"s, which is an interface for different types of event occuring during running tests. * Add "reporter" argument to "Deno.runTests()" to allow users to provide custom reporting mechanism for tests. It's represented by "TestReporter" interface, that implements hook functions for each type of "TestEvent". If "reporter" is not provided then default console reporting is used (via "ConsoleReporter"). * Change how "unit_test_runner" communicates with spawned suprocesses. Instead of parsing text data from child's stdout, a TCP socket is created and used for communication. "unit_test_runner" can run in either "master" or "worker" mode. Former is responsible for test discovery and establishing needed permission combinations; while latter (that is spawned by "master") executes tests that match given permission set. * Use "SocketReporter" that implements "TestReporter" interface to send output of tests to "master" process. Data is sent as stringified JSON and then parsed by "master" as structured data. "master" applies it's own reporting logic to output tests to console (by reusing default "ConsoleReporter").
2020-03-12Enable std tests in debug mode (#4332)Ryan Dahl
2020-03-11Add waker to StreamResource to fix hang on close bugs (#4293)João Souto
2020-03-11move compiler API tests to integration tests (#4319)Bartek Iwańczuk
2020-03-11reorg: cli/js/compiler/, move more API to cli/js/web/ (#4310)Bartek Iwańczuk
- moves compiler implementation to "cli/js/compiler/" directory - moves more APIs to "cli/js/web": * "console.ts" * "console_table.ts" * "performance.ts" * "timers.ts" * "workers.ts" - removes some dead code from "cli/js/"
2020-03-10reorg: move js runtime tests to cli/js/tests/ (#4250)Bartek Iwańczuk
All Deno runtime test files were moved to cli/js/tests/ directory. It makes a clear distinction that cli/js/tests/ contains code that is run under Deno runtime as opposed to code in cli/js/ which is used to create bundle and snapshot with "deno_typescript".
2020-03-08disable test_raw_tty (#4282)Yusuke Sakurai
2020-03-08reorg: move JS ops implementations to cli/js/ops/, part 1 (#4264)Bartek Iwańczuk
Following JS ops were moved to separate files in cli/js/ops directory: - compiler - dispatch_json - dispatch_minimal - errors - fetch - fs_events - os - random - repl - resources - runtime_compiler - runtime - tty