Skip to content

Fix test packages used in pkg/dartdev/test/native_assets to use @RecordUse instead of @ResourceIdentifer #1586

Closed
@sstrickl

Description

@sstrickl

There are new test failures on Prepare package:meta for publish.

The tests

pkg/dartdev/test/native_assets/build_test RuntimeError (expected Pass)
pkg/dartdev/test/native_assets/run_test RuntimeError (expected Pass)

are failing on configurations

unittest-asserts-debug-linux-x64
unittest-asserts-release-linux-arm64
unittest-asserts-release-linux-x64
unittest-asserts-release-mac-arm64
unittest-asserts-release-mac-x64
unittest-asserts-release-win-arm64
unittest-asserts-release-win-x64

An example log:

...
00:30 �[32m+5�[0m�[31m -1�[0m: dart link assets succeeds �[1m�[31m[E]�[0m�[0m

  Expected: <0>
    Actual: <254>
  

  package:matcher/src/expect/expect.dart 149:31       fail
  package:matcher/src/expect/expect.dart 144:3        _expect
  package:matcher/src/expect/expect.dart 56:3         expect
  pkg/dartdev/test/native_assets/run_test.dart 108:7  main.<fn>.<fn>
  ===== asynchronous gap ===========================
  pkg/dartdev/test/native_assets/helpers.dart 204:12  runPackageTest.<fn>
  ===== asynchronous gap ===========================
  pkg/dartdev/test/native_assets/helpers.dart 28:5    inTempDir
  ===== asynchronous gap ===========================
  pkg/dartdev/test/native_assets/helpers.dart 198:10  runPackageTest
  ===== asynchronous gap ===========================
  pkg/dartdev/test/native_assets/helpers.dart 161:5   nativeAssetsTest
  ===== asynchronous gap ===========================
  pkg/dartdev/test/native_assets/run_test.dart 96:5   main.<fn>
  ===== asynchronous gap ===========================
  package:test_api/src/backend/declarer.dart 229:9    Declarer.test.<fn>.<fn>
  ===== asynchronous gap ===========================
  package:test_api/src/backend/declarer.dart 227:7    Declarer.test.<fn>
  ===== asynchronous gap ===========================
  package:test_api/src/backend/invoker.dart 258:9     Invoker._waitForOutstandingCallbacks.<fn>
  

00:30 �[32m+5�[0m�[31m -1�[0m: dart link assets doesnt have treeshaken asset�[0m

00:35 �[32m+6�[0m�[31m -1�[0m: dart add asset in linking�[0m

00:38 �[32m+7�[0m�[31m -1�[0m: �[31mSome tests failed.�[0m



Consider enabling the flag chain-stack-traces to receive more detailed exceptions.
For example, 'dart test --chain-stack-traces'.

stderr:
Unhandled exception:
Dummy exception to set exit code.

--- Re-run this test:
python3 tools/test.py -n unittest-asserts-release-linux-x64 pkg/dartdev/test/native_assets/run_test

After changing the tests to properly pass expectExitCodeZero: true (see CL 385921), the additional information printed on stderr:

00:18 +5: dart link assets succeeds



lib/src/drop_dylib_link.dart:10:4: Error: Couldn't find constructor 'ResourceIdentifier'.
  @ResourceIdentifier('add')
   ^^^^^^^^^^^^^^^^^^
lib/src/drop_dylib_link.dart:13:4: Error: Couldn't find constructor 'ResourceIdentifier'.
  @ResourceIdentifier('multiply')
   ^^^^^^^^^^^^^^^^^^


254

00:21 +5 -1: dart link assets succeeds [E]

  Expected: <0>
    Actual: <254>

So it looks like this is pulling in source files from a test package that expects an older version of package:meta before @ResourceIdentifier was changes to @RecordUse and then trying to compile them using the new version of package:meta in the Dart SDK.

/cc @dcharkes @mosuem

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions