blob: a75ada9f931298ddd913ce856191195311e97e10 [file] [edit]
// 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 'package:jnigen/src/summary/summary.dart';
import 'package:test/test.dart';
void main() {
group('getActionableSummaryParseMessage', () {
test('returns actionable message for unsupported classfile version', () {
const stderr = '''
Exception in thread "main" java.lang.RuntimeException
Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 66
''';
final message = getActionableSummaryParseMessage(stderr);
expect(message, isNotNull);
expect(message, contains('class file version 66'));
expect(message, contains('JDK version (17 to 21)'));
expect(message, contains('javac --release 17'));
});
test('returns null for unrelated stderr', () {
const stderr = 'Not found: [com.github.dart_lang.jnigen.DoesNotExist]';
final message = getActionableSummaryParseMessage(stderr);
expect(message, isNull);
});
});
}