1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-24 16:19:12 -05:00
Commit graph

3007 commits

Author SHA1 Message Date
Bartek Iwańczuk
aab1acaed1
refactor: unit test runner communicates using TCP socket (#4336)
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-13 15:57:32 +01:00
crowlKats
e435c2be15
Remove doc strings from cli/js TS files (#4329)
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-03-13 10:22:22 +01:00
Ryan Dahl
3ac642c183
upgrade: Rust 1.42.0 (#4331) 2020-03-12 18:07:57 +01:00
Ryan Dahl
63cee35691
Enable std tests in debug mode (#4332) 2020-03-12 17:12:20 +01:00
Chris Knight
cabe63eb05
fix: Node polyfill fsAppend rework (#4322)
* My original implementation of `fs.appendFile` used an async API, which, though 
  it would work fine as a polyfill, wasn't an exact match with the Node API.  This PR
  reworks that API to mimic the Node API fully as a synchronous void function with
  an async internal implementation.
* Refactor move of other internal fs `dirent` and `dir` classes to the _fs internal
  directory.
2020-03-12 10:12:27 -04:00
Ryan Dahl
3ed6ccc905
v0.36.0 2020-03-11 19:13:01 -04:00
João Souto
fb5c31416d
Add waker to StreamResource to fix hang on close bugs (#4293) 2020-03-11 18:19:24 -04:00
Bartek Iwańczuk
810e4a16be
reorg: Deno global initialization (#4317) 2020-03-11 21:57:24 +01:00
Bartek Iwańczuk
b8fa3fd5e7
move compiler API tests to integration tests (#4319) 2020-03-11 21:54:53 +01:00
dubiousjim
a28fa2415f
support permission mode in mkdir (#4286) 2020-03-11 16:14:23 -04:00
dubiousjim
72c408ea9d
Stricter permissions for Deno.makeTemp* (#4318) 2020-03-11 15:05:42 -04:00
Bartek Iwańczuk
2d1b39bef3
reorg: remove dispatch.ts, move signals, factor out web utils (#4316)
- moves signal definition from "cli/js/process.ts" to "cli/js/signals.ts"
- removes "cli/js/dispatch.ts"
- removes "cli/js/types.ts"
- moves web specific utilities to "cli/js/web/util.ts"
2020-03-11 15:49:53 +01:00
Bartek Iwańczuk
99a0c6df79
reorg: cli/js/compiler/, move more API to cli/js/web/ (#4310)
- 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-11 10:53:06 +01:00
Ryan Dahl
94f4c6807a
Improve dprint config (#4314) 2020-03-11 10:51:57 +01:00
Nayeem Rahman
ce14ef09d0
doc(cli/flags): Reduce empty lines in help messages (#4312) 2020-03-10 19:23:08 -04:00
Oliver Lenehan
a309dcdd0f
feat (std/encoding): add binary module (#4274) 2020-03-10 15:16:08 -04:00
Nayeem Rahman
55119aaee2
refactor(cli/js/net): Cleanup iterable APIs (#4236)
Listener and UDPConn are AsyncIterables instead of AsyncIterators.
The [Symbol.asyncIterator]()s are defined as generators and the
next() methods are gone.

"Listener/Socket has been closed" errors are now BadResource.
2020-03-10 15:14:22 -04:00
dubiousjim
8078d976d2
Add Deno.umask (#4290) 2020-03-10 15:11:27 -04:00
Nayeem Rahman
6443e4aed1
refactor: Cleanup options object parameters (#4296) 2020-03-10 12:08:58 -04:00
Bartek Iwańczuk
fbc4731256
refactor: uncomment tests broken tests, use skip (#4311)
* uncomment broken tests, use skip:
- net_test.ts 
- url_test.ts
- fetch_test.ts
2020-03-10 16:38:02 +01:00
Florian Häglsperger
62f4a2a788
Add global "quiet" flag (#4135) 2020-03-10 08:26:17 -04:00
Bartek Iwańczuk
dca00211ab
use Object instead of Map for promise table (#4309) 2020-03-09 22:04:49 -04:00
Bartek Iwańczuk
68119e1d7e
reorg: move js runtime tests to cli/js/tests/ (#4250)
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-10 01:06:47 +01:00
Ryan Dahl
dad8036766
upgrade: dprint 0.8.0 (#4308) 2020-03-10 01:01:33 +01:00
Bartek Iwańczuk
b7eb241c35
reorg: move JS ops implementations to cli/js/ops/, part 3 (#4302)
Following JS ops were moved to separate files in cli/js/ops directory:
- net
- tls
- fs
2020-03-10 00:22:15 +01:00
Chris Knight
2115b38fef
test: add actual error class to fail message (#4305) 2020-03-09 17:46:55 -04:00
Ryan Dahl
7f591c3783
upgrade: typescript 3.8.3 (#4301) 2020-03-09 15:49:51 +01:00
Bartek Iwańczuk
886f330ec8
reorg: move JS ops implementations to cli/js/ops/, part 2 (#4283)
Following JS ops were moved to separate files in cli/js/ops directory:
- io
- process
- worker_host
- web_worker
- plugins
- timers
- signal
- permissions
2020-03-09 15:18:02 +01:00
Chris Knight
1b6fc87b71
feat(std/node) add appendFile and appendFileSync (#4294) 2020-03-08 19:14:53 -04:00
Yusuke Sakurai
6f0b70eb1e
disable test_raw_tty (#4282) 2020-03-08 17:10:45 +01:00
Bartek Iwańczuk
1b6f831875
reorg: move JS ops implementations to cli/js/ops/, part 1 (#4264)
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
2020-03-08 13:09:22 +01:00
Kitson Kelly
b9037c86ed
Improvements to std/flags. (#4279)
Adds JSDoc to module, improves the typing of the return type, uses
iteration instead of Array forEach, uses the dotall support in Regular
Expression which is now supported in JavaScript, uses destructuring and
nullish coalescing where appropriate.
2020-03-08 11:27:23 +01:00
dubiousjim
0dd131d4a5
Rename perm to mode (#4276)
There's a lot of variation in doc comments and internal code about
whether chmod/0o777-style permissions are called `mode` or `perm`. (For
example, mkdir and writeFile choose differently.)

Had proposed earlier to go consistently with `perm`, but on balance devs
prefer to go with `mode`.
2020-03-07 22:29:12 -05:00
Harry Wolff
8d1ba3552f
Update manual to reflect newer test running (#4278)
This updates this example code to follow the new test running conventions.

The code as is, when ran produces the following output:

```
➜  dencro git:(master) ✗ deno test        
Compile file:///Users/hswolff/Sites/dencro/test.ts
running 2 tests
OK     oneTest (2.00ms)
OK     t2 (0.00ms)

test result: OK 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out (2.00ms)

running 2 tests
OK     oneTest (0.00ms)
OK     t2 (0.00ms)

test result: OK 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out (0.00ms)

➜  dencro git:(master) ✗ 
```

Removing `await Deno.runTests();` just causes the tests to run once.
2020-03-07 22:28:30 -05:00
Ryan Dahl
18076db8f0
upgrade rust dependencies (#4270) 2020-03-07 15:51:23 -05:00
Bartek Iwańczuk
88b77da25c
refactor: remove cli/ops/files.rs (#4246)
* "op_close" - moved to "cli/ops/resources.rs"
* "op_seek", "op_open" - moved to "cli/ops/fs.rs"

Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-03-07 13:20:27 +01:00
Ryan Dahl
36c50f442d
Move benchmark data to different repo (#4273) 2020-03-07 12:29:19 +01:00
Ryan Dahl
ec1946a95e
Improve run_and_collect_output (#4272)
* Fix flaky test test_permissions_net_listen_allow_localhost

* Improve error reporting for run_and_collect_output
2020-03-07 11:27:16 +01:00
Ryan Dahl
61f12ea775
Fix flaky test test_permissions_net_listen_allow_localhost (#4271) 2020-03-06 17:40:18 +01:00
Aurélien Bertron
5e31b96f9a
Add content type for wasm, fix encoding in wasm test fixture (#4269) 2020-03-06 11:31:22 -05:00
dubiousjim
acf0958e94
Rename name/filename arguments to path (#4227)
There's a lot of variation in doc comments and internal code about
whether the first parameter to file system calls is `path` or `name` or
`filename`. For consistency, have made it always be `path`.
2020-03-06 11:29:23 -05:00
Chris Knight
bb3d9c8280
doc: Update manual with suggestions for when cargo isn't building properly (#4252) 2020-03-06 09:14:58 -05:00
João Souto
e81fb25b7a
Fix unwanted ANSI Reset Sequence (#4268) 2020-03-06 08:48:38 -05:00
dubiousjim
9a63902db5
Rename readDir -> readdir (#4225) 2020-03-06 08:34:02 -05:00
Ryan Dahl
afea9b2edd
fix: call unwatch when dropping FsEventsResource (#4266) 2020-03-05 20:01:08 -05:00
Bartek Iwańczuk
2e59007214 move Web APIs to cli/js/web/ 2020-03-05 18:48:55 +01:00
Bartek Iwańczuk
9b59ed7c79 fix event target tests 2020-03-05 11:09:04 -05:00
Ryan Dahl
c850b258b4
Support async function and EventListenerObject as listeners (#4240) 2020-03-05 08:36:13 -05:00
Ryan Dahl
54a1688868
Allow BadResource errors to take a custom message (#4251) 2020-03-05 08:30:41 -05:00
Ryan Dahl
444b1ab68e
Document TypeScript compiler options (#4241) 2020-03-05 08:26:36 -05:00