Merge `package:test_process` (#2425)
- [x] Move and fix workflow files, labeler.yaml, and badges in the
README.md
- [x] Rev the version of the package, so that pub.dev points to the
correct site
- [x] Add a line to the changelog:
```
* Move to `dart-lang/test` monorepo.
```
- [x] Add the package to the top-level readme of the monorepo:
```
| [test_process](pkgs/test_process/) | Test processes: starting; validating stdout and stderr; checking exit code | [](https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Atest_process) | [](https://pub.dev/packages/test_process) |
```
- [ ] **Important!** Merge the PR with 'Create a merge commit' (enabling
then disabling the `Allow merge commits` admin setting)
- [x] Update the auto-publishing settings on
https://pub.dev/packages/test_process/admin
- [x] Add the following text to
https://github.com/dart-lang/test_process/:'
```
> [!IMPORTANT]
> This repo has moved to https://github.com/dart-lang/test/tree/master/pkgs/test_process
```
- [ ] Publish using the autopublish workflow
- [ ] Push tags to GitHub using
```
git tag --list 'test_process*' | xargs git push origin
```
- [ ] Close open PRs in dart-lang/test_process with the following
message:
```
Closing as the [dart-lang/test_process](https://github.com/dart-lang/test_process) repository is merged into the [dart-lang/test](https://github.com/dart-lang/test) monorepo. Please re-open this PR there!
```
- [ ] Transfer issues by running
```
dart run pkgs/repo_manage/bin/report.dart transfer-issues --source-repo dart-lang/test_process --target-repo dart-lang/test --add-label package:test_process --apply-changes
```
- [ ] Archive https://github.com/dart-lang/test_process/
---
- [x] I’ve reviewed the contributor guide and applied the relevant
portions to this PR.
<details>
<summary>Contribution guidelines:</summary><br>
- See our [contributor
guide](https://github.com/dart-lang/.github/blob/main/CONTRIBUTING.md)
for general expectations for PRs.
- Larger or significant changes should be discussed in an issue before
creating a PR.
- Contributions to our repos should follow the [Dart style
guide](https://dart.dev/guides/language/effective-dart) and use `dart
format`.
- Most changes should add an entry to the changelog and may need to [rev
the pubspec package
version](https://github.com/dart-lang/sdk/blob/main/docs/External-Package-Maintenance.md#making-a-change).
- Changes to packages require [corresponding
tests](https://github.com/dart-lang/.github/blob/main/CONTRIBUTING.md#Testing).
Note that many Dart repos have a weekly cadence for reviewing PRs -
please allow for some latency before initial review feedback.
</details>diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml
index 9a3cd79..8cda374 100644
--- a/.github/workflows/dart.yml
+++ b/.github/workflows/dart.yml
@@ -70,36 +70,6 @@
if: "always() && steps.pkgs_fake_async_pub_upgrade.conclusion == 'success'"
working-directory: pkgs/fake_async
job_003:
- name: "analyze_and_format; linux; Dart 3.4.0; PKG: pkgs/matcher; `dart analyze`"
- runs-on: ubuntu-latest
- steps:
- - name: Cache Pub hosted dependencies
- uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a
- with:
- path: "~/.pub-cache/hosted"
- key: "os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0;packages:pkgs/matcher;commands:analyze_1"
- restore-keys: |
- os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0;packages:pkgs/matcher
- os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0
- os:ubuntu-latest;pub-cache-hosted
- os:ubuntu-latest
- - name: Setup Dart SDK
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
- with:
- sdk: "3.4.0"
- - id: checkout
- name: Checkout repository
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- - id: pkgs_matcher_pub_upgrade
- name: pkgs/matcher; dart pub upgrade
- run: dart pub upgrade
- if: "always() && steps.checkout.conclusion == 'success'"
- working-directory: pkgs/matcher
- - name: pkgs/matcher; dart analyze
- run: dart analyze
- if: "always() && steps.pkgs_matcher_pub_upgrade.conclusion == 'success'"
- working-directory: pkgs/matcher
- job_004:
name: "analyze_and_format; linux; Dart 3.5.0; PKGS: integration_tests/regression, integration_tests/wasm; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos`"
runs-on: ubuntu-latest
steps:
@@ -146,17 +116,17 @@
run: dart analyze --fatal-infos
if: "always() && steps.integration_tests_wasm_pub_upgrade.conclusion == 'success'"
working-directory: integration_tests/wasm
- job_005:
- name: "analyze_and_format; linux; Dart 3.5.0; PKGS: pkgs/checks, pkgs/test_core; `dart analyze`"
+ job_004:
+ name: "analyze_and_format; linux; Dart 3.5.0; PKGS: pkgs/checks, pkgs/matcher, pkgs/test_core; `dart analyze`"
runs-on: ubuntu-latest
steps:
- name: Cache Pub hosted dependencies
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a
with:
path: "~/.pub-cache/hosted"
- key: "os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/checks-pkgs/test_core;commands:analyze_1"
+ key: "os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/checks-pkgs/matcher-pkgs/test_core;commands:analyze_1"
restore-keys: |
- os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/checks-pkgs/test_core
+ os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/checks-pkgs/matcher-pkgs/test_core
os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0
os:ubuntu-latest;pub-cache-hosted
os:ubuntu-latest
@@ -176,6 +146,15 @@
run: dart analyze
if: "always() && steps.pkgs_checks_pub_upgrade.conclusion == 'success'"
working-directory: pkgs/checks
+ - id: pkgs_matcher_pub_upgrade
+ name: pkgs/matcher; dart pub upgrade
+ run: dart pub upgrade
+ if: "always() && steps.checkout.conclusion == 'success'"
+ working-directory: pkgs/matcher
+ - name: pkgs/matcher; dart analyze
+ run: dart analyze
+ if: "always() && steps.pkgs_matcher_pub_upgrade.conclusion == 'success'"
+ working-directory: pkgs/matcher
- id: pkgs_test_core_pub_upgrade
name: pkgs/test_core; dart pub upgrade
run: dart pub upgrade
@@ -185,7 +164,7 @@
run: dart analyze
if: "always() && steps.pkgs_test_core_pub_upgrade.conclusion == 'success'"
working-directory: pkgs/test_core
- job_006:
+ job_005:
name: "analyze_and_format; linux; Dart dev; PKGS: integration_tests/regression, integration_tests/spawn_hybrid, integration_tests/wasm, pkgs/checks, pkgs/fake_async, pkgs/matcher, pkgs/test, pkgs/test_api, pkgs/test_core; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos`"
runs-on: ubuntu-latest
steps:
@@ -323,7 +302,7 @@
run: dart analyze --fatal-infos
if: "always() && steps.pkgs_test_core_pub_upgrade.conclusion == 'success'"
working-directory: pkgs/test_core
- job_007:
+ job_006:
name: "analyze_and_format; windows; Dart 3.5.0; PKG: integration_tests/wasm; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos`"
runs-on: windows-latest
steps:
@@ -347,7 +326,7 @@
run: dart analyze --fatal-infos
if: "always() && steps.integration_tests_wasm_pub_upgrade.conclusion == 'success'"
working-directory: integration_tests/wasm
- job_008:
+ job_007:
name: "analyze_and_format; windows; Dart dev; PKG: integration_tests/wasm; `dart format --output=none --set-exit-if-changed .`, `dart analyze --fatal-infos`"
runs-on: windows-latest
steps:
@@ -371,7 +350,7 @@
run: dart analyze --fatal-infos
if: "always() && steps.integration_tests_wasm_pub_upgrade.conclusion == 'success'"
working-directory: integration_tests/wasm
- job_009:
+ job_008:
name: "unit_test; linux; Dart 3.3.0; PKG: pkgs/fake_async; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -409,47 +388,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_010:
- name: "unit_test; linux; Dart 3.4.0; PKG: pkgs/matcher; `dart test`"
- runs-on: ubuntu-latest
- steps:
- - name: Cache Pub hosted dependencies
- uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a
- with:
- path: "~/.pub-cache/hosted"
- key: "os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0;packages:pkgs/matcher;commands:command_00"
- restore-keys: |
- os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0;packages:pkgs/matcher
- os:ubuntu-latest;pub-cache-hosted;sdk:3.4.0
- os:ubuntu-latest;pub-cache-hosted
- os:ubuntu-latest
- - name: Setup Dart SDK
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
- with:
- sdk: "3.4.0"
- - id: checkout
- name: Checkout repository
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- - id: pkgs_matcher_pub_upgrade
- name: pkgs/matcher; dart pub upgrade
- run: dart pub upgrade
- if: "always() && steps.checkout.conclusion == 'success'"
- working-directory: pkgs/matcher
- - name: pkgs/matcher; dart test
- run: dart test
- if: "always() && steps.pkgs_matcher_pub_upgrade.conclusion == 'success'"
- working-directory: pkgs/matcher
- needs:
- - job_001
- - job_002
- - job_003
- - job_004
- - job_005
- - job_006
- - job_007
- - job_008
- job_011:
+ job_009:
name: "unit_test; linux; Dart 3.5.0; PKG: integration_tests/regression; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -487,8 +426,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_012:
+ job_010:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/checks; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -526,8 +464,45 @@
- job_005
- job_006
- job_007
- - job_008
- job_013:
+ job_011:
+ name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/matcher; `dart test`"
+ runs-on: ubuntu-latest
+ steps:
+ - name: Cache Pub hosted dependencies
+ uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a
+ with:
+ path: "~/.pub-cache/hosted"
+ key: "os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/matcher;commands:command_00"
+ restore-keys: |
+ os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0;packages:pkgs/matcher
+ os:ubuntu-latest;pub-cache-hosted;sdk:3.5.0
+ os:ubuntu-latest;pub-cache-hosted
+ os:ubuntu-latest
+ - name: Setup Dart SDK
+ uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
+ with:
+ sdk: "3.5.0"
+ - id: checkout
+ name: Checkout repository
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
+ - id: pkgs_matcher_pub_upgrade
+ name: pkgs/matcher; dart pub upgrade
+ run: dart pub upgrade
+ if: "always() && steps.checkout.conclusion == 'success'"
+ working-directory: pkgs/matcher
+ - name: pkgs/matcher; dart test
+ run: dart test
+ if: "always() && steps.pkgs_matcher_pub_upgrade.conclusion == 'success'"
+ working-directory: pkgs/matcher
+ needs:
+ - job_001
+ - job_002
+ - job_003
+ - job_004
+ - job_005
+ - job_006
+ - job_007
+ job_012:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test_core; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -565,8 +540,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_014:
+ job_013:
name: "unit_test; linux; Dart 3.5.0; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
runs-on: ubuntu-latest
steps:
@@ -604,8 +578,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_015:
+ job_014:
name: "unit_test; linux; Dart 3.5.0; PKG: integration_tests/wasm; `dart test --timeout=60s`"
runs-on: ubuntu-latest
steps:
@@ -643,8 +616,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_016:
+ job_015:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0`"
runs-on: ubuntu-latest
steps:
@@ -682,8 +654,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_017:
+ job_016:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1`"
runs-on: ubuntu-latest
steps:
@@ -721,8 +692,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_018:
+ job_017:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2`"
runs-on: ubuntu-latest
steps:
@@ -760,8 +730,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_019:
+ job_018:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3`"
runs-on: ubuntu-latest
steps:
@@ -799,8 +768,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_020:
+ job_019:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4`"
runs-on: ubuntu-latest
steps:
@@ -838,8 +806,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_021:
+ job_020:
name: "unit_test; linux; Dart 3.5.0; PKG: pkgs/test_api; `dart test --preset travis -x browser`"
runs-on: ubuntu-latest
steps:
@@ -877,8 +844,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_022:
+ job_021:
name: "unit_test; linux; Dart dev; PKG: integration_tests/regression; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -916,8 +882,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_023:
+ job_022:
name: "unit_test; linux; Dart dev; PKG: pkgs/checks; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -955,8 +920,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_024:
+ job_023:
name: "unit_test; linux; Dart dev; PKG: pkgs/fake_async; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -994,8 +958,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_025:
+ job_024:
name: "unit_test; linux; Dart dev; PKG: pkgs/matcher; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -1033,8 +996,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_026:
+ job_025:
name: "unit_test; linux; Dart dev; PKG: pkgs/test_core; `dart test`"
runs-on: ubuntu-latest
steps:
@@ -1072,8 +1034,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_027:
+ job_026:
name: "unit_test; linux; Dart dev; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
runs-on: ubuntu-latest
steps:
@@ -1111,8 +1072,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_028:
+ job_027:
name: "unit_test; linux; Dart dev; PKG: integration_tests/wasm; `dart test --timeout=60s`"
runs-on: ubuntu-latest
steps:
@@ -1150,8 +1110,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_029:
+ job_028:
name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 0`"
runs-on: ubuntu-latest
steps:
@@ -1189,8 +1148,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_030:
+ job_029:
name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 1`"
runs-on: ubuntu-latest
steps:
@@ -1228,8 +1186,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_031:
+ job_030:
name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 2`"
runs-on: ubuntu-latest
steps:
@@ -1267,8 +1224,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_032:
+ job_031:
name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 3`"
runs-on: ubuntu-latest
steps:
@@ -1306,8 +1262,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_033:
+ job_032:
name: "unit_test; linux; Dart dev; PKG: pkgs/test; `xvfb-run -s \"-screen 0 1024x768x24\" dart test --preset travis --total-shards 5 --shard-index 4`"
runs-on: ubuntu-latest
steps:
@@ -1345,8 +1300,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_034:
+ job_033:
name: "unit_test; linux; Dart dev; PKG: pkgs/test_api; `dart test --preset travis -x browser`"
runs-on: ubuntu-latest
steps:
@@ -1384,8 +1338,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_035:
+ job_034:
name: "unit_test; osx; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 0`"
runs-on: macos-latest
steps:
@@ -1423,8 +1376,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_036:
+ job_035:
name: "unit_test; osx; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 1`"
runs-on: macos-latest
steps:
@@ -1462,8 +1414,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_037:
+ job_036:
name: "unit_test; osx; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 2`"
runs-on: macos-latest
steps:
@@ -1501,8 +1452,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_038:
+ job_037:
name: "unit_test; osx; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 3`"
runs-on: macos-latest
steps:
@@ -1540,8 +1490,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_039:
+ job_038:
name: "unit_test; osx; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 4`"
runs-on: macos-latest
steps:
@@ -1579,8 +1528,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_040:
+ job_039:
name: "unit_test; windows; Dart 3.5.0; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
runs-on: windows-latest
steps:
@@ -1608,8 +1556,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_041:
+ job_040:
name: "unit_test; windows; Dart 3.5.0; PKG: integration_tests/wasm; `dart test --timeout=60s`"
runs-on: windows-latest
steps:
@@ -1637,8 +1584,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_042:
+ job_041:
name: "unit_test; windows; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 0`"
runs-on: windows-latest
steps:
@@ -1666,8 +1612,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_043:
+ job_042:
name: "unit_test; windows; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 1`"
runs-on: windows-latest
steps:
@@ -1695,8 +1640,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_044:
+ job_043:
name: "unit_test; windows; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 2`"
runs-on: windows-latest
steps:
@@ -1724,8 +1668,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_045:
+ job_044:
name: "unit_test; windows; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 3`"
runs-on: windows-latest
steps:
@@ -1753,8 +1696,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_046:
+ job_045:
name: "unit_test; windows; Dart 3.5.0; PKG: pkgs/test; `dart test --preset travis --total-shards 5 --shard-index 4`"
runs-on: windows-latest
steps:
@@ -1782,8 +1724,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_047:
+ job_046:
name: "unit_test; windows; Dart dev; PKG: integration_tests/spawn_hybrid; `dart test -p chrome,vm,node`"
runs-on: windows-latest
steps:
@@ -1811,8 +1752,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_048:
+ job_047:
name: "unit_test; windows; Dart dev; PKG: integration_tests/wasm; `dart test --timeout=60s`"
runs-on: windows-latest
steps:
@@ -1840,8 +1780,7 @@
- job_005
- job_006
- job_007
- - job_008
- job_049:
+ job_048:
name: Notify failure
runs-on: ubuntu-latest
if: "(github.event_name == 'push' || github.event_name == 'schedule') && failure()"
@@ -1900,4 +1839,3 @@
- job_045
- job_046
- job_047
- - job_048
diff --git a/pkgs/matcher/CHANGELOG.md b/pkgs/matcher/CHANGELOG.md
index 0522c4c..614e35a 100644
--- a/pkgs/matcher/CHANGELOG.md
+++ b/pkgs/matcher/CHANGELOG.md
@@ -1,6 +1,8 @@
## 0.12.18-wip
* Remove some dynamic invocations.
+* Add explicit casts from `dynamic` values.
+* Require Dart 3.5
## 0.12.17
diff --git a/pkgs/matcher/analysis_options.yaml b/pkgs/matcher/analysis_options.yaml
index d183f7b..5564cc8 100644
--- a/pkgs/matcher/analysis_options.yaml
+++ b/pkgs/matcher/analysis_options.yaml
@@ -1,4 +1,4 @@
-include: package:lints/recommended.yaml
+include: package:dart_flutter_team_lints/analysis_options.yaml
linter:
rules:
diff --git a/pkgs/matcher/lib/expect.dart b/pkgs/matcher/lib/expect.dart
index c842d30..113f240 100644
--- a/pkgs/matcher/lib/expect.dart
+++ b/pkgs/matcher/lib/expect.dart
@@ -38,14 +38,14 @@
export 'src/expect/stream_matcher.dart' show StreamMatcher;
export 'src/expect/stream_matchers.dart'
show
- emitsDone,
emits,
- emitsError,
- mayEmit,
emitsAnyOf,
- emitsInOrder,
+ emitsDone,
+ emitsError,
emitsInAnyOrder,
+ emitsInOrder,
emitsThrough,
+ mayEmit,
mayEmitMultiple,
neverEmits;
export 'src/expect/throws_matcher.dart' show Throws, throws, throwsA;
diff --git a/pkgs/matcher/lib/mirror_matchers.dart b/pkgs/matcher/lib/mirror_matchers.dart
index 5b2f4b6..cf85e23 100644
--- a/pkgs/matcher/lib/mirror_matchers.dart
+++ b/pkgs/matcher/lib/mirror_matchers.dart
@@ -73,7 +73,7 @@
.add('has property "$_name" with value ')
.addDescriptionOf(matchState['value']);
var innerDescription = StringDescription();
- matchState['state'] ??= {};
+ matchState['state'] ??= <Object?, Object?>{};
_matcher?.describeMismatch(matchState['value'], innerDescription,
matchState['state'] as Map, verbose);
if (innerDescription.length > 0) {
diff --git a/pkgs/matcher/lib/src/core_matchers.dart b/pkgs/matcher/lib/src/core_matchers.dart
index afb835b..936149e 100644
--- a/pkgs/matcher/lib/src/core_matchers.dart
+++ b/pkgs/matcher/lib/src/core_matchers.dart
@@ -14,7 +14,8 @@
const _Empty();
@override
- bool matches(Object? item, Map matchState) => (item as dynamic).isEmpty;
+ bool matches(Object? item, Map matchState) =>
+ (item as dynamic).isEmpty as bool;
@override
Description describe(Description description) => description.add('empty');
@@ -27,7 +28,8 @@
const _NotEmpty();
@override
- bool matches(Object? item, Map matchState) => (item as dynamic).isNotEmpty;
+ bool matches(Object? item, Map matchState) =>
+ (item as dynamic).isNotEmpty as bool;
@override
Description describe(Description description) => description.add('non-empty');
diff --git a/pkgs/matcher/lib/src/equals_matcher.dart b/pkgs/matcher/lib/src/equals_matcher.dart
index 5c4f4c5..36b3bf5 100644
--- a/pkgs/matcher/lib/src/equals_matcher.dart
+++ b/pkgs/matcher/lib/src/equals_matcher.dart
@@ -167,7 +167,7 @@
Object? expected, Object? actual, String location, int depth) {
// If the expected value is a matcher, try to match it.
if (expected is Matcher) {
- var matchState = {};
+ var matchState = <Object?, Object?>{};
if (expected.matches(actual, matchState)) return null;
return _Mismatch(location, actual, (description, verbose) {
var oldLength = description.length;
diff --git a/pkgs/matcher/lib/src/expect/expect.dart b/pkgs/matcher/lib/src/expect/expect.dart
index 8dd8cae..d8110d6 100644
--- a/pkgs/matcher/lib/src/expect/expect.dart
+++ b/pkgs/matcher/lib/src/expect/expect.dart
@@ -74,7 +74,10 @@
/// The implementation of [expect] and [expectLater].
Future _expect(Object? actual, Object? matcher,
- {String? reason, skip, bool verbose = false, ErrorFormatter? formatter}) {
+ {String? reason,
+ Object? skip,
+ bool verbose = false,
+ ErrorFormatter? formatter}) {
final test = TestHandle.current;
formatter ??= (actual, matcher, reason, matchState, verbose) {
var mismatchDescription = StringDescription();
@@ -133,7 +136,7 @@
return Future.sync(() {});
}
- var matchState = {};
+ var matchState = <Object?, Object?>{};
try {
if ((matcher as Matcher).matches(actual, matchState)) {
return Future.sync(() {});
diff --git a/pkgs/matcher/lib/src/expect/expect_async.dart b/pkgs/matcher/lib/src/expect/expect_async.dart
index 88cf6f2..a659c81 100644
--- a/pkgs/matcher/lib/src/expect/expect_async.dart
+++ b/pkgs/matcher/lib/src/expect/expect_async.dart
@@ -124,15 +124,17 @@
/// Returns a function that has the same number of positional arguments as the
/// wrapped function (up to a total of 6).
Function get func {
- if (_callback is Function(Never, Never, Never, Never, Never, Never)) {
+ if (_callback is void Function(Never, Never, Never, Never, Never, Never)) {
return max6;
}
- if (_callback is Function(Never, Never, Never, Never, Never)) return max5;
- if (_callback is Function(Never, Never, Never, Never)) return max4;
- if (_callback is Function(Never, Never, Never)) return max3;
- if (_callback is Function(Never, Never)) return max2;
- if (_callback is Function(Never)) return max1;
- if (_callback is Function()) return max0;
+ if (_callback is void Function(Never, Never, Never, Never, Never)) {
+ return max5;
+ }
+ if (_callback is void Function(Never, Never, Never, Never)) return max4;
+ if (_callback is void Function(Never, Never, Never)) return max3;
+ if (_callback is void Function(Never, Never)) return max2;
+ if (_callback is void Function(Never)) return max1;
+ if (_callback is void Function()) return max0;
_outstandingWork?.complete();
throw ArgumentError(
@@ -219,7 +221,8 @@
@Deprecated('Will be removed in 0.13.0')
Function expectAsync(Function callback,
{int count = 1, int max = 0, String? id, String? reason}) =>
- _ExpectedFunction(callback, count, max, id: id, reason: reason).func;
+ _ExpectedFunction<Object?>(callback, count, max, id: id, reason: reason)
+ .func;
/// Informs the framework that the given [callback] of arity 0 is expected to be
/// called [count] number of times (by default 1).
@@ -415,7 +418,8 @@
@Deprecated('Will be removed in 0.13.0')
Function expectAsyncUntil(Function callback, bool Function() isDone,
{String? id, String? reason}) =>
- _ExpectedFunction(callback, 0, -1, id: id, reason: reason, isDone: isDone)
+ _ExpectedFunction<Object?>(callback, 0, -1,
+ id: id, reason: reason, isDone: isDone)
.func;
/// Informs the framework that the given [callback] of arity 0 is expected to be
diff --git a/pkgs/matcher/lib/src/expect/future_matchers.dart b/pkgs/matcher/lib/src/expect/future_matchers.dart
index 407b9b8..75655f0 100644
--- a/pkgs/matcher/lib/src/expect/future_matchers.dart
+++ b/pkgs/matcher/lib/src/expect/future_matchers.dart
@@ -58,7 +58,7 @@
result = await _matcher.matchAsync(value) as String?;
if (result == null) return null;
} else {
- var matchState = {};
+ var matchState = <Object?, Object?>{};
if (_matcher.matches(value, matchState)) return null;
result = _matcher
.describeMismatch(value, StringDescription(), matchState, false)
diff --git a/pkgs/matcher/lib/src/expect/prints_matcher.dart b/pkgs/matcher/lib/src/expect/prints_matcher.dart
index 57ae95e..495d22c 100644
--- a/pkgs/matcher/lib/src/expect/prints_matcher.dart
+++ b/pkgs/matcher/lib/src/expect/prints_matcher.dart
@@ -33,7 +33,7 @@
// synchronous.
@override
dynamic /*FutureOr<String>*/ matchAsync(Object? item) {
- if (item is! Function()) return 'was not a unary Function';
+ if (item is! Object? Function()) return 'was not a unary Function';
var buffer = StringBuffer();
var result = runZoned(item,
@@ -53,7 +53,7 @@
/// Verifies that [actual] matches [_matcher] and returns a [String]
/// description of the failure if it doesn't.
String? _check(String actual) {
- var matchState = {};
+ var matchState = <Object?, Object?>{};
if (_matcher.matches(actual, matchState)) return null;
var result = _matcher
diff --git a/pkgs/matcher/lib/src/expect/stream_matcher.dart b/pkgs/matcher/lib/src/expect/stream_matcher.dart
index 0c1d852..253b6bf 100644
--- a/pkgs/matcher/lib/src/expect/stream_matcher.dart
+++ b/pkgs/matcher/lib/src/expect/stream_matcher.dart
@@ -155,7 +155,7 @@
.listen(events.add, onDone: () => events.add(null));
// Wait on a timer tick so all buffered events are emitted.
- await Future.delayed(Duration.zero);
+ await Future<void>.delayed(Duration.zero);
_unawaited(subscription.cancel());
var eventsString = events.map((event) {
diff --git a/pkgs/matcher/lib/src/expect/stream_matchers.dart b/pkgs/matcher/lib/src/expect/stream_matchers.dart
index 02efff3..cff7f9f 100644
--- a/pkgs/matcher/lib/src/expect/stream_matchers.dart
+++ b/pkgs/matcher/lib/src/expect/stream_matchers.dart
@@ -34,7 +34,7 @@
return StreamMatcher((queue) async {
if (!await queue.hasNext) return '';
- var matchState = {};
+ var matchState = <Object?, Object?>{};
var actual = await queue.next;
if (wrapped.matches(actual, matchState)) return null;
@@ -138,7 +138,7 @@
if (consumedMost == null) {
transaction.reject();
if (firstError != null) {
- await Future.error(firstError!, firstStackTrace);
+ await Future<Never>.error(firstError!, firstStackTrace);
}
var failureMessages = <String>[];
@@ -368,7 +368,9 @@
if (consumedMost == null) {
transaction.reject();
- if (firstError != null) await Future.error(firstError!, firstStackTrace);
+ if (firstError != null) {
+ await Future<Never>.error(firstError!, firstStackTrace);
+ }
return false;
} else {
transaction.commit(consumedMost!);
diff --git a/pkgs/matcher/lib/src/expect/throws_matcher.dart b/pkgs/matcher/lib/src/expect/throws_matcher.dart
index 37676ef..17a8c9e 100644
--- a/pkgs/matcher/lib/src/expect/throws_matcher.dart
+++ b/pkgs/matcher/lib/src/expect/throws_matcher.dart
@@ -116,10 +116,10 @@
/// Verifies that [error] matches [_matcher] and returns a [String]
/// description of the failure if it doesn't.
- String? _check(error, StackTrace? trace) {
+ String? _check(Object error, StackTrace? trace) {
if (_matcher == null) return null;
- var matchState = {};
+ var matchState = <Object?, Object?>{};
if (_matcher.matches(error, matchState)) return null;
var result = _matcher
diff --git a/pkgs/matcher/lib/src/map_matchers.dart b/pkgs/matcher/lib/src/map_matchers.dart
index 4476d06..9bc9eb5 100644
--- a/pkgs/matcher/lib/src/map_matchers.dart
+++ b/pkgs/matcher/lib/src/map_matchers.dart
@@ -16,7 +16,7 @@
@override
bool matches(Object? item, Map matchState) =>
// ignore: avoid_dynamic_calls
- (item as dynamic).containsValue(_value);
+ (item as dynamic).containsValue(_value) as bool;
@override
Description describe(Description description) =>
description.add('contains value ').addDescriptionOf(_value);
@@ -36,7 +36,7 @@
@override
bool matches(Object? item, Map matchState) =>
// ignore: avoid_dynamic_calls
- (item as dynamic).containsKey(_key) &&
+ ((item as dynamic).containsKey(_key) as bool) &&
_valueMatcher.matches((item as dynamic)[_key], matchState);
@override
diff --git a/pkgs/matcher/lib/src/operator_matchers.dart b/pkgs/matcher/lib/src/operator_matchers.dart
index 15e50ff..18f9537 100644
--- a/pkgs/matcher/lib/src/operator_matchers.dart
+++ b/pkgs/matcher/lib/src/operator_matchers.dart
@@ -59,7 +59,7 @@
Map matchState, bool verbose) {
var matcher = matchState['matcher'] as Matcher;
matcher.describeMismatch(
- item, mismatchDescription, matchState['state'], verbose);
+ item, mismatchDescription, matchState['state'] as Map, verbose);
return mismatchDescription;
}
diff --git a/pkgs/matcher/lib/src/order_matchers.dart b/pkgs/matcher/lib/src/order_matchers.dart
index 6fe7c76..7dc9e4f 100644
--- a/pkgs/matcher/lib/src/order_matchers.dart
+++ b/pkgs/matcher/lib/src/order_matchers.dart
@@ -78,9 +78,9 @@
bool matches(Object? item, Map matchState) {
if (item == _value) {
return _equalValue;
- } else if ((item as dynamic) < _value) {
+ } else if ((item as dynamic) < _value as bool) {
return _lessThanValue;
- } else if ((item as dynamic) > _value) {
+ } else if ((item as dynamic) > _value as bool) {
return _greaterThanValue;
} else {
return false;
diff --git a/pkgs/matcher/lib/src/string_matchers.dart b/pkgs/matcher/lib/src/string_matchers.dart
index b819fa5..4e7dda5 100644
--- a/pkgs/matcher/lib/src/string_matchers.dart
+++ b/pkgs/matcher/lib/src/string_matchers.dart
@@ -61,7 +61,7 @@
description.addDescriptionOf(_matchValue).add(' ignoring whitespace');
@override
- Description describeTypedMismatch(dynamic item,
+ Description describeTypedMismatch(String item,
Description mismatchDescription, Map matchState, bool verbose) {
return mismatchDescription
.add('is ')
@@ -152,7 +152,7 @@
: throw ArgumentError('matches requires a regexp or string');
@override
- bool typedMatches(dynamic item, Map matchState) => _regexp.hasMatch(item);
+ bool typedMatches(String item, Map matchState) => _regexp.hasMatch(item);
@override
Description describe(Description description) =>
diff --git a/pkgs/matcher/lib/src/util.dart b/pkgs/matcher/lib/src/util.dart
index af0ba2c..511831e 100644
--- a/pkgs/matcher/lib/src/util.dart
+++ b/pkgs/matcher/lib/src/util.dart
@@ -43,8 +43,7 @@
} else if (valueOrMatcher is bool Function(Never)) {
// unary predicate, but expects a specific type
// so wrap it.
- // ignore: unnecessary_lambdas
- return predicate((a) => (valueOrMatcher as dynamic)(a));
+ return predicate((a) => (valueOrMatcher as dynamic)(a) as bool);
} else {
return equals(valueOrMatcher);
}
diff --git a/pkgs/matcher/pubspec.yaml b/pkgs/matcher/pubspec.yaml
index 237e559..d29e1ab 100644
--- a/pkgs/matcher/pubspec.yaml
+++ b/pkgs/matcher/pubspec.yaml
@@ -6,7 +6,7 @@
repository: https://github.com/dart-lang/test/tree/master/pkgs/matcher
environment:
- sdk: ^3.4.0
+ sdk: ^3.5.0
dependencies:
async: ^2.10.0
@@ -16,8 +16,8 @@
test_api: ">=0.5.0 <0.8.0"
dev_dependencies:
+ dart_flutter_team_lints: ^3.2.0
fake_async: ^1.3.0
- lints: ^3.0.0
test: ^1.23.0
dependency_overrides:
diff --git a/pkgs/matcher/test/core_matchers_test.dart b/pkgs/matcher/test/core_matchers_test.dart
index 04fc8b3..b20f31f 100644
--- a/pkgs/matcher/test/core_matchers_test.dart
+++ b/pkgs/matcher/test/core_matchers_test.dart
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
import 'package:matcher/matcher.dart';
-import 'package:test/test.dart' show test, group;
+import 'package:test/test.dart' show group, test;
import 'test_utils.dart';
@@ -42,22 +42,22 @@
});
test('same', () {
- var a = {};
- var b = {};
+ var a = <Object?, Object?>{};
+ var b = <Object?, Object?>{};
shouldPass(a, same(a));
shouldFail(b, same(a), 'Expected: same instance as {} Actual: {}');
});
test('equals', () {
- var a = {};
- var b = {};
+ var a = <Object?, Object?>{};
+ var b = <Object?, Object?>{};
shouldPass(a, equals(a));
shouldPass(a, equals(b));
});
test('equals with null', () {
Object? a; // null
- var b = {};
+ var b = <Object?, Object?>{};
shouldPass(a, equals(a));
shouldFail(
a, equals(b), 'Expected: {} Actual: <null> Which: expected a map');
@@ -87,7 +87,7 @@
});
test('anything', () {
- var a = {};
+ var a = <Object?, Object?>{};
shouldPass(0, anything);
shouldPass(null, anything);
shouldPass(a, anything);
@@ -107,8 +107,8 @@
});
test('hasLength', () {
- var a = {};
- var b = [];
+ var a = <Object?, Object?>{};
+ var b = <Object?>[];
shouldPass(a, hasLength(0));
shouldPass(b, hasLength(0));
shouldPass('a', hasLength(1));
@@ -173,13 +173,13 @@
['foo', 'bar'],
['foo'],
3,
- []
+ <Object?>[]
];
var expected1 = [
['foo', 'bar'],
['foo'],
4,
- []
+ <Object?>[]
];
var reason1 = "Expected: [['foo', 'bar'], ['foo'], 4, []] "
"Actual: [['foo', 'bar'], ['foo'], 3, []] "
@@ -189,13 +189,13 @@
['foo', 'barry'],
['foo'],
4,
- []
+ <Object?>[]
];
var expected2 = [
['foo', 'bar'],
['foo'],
4,
- []
+ <Object?>[]
];
var reason2 = "Expected: [['foo', 'bar'], ['foo'], 4, []] "
"Actual: [['foo', 'barry'], ['foo'], 4, []] "
diff --git a/pkgs/matcher/test/expect_test.dart b/pkgs/matcher/test/expect_test.dart
index e2ef497..70ce579 100644
--- a/pkgs/matcher/test/expect_test.dart
+++ b/pkgs/matcher/test/expect_test.dart
@@ -18,7 +18,7 @@
});
test('contains an async error', () {
- expect(expectLater(Future.error('oh no'), completion(isFalse)),
+ expect(expectLater(Future<Never>.error('oh no'), completion(isFalse)),
throwsA('oh no'));
});
});
diff --git a/pkgs/matcher/test/having_test.dart b/pkgs/matcher/test/having_test.dart
index ddada77..26592cd 100644
--- a/pkgs/matcher/test/having_test.dart
+++ b/pkgs/matcher/test/having_test.dart
@@ -5,7 +5,7 @@
// ignore_for_file: lines_longer_than_80_chars
import 'package:matcher/matcher.dart';
-import 'package:test/test.dart' show test, expect, throwsA, group;
+import 'package:test/test.dart' show expect, group, test, throwsA;
import 'test_utils.dart';
diff --git a/pkgs/matcher/test/iterable_matchers_test.dart b/pkgs/matcher/test/iterable_matchers_test.dart
index 7607d18..3cd78d7 100644
--- a/pkgs/matcher/test/iterable_matchers_test.dart
+++ b/pkgs/matcher/test/iterable_matchers_test.dart
@@ -83,13 +83,13 @@
var d = [
['foo', 'bar'],
['foo'],
- []
+ <Object?>[]
];
var e = [
['foo', 'bar'],
['foo'],
3,
- []
+ <Object?>[]
];
shouldPass(d, everyElement(anyOf(isEmpty, contains('foo'))));
shouldFail(
@@ -196,7 +196,7 @@
equals(2), // 2
allOf([lessThan(3), isNot(0)]), // 1
equals(0), // 0
- predicate((int v) => v % 2 == 1), // 3
+ predicate((int v) => v.isOdd), // 3
equals(5), // 5
]));
shouldFail(
diff --git a/pkgs/matcher/test/map_matchers_test.dart b/pkgs/matcher/test/map_matchers_test.dart
index 4c699ab..f7dbafe 100644
--- a/pkgs/matcher/test/map_matchers_test.dart
+++ b/pkgs/matcher/test/map_matchers_test.dart
@@ -1,5 +1,5 @@
import 'package:matcher/matcher.dart'
- show contains, containsValue, containsPair;
+ show contains, containsPair, containsValue;
import 'package:test/test.dart' show test;
import 'test_utils.dart';
diff --git a/pkgs/matcher/test/matcher/completion_test.dart b/pkgs/matcher/test/matcher/completion_test.dart
index 9259cd1..ef8288e 100644
--- a/pkgs/matcher/test/matcher/completion_test.dart
+++ b/pkgs/matcher/test/matcher/completion_test.dart
@@ -20,13 +20,13 @@
});
test('succeeds when a future does not complete', () {
- var completer = Completer();
+ var completer = Completer<Never>();
expect(completer.future, doesNotComplete);
});
test('fails when a future does complete', () async {
var monitor = await TestCaseMonitor.run(() {
- var completer = Completer();
+ var completer = Completer<void>();
completer.complete(null);
expect(completer.future, doesNotComplete);
});
@@ -39,7 +39,7 @@
test('fails when a future completes after the expect', () async {
var monitor = await TestCaseMonitor.run(() {
- var completer = Completer();
+ var completer = Completer<void>();
expect(completer.future, doesNotComplete);
completer.complete(null);
});
@@ -52,7 +52,7 @@
test('fails when a future eventually completes', () async {
var monitor = await TestCaseMonitor.run(() {
- var completer = Completer();
+ var completer = Completer<void>();
expect(completer.future, doesNotComplete);
Future(() async {
await pumpEventQueue(times: 10);
@@ -80,7 +80,7 @@
test('with an error', () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.error('X'), completes);
+ expect(Future<Never>.error('X'), completes);
});
expect(monitor.state, equals(State.failed));
@@ -89,7 +89,7 @@
test('with a failure', () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.error(TestFailure('oh no')), completes);
+ expect(Future<Never>.error(TestFailure('oh no')), completes);
});
expectTestFailed(monitor, 'oh no');
@@ -127,7 +127,7 @@
test('with an error', () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.error('X'), completion(isNull));
+ expect(Future<Never>.error('X'), completion(isNull));
});
expect(monitor.state, equals(State.failed));
@@ -136,7 +136,7 @@
test('with a failure', () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.error(TestFailure('oh no')), completion(isNull));
+ expect(Future<Never>.error(TestFailure('oh no')), completion(isNull));
});
expectTestFailed(monitor, 'oh no');
@@ -175,7 +175,7 @@
});
test("blocks expectLater's Future", () async {
- var completer = Completer();
+ var completer = Completer<int>();
var fired = false;
unawaited(expectLater(completer.future, completion(equals(1))).then((_) {
fired = true;
diff --git a/pkgs/matcher/test/matcher/prints_test.dart b/pkgs/matcher/test/matcher/prints_test.dart
index cbdb12a..a681413 100644
--- a/pkgs/matcher/test/matcher/prints_test.dart
+++ b/pkgs/matcher/test/matcher/prints_test.dart
@@ -158,7 +158,7 @@
});
test('describes a failure with no text nicely', () async {
- void local() => Future.value();
+ void local() => Future<void>.value();
var monitor = await TestCaseMonitor.run(() {
expect(local, prints(contains('Goodbye')));
});
@@ -186,7 +186,7 @@
});
test("blocks expectLater's Future", () async {
- var completer = Completer();
+ var completer = Completer<void>();
var fired = false;
unawaited(expectLater(() {
diff --git a/pkgs/matcher/test/matcher/throws_test.dart b/pkgs/matcher/test/matcher/throws_test.dart
index 25b93a9..ff401b0 100644
--- a/pkgs/matcher/test/matcher/throws_test.dart
+++ b/pkgs/matcher/test/matcher/throws_test.dart
@@ -115,13 +115,13 @@
group('[throws]', () {
test('with a Future that throws an error', () {
// ignore: deprecated_member_use_from_same_package
- expect(Future.error('oh no'), throws);
+ expect(Future<Never>.error('oh no'), throws);
});
test("with a Future that doesn't throw", () async {
var monitor = await TestCaseMonitor.run(() {
// ignore: deprecated_member_use_from_same_package
- expect(Future.value(), throws);
+ expect(Future<void>.value(), throws);
});
expectTestFailed(
@@ -136,7 +136,7 @@
test('with a closure that returns a Future that throws an error', () {
// ignore: deprecated_member_use_from_same_package
- expect(() => Future.error('oh no'), throws);
+ expect(() => Future<Never>.error('oh no'), throws);
});
test("with a closure that returns a Future that doesn't throw", () async {
@@ -173,17 +173,17 @@
group('[throwsA]', () {
test('with a Future that throws an identical error', () {
- expect(Future.error('oh no'), throwsA('oh no'));
+ expect(Future<Never>.error('oh no'), throwsA('oh no'));
});
test('with a Future that throws a matching error', () {
- expect(Future.error(const FormatException('bad')),
+ expect(Future<Never>.error(const FormatException('bad')),
throwsA(isFormatException));
});
test("with a Future that doesn't throw", () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.value(), throwsA('oh no'));
+ expect(Future<void>.value(), throwsA('oh no'));
});
expectTestFailed(
@@ -198,7 +198,7 @@
test('with a Future that throws the wrong error', () async {
var monitor = await TestCaseMonitor.run(() {
- expect(Future.error('aw dang'), throwsA('oh no'));
+ expect(Future<Never>.error('aw dang'), throwsA('oh no'));
});
expectTestFailed(
@@ -213,7 +213,7 @@
test('with a closure that returns a Future that throws a matching error',
() {
- expect(() => Future.error(const FormatException('bad')),
+ expect(() => Future<Never>.error(const FormatException('bad')),
throwsA(isFormatException));
});
@@ -235,7 +235,7 @@
test('with closure that returns a Future that throws the wrong error',
() async {
var monitor = await TestCaseMonitor.run(() {
- expect(() => Future.error('aw dang'), throwsA('oh no'));
+ expect(() => Future<Never>.error('aw dang'), throwsA('oh no'));
});
expectTestFailed(
@@ -264,7 +264,7 @@
});
test("blocks expectLater's Future", () async {
- var completer = Completer();
+ var completer = Completer<Never>();
var fired = false;
unawaited(expectLater(completer.future, throwsArgumentError).then((_) {
fired = true;
diff --git a/pkgs/matcher/test/mirror_matchers_test.dart b/pkgs/matcher/test/mirror_matchers_test.dart
index 06f0df4..18a9e8d 100644
--- a/pkgs/matcher/test/mirror_matchers_test.dart
+++ b/pkgs/matcher/test/mirror_matchers_test.dart
@@ -3,6 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
// ignore_for_file: deprecated_member_use_from_same_package
+// ignore_for_file: unreachable_from_main
@TestOn('vm')
library;
diff --git a/pkgs/matcher/test/never_called_test.dart b/pkgs/matcher/test/never_called_test.dart
index 4c83e39..39e09da 100644
--- a/pkgs/matcher/test/never_called_test.dart
+++ b/pkgs/matcher/test/never_called_test.dart
@@ -15,7 +15,7 @@
test("doesn't throw if it isn't called", () async {
var monitor = await TestCaseMonitor.run(() {
- const Stream.empty().listen(neverCalled);
+ const Stream<Never>.empty().listen(neverCalled);
});
expectTestPassed(monitor);
diff --git a/pkgs/matcher/test/operator_matchers_test.dart b/pkgs/matcher/test/operator_matchers_test.dart
index f4b6d3a..46151e0 100644
--- a/pkgs/matcher/test/operator_matchers_test.dart
+++ b/pkgs/matcher/test/operator_matchers_test.dart
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
import 'package:matcher/matcher.dart';
-import 'package:test/test.dart' show test, expect, throwsArgumentError;
+import 'package:test/test.dart' show expect, test, throwsArgumentError;
import 'test_utils.dart';
diff --git a/pkgs/matcher/test/pretty_print_test.dart b/pkgs/matcher/test/pretty_print_test.dart
index 184704b..62f3ab1 100644
--- a/pkgs/matcher/test/pretty_print_test.dart
+++ b/pkgs/matcher/test/pretty_print_test.dart
@@ -6,7 +6,7 @@
import 'package:matcher/matcher.dart';
import 'package:matcher/src/pretty_print.dart';
-import 'package:test/test.dart' show group, test, expect;
+import 'package:test/test.dart' show expect, group, test;
class DefaultToString {}
diff --git a/pkgs/matcher/test/stream_matcher_test.dart b/pkgs/matcher/test/stream_matcher_test.dart
index c4af666..66e79c6 100644
--- a/pkgs/matcher/test/stream_matcher_test.dart
+++ b/pkgs/matcher/test/stream_matcher_test.dart
@@ -71,7 +71,7 @@
test('rejects an empty stream', () {
expect(
- expectLater(const Stream.empty(), emits(1)),
+ expectLater(const Stream<Never>.empty(), emits(1)),
throwsTestFailure(allOf([
startsWith('Expected: should emit an event that <1>\n'),
endsWith(' Which: emitted x Stream closed.\n')
@@ -96,7 +96,7 @@
group('emitsDone', () {
test('succeeds for an empty stream', () {
- expect(const Stream.empty(), emitsDone);
+ expect(const Stream<Never>.empty(), emitsDone);
});
test('fails for a stream with events', () {
diff --git a/pkgs/matcher/test/string_matchers_test.dart b/pkgs/matcher/test/string_matchers_test.dart
index be9e768..0820015 100644
--- a/pkgs/matcher/test/string_matchers_test.dart
+++ b/pkgs/matcher/test/string_matchers_test.dart
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
import 'package:matcher/matcher.dart';
-import 'package:test/test.dart' show test, expect;
+import 'package:test/test.dart' show expect, test;
import 'test_utils.dart';
diff --git a/pkgs/matcher/test/type_matcher_test.dart b/pkgs/matcher/test/type_matcher_test.dart
index 99d4459..e0ca3d8 100644
--- a/pkgs/matcher/test/type_matcher_test.dart
+++ b/pkgs/matcher/test/type_matcher_test.dart
@@ -4,13 +4,13 @@
// ignore_for_file: deprecated_member_use_from_same_package
import 'package:matcher/matcher.dart';
-import 'package:test/test.dart' show test, group;
+import 'package:test/test.dart' show group, test;
import 'test_utils.dart';
void main() {
- _test(isMap, {}, name: 'Map');
- _test(isList, [], name: 'List');
+ _test(isMap, <Object?, Object?>{}, name: 'Map');
+ _test(isList, <Object?>[], name: 'List');
_test(isArgumentError, ArgumentError());
_test(isCastError, TypeError());
_test<Exception>(isException, const FormatException());