blob: 2312fcb647f020ad6fb7b63fee078019753b92c8 [file] [log] [blame]
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'tester/tester.dart';
void main() {
testMacroBuild([
r'$DART pub get',
r'$DART '
r'$DART_SDK_OUT/dart-sdk/bin/snapshots/dartdevc.dart.snapshot '
'-Dtest_runner.configuration=ddc-linux-chrome '
'--enable-experiment=macros '
'--sound-null-safety '
'-Dtest_runner.configuration=ddc-linux-chrome '
'--ignore-unrecognized-flags '
'--no-summarize '
'-o out.js '
'test/main.dart '
r'-s $DART_SDK_OUT/gen/utils/ddc/async_helper_outline.dill=async_helper '
r'-s $DART_SDK_OUT/gen/utils/ddc/expect_outline.dill=expect '
r'-s $DART_SDK_OUT/gen/utils/ddc/js_outline.dill=js '
r'-s $DART_SDK_OUT/gen/utils/ddc/meta_outline.dill=meta',
// Running out.js is nontrivial, just check if it contains the getter
// that the macro is supposed to add.
r'grep -q return$SPACE"OK" out.js',
]);
}