Repository navigation
Closed
flutter/packages
#13061Labels
a: tests"flutter test", flutter_test, or one of our tests"flutter test", flutter_test, or one of our testsp: pigeonrelated to pigeon messaging codegen toolrelated to pigeon messaging codegen toolteam-ecosystemOwned by Ecosystem teamOwned by Ecosystem team
Description
00:24 +400: Threading tests host calls can be made synchronously from a background isolate
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure was thrown running a test:
Expected: NativeInteropAllTypes:<NativeInteropAllTypes(aBool: true, anInt: 42, anInt64: 3000000000,
aDouble: 3.14159, aByteArray: [1, 2, 3], a4ByteArray: [4, 5, 6], a8ByteArray: [7, 8, 9],
aFloatArray: [2.71828, 3.14159], anEnum: NativeInteropAnEnum.fortyTwo, anotherEnum:
NativeInteropAnotherEnum.justInCase, aString: Hello host!, anObject: notNullable, list: [Thing 1, 2,
true, 3.14], stringList: [Thing 1, 2, true, 3.14], intList: [1, 2, 3, 4], doubleList: [1.0, 2.99999,
3.0, 3.14], boolList: [true, false, true, false], enumList: [NativeInteropAnEnum.one,
NativeInteropAnEnum.two, NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo,
NativeInteropAnEnum.fourHundredTwentyTwo], objectList: [Thing 1, 2, true, 3.14], listList: [[Thing
1, 2, true, 3.14], [Thing 1, 2, true, 3.14], [1, 2, 3, 4], [1.0, 2.99999, 3.0, 3.14], [true, false,
true, false], [NativeInteropAnEnum.one, NativeInteropAnEnum.two, NativeInteropAnEnum.three,
NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.fourHundredTwentyTwo]], mapList: [{a: 1, b: 2.0,
c: three, d: false}, {a: 1, b: 2.0, c: three, d: false}, {0.0: 0.0, 1.1: 2.0, 3.0: 0.3, -0.4: -0.2},
{0: 0, 1: 1, 2: 3, 4: -1}, {0: true, 1: false, 2: true}, {NativeInteropAnEnum.one:
NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.three: NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo:
NativeInteropAnEnum.fortyTwo}], map: {a: 1, b: 2.0, c: three, d: false}, stringMap: {a: 1, b: 2.0,
c: three, d: false}, intMap: {0: 0, 1: 1, 2: 3, 4: -1}, enumMap: {NativeInteropAnEnum.one:
NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.three: NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo:
NativeInteropAnEnum.fortyTwo}, objectMap: {a: 1, b: 2.0, c: three, d: false}, listMap: {0: [Thing 1,
2, true, 3.14], 1: [Thing 1, 2, true, 3.14], 2: [1.0, 2.99999, 3.0, 3.14], 4: [1, 2, 3, 4], 5:
[true, false, true, false], 6: [NativeInteropAnEnum.one, NativeInteropAnEnum.two,
NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.fourHundredTwentyTwo]},
mapMap: {0: {a: 1, b: 2.0, c: three, d: false}, 1: {a: 1, b: 2.0, c: three, d: false}, 2: {0.0: 0.0,
1.1: 2.0, 3.0: 0.3, -0.4: -0.2}, 4: {0: 0, 1: 1, 2: 3, 4: -1}, 5: {0: true, 1: false, 2: true}, 6:
{NativeInteropAnEnum.one: NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.three: NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo:
NativeInteropAnEnum.fortyTwo}})>
Actual: NativeInteropAllTypes:<NativeInteropAllTypes(aBool: true, anInt: 42, anInt64: 3000000000,
aDouble: 3.14159, aByteArray: [1, 2, 3], a4ByteArray: [4, 5, 6], a8ByteArray: [135180852886016,
135180852886032, 135180852886080], aFloatArray: [2.7182788848876958, 3.14159], anEnum:
NativeInteropAnEnum.fortyTwo, anotherEnum: NativeInteropAnotherEnum.justInCase, aString: Hello
host!, anObject: notNullable, list: [Thing 1, 2, true, 3.14], stringList: [Thing 1, 2, true, 3.14],
intList: [1, 2, 3, 4], doubleList: [1.0, 2.99999, 3.0, 3.14], boolList: [true, false, true, false],
enumList: [NativeInteropAnEnum.one, NativeInteropAnEnum.two, NativeInteropAnEnum.three,
NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.fourHundredTwentyTwo], objectList: [Thing 1, 2,
true, 3.14], listList: [[Thing 1, 2, true, 3.14], [Thing 1, 2, true, 3.14], [1, 2, 3, 4], [1.0,
2.99999, 3.0, 3.14], [true, false, true, false], [NativeInteropAnEnum.one, NativeInteropAnEnum.two,
NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.fourHundredTwentyTwo]],
mapList: [{a: 1, b: 2.0, c: three, d: false}, {a: 1, b: 2.0, c: three, d: false}, {0.0: 0.0, -0.4:
-0.2, 3.0: 0.3, 1.1: 2.0}, {0: 0, 1: 1, 2: 3, 4: -1}, {0: true, 1: false, 2: true},
{NativeInteropAnEnum.one: NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.fortyTwo: NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.three:
NativeInteropAnEnum.three}], map: {a: 1, b: 2.0, c: three, d: false}, stringMap: {a: 1, b: 2.0, c:
three, d: false}, intMap: {0: 0, 1: 1, 2: 3, 4: -1}, enumMap: {NativeInteropAnEnum.one:
NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.fortyTwo: NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.three:
NativeInteropAnEnum.three}, objectMap: {a: 1, b: 2.0, c: three, d: false}, listMap: {0: [Thing 1, 2,
true, 3.14], 1: [Thing 1, 2, true, 3.14], 2: [1.0, 2.99999, 3.0, 3.14], 4: [1, 2, 3, 4], 5: [true,
false, true, false], 6: [NativeInteropAnEnum.one, NativeInteropAnEnum.two,
NativeInteropAnEnum.three, NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.fourHundredTwentyTwo]},
mapMap: {0: {a: 1, b: 2.0, c: three, d: false}, 1: {a: 1, b: 2.0, c: three, d: false}, 2: {0.0: 0.0,
-0.4: -0.2, 3.0: 0.3, 1.1: 2.0}, 4: {0: 0, 1: 1, 2: 3, 4: -1}, 5: {0: true, 1: false, 2: true}, 6:
{NativeInteropAnEnum.one: NativeInteropAnEnum.one, NativeInteropAnEnum.two: NativeInteropAnEnum.two,
NativeInteropAnEnum.fortyTwo: NativeInteropAnEnum.fortyTwo, NativeInteropAnEnum.three:
NativeInteropAnEnum.three}})>
When the exception was thrown, this was the stack:
#4 runPigeonNativeInteropIntegrationTests.<anonymous closure>.<anonymous closure> (package:shared_test_plugin_code/native_interop_integration_tests.dart:2876:7)
<asynchronous suspension>
#5 testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:192:15)
<asynchronous suspension>
#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5)
<asynchronous suspension>
<asynchronous suspension>
(elided one frame from package:stack_trace)
This was caught by the test expectation on the following line:
package:shared_test_plugin_code/native_interop_integration_tests.dart line 2876
The test description was:
host calls can be made synchronously from a background isolate
════════════════════════════════════════════════════════════════════════════════════════════════════
00:24 +400 -1: Threading tests host calls can be made synchronously from a background isolate [E]
Test failed. See exception logs above.
The test description was: host calls can be made synchronously from a background isolate
Seen across multiple PRs:
Metadata
Metadata
Assignees
Labels
a: tests"flutter test", flutter_test, or one of our tests"flutter test", flutter_test, or one of our testsp: pigeonrelated to pigeon messaging codegen toolrelated to pigeon messaging codegen toolteam-ecosystemOwned by Ecosystem teamOwned by Ecosystem team
Activity
[-]Linux_android custom_package_tests stable failing across multiple PRs[/-][+][pigeon] Linux_android custom_package_tests stable failing across multiple PRs[/+]tarrinneal commentedon Sep 28, 2026
@vashworth is this flake or persistent failures?
vashworth commentedon Sep 28, 2026
It happens consistently
tarrinneal commentedon Sep 28, 2026
This is a really strange failure. I'm not sure how this could be failing now when it wasn't before. I will dig into it today
[pigeon] Fix JNI/FFI typed data memory lifetime bugs and update docs (f…
github-actions commentedon Oct 14, 2026
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.