20 lines
677 B
Dart
20 lines
677 B
Dart
|
|
// Spike: the first Dart-to-Rust link. Opens the built cdylib and calls the
|
||
|
|
// smoke entry point, which round-trips an address through fumi-core's
|
||
|
|
// in-memory store. Proves the dynamic-library bridge works; the real binding
|
||
|
|
// replaces this once the surface settles.
|
||
|
|
|
||
|
|
import "dart:ffi";
|
||
|
|
import "dart:io";
|
||
|
|
|
||
|
|
import "package:flutter_test/flutter_test.dart";
|
||
|
|
|
||
|
|
void main() {
|
||
|
|
test("native library links and round-trips", () {
|
||
|
|
final lib = DynamicLibrary.open(
|
||
|
|
"${Directory.current.path}/native/target/release/libsmol_mail_native.so");
|
||
|
|
final smolSmoke =
|
||
|
|
lib.lookupFunction<Int32 Function(), int Function()>("smol_smoke");
|
||
|
|
expect(smolSmoke(), 0);
|
||
|
|
});
|
||
|
|
}
|