Commit Graph

13 Commits

Author SHA1 Message Date
Robert Nystrom d9bb487ca8 Treat the expect and async_helper packages as opted in to NNBD.
This should enable strong mode tests to be fully NNBD opted in. At the
same time, legacy tests when run with the experiment off should
hopefully be able to still consume these libraries because they don't
actually use any NNBD features.

To do this, I changed the script that generates the SDK repo's package
config to not put in a language version for any package whose pubspec
has no SDK version. According to language versioning, that means the
package should be considered to be at the "current" version of the SDK
running the code.

In NNBD, that's opted in. With the experiment off, that is (presumably)
"opted out" in the sense that NNBD doesn't exist.

In order to *not* opt in some of the other packages that currently
lack SDK constraints, I put those in and pinned them to "^2.7.0" which
was what the package config script used to implicitly fill in for them.

I see a bunch of other changes in the generated package config too. The
update script probably hasn't been run in a while.

Change-Id: I55193d42eac0696a6b0105546551efa45a1f3252
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144305
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2020-04-27 21:04:56 +00:00
Robert Nystrom 63bff1a2fb Improve asynchronous test failures and async_minitest.
There's a bundle of improvements here:

- Show the stack trace of the failure when a test using async_minitest
  fails. The trade-off is that it now only reports the first failure.
  Collecting all of them didn't play nice with the stack trace
  deobfuscation the test runner does.

- Report the group and name of the test that failed when known.

- Fix as many double-reporting test result bugs as I could find. Also,
  in case that still happens, don't spew out a pile of useless JSON.

- Correctly wait for a test to complete even if it schedules its own
  asynchronous operations without returning futures.

- Generally simplify and clean some stuff up.

Change-Id: Ie020ae0b80a11764c455cf0ce24dfea09ca0adce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138903
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2020-03-11 01:12:48 +00:00
Robert Nystrom ed0cc81e81 Get DDC and DDK test builds working with the forked NNBD SDK.
With these changes, I can run:

  ./tools/build.py -m release --nnbd dartdevc_test

In a checkout that also includes a migrated core library that uses
NNBD features.

I haven't verified if the resulting JS is *correct*, but the build
doesn't error out.

Change-Id: I7d89efe5da8c46e2a9805743e4e61858da8097dd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122280
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2019-10-21 17:19:59 +00:00
Bob Nystrom ffee99d79b Add asyncExpectThrows<T>() to async_helper.
This lets you test that a callback returns a Future that completes to
a given error. Like Expect.throws(), but async.

At first, I added support for this directly to Expect.throws(), but I
think it's better to minimize the amount of dynamic logic going on in
the language test framework.

I was worried about having to duplicate all of the Expect.throws___()
convenience functions but now that we have generic methods, those
functions aren't that much more convenient.

Change-Id: I8b288945611fa16f8d27056f3cf79181fc22d256
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97881
Reviewed-by: William Hesse <whesse@google.com>
2019-03-27 18:26:15 +00:00
Mike Fairhurst 9727a4a4ef Fix #33415 no error for awaiting a void expression.
Bug:  33415
Change-Id: I4d4e81fef79a5bc5162e37ab07a8fe99e50c8dfc
Reviewed-on: https://dart-review.googlesource.com/60522
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-24 19:31:57 +00:00
Lasse R.H. Nielsen dc76aa34c7 Stop using a port to keep the isolate alive in async_helper.
Addresses issue #33067.

Bug: http://dartbug.com/33067
Change-Id: Id9e60e930a8f289a51063f609e13fb998f6907c3
Reviewed-on: https://dart-review.googlesource.com/55662
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Vijay Menon <vsm@google.com>
2018-05-18 09:33:27 +00:00
Lasse R.H. Nielsen 8dc7d5e907 Update language_2/await_test.dart to use async_helper.
Add more tests.

See #31535.

Bug: http://dartbug.com/31535
Change-Id: I1db9ecb84d9ed87f1111e3fdc9637143cf46fa33
Reviewed-on: https://dart-review.googlesource.com/26220
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2017-12-06 12:05:59 +00:00
Jacob Richman de54e18369 Run dartfmt on remaining unformated pkg packages
BUG=
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2743423009 .
2017-03-21 18:21:32 -07:00
lrn@google.com 3a66c29a6d Add cleanUp function to Future.wait.
The cleanUp function is called on the values of successful futures,
so it can release any resources that were successfully allocated.

R=sgjesse@google.com

Review URL: https://codereview.chromium.org//815773002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42730 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 10:52:15 +00:00
johnniwinther@google.com 776bd8ef05 Call asyncEnd only on success.
BUG=
R=ahe@google.com, kustermann@google.com

Review URL: https://codereview.chromium.org//23512008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27465 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-13 07:36:02 +00:00
johnniwinther@google.com 4c7b97d041 Remove reference to unimported Future.
BUG=

Review URL: https://codereview.chromium.org//23551007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27030 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-03 08:28:11 +00:00
johnniwinther@google.com 3d22a350b3 First pass at asynchronous input loading in dart2js.
R=ahe@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//17759007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27028 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-03 08:04:38 +00:00
floitsch@google.com a1a91eb915 Add async_helper package.
This package is private and should not be published to pub (nor should
its documentation be published to api.dartlang.org).

R=kustermann@google.com

Review URL: https://codereview.chromium.org//23547005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26774 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-28 09:24:50 +00:00