@Tags(['analyzer']) import 'package:build_test/build_test.dart'; import 'package:logging/logging.dart'; import 'package:test/test.dart'; import '../../utils.dart'; void main() { test('emits warning about outdated language version', () async { final logger = Logger.detached('test'); expect( logger.onRecord.map((e) => e.message), emitsThrough( allOf( contains('Dart 2.11'), contains('Please consider raising the minimum SDK version'), ), ), ); await emulateDriftBuild(inputs: { 'foo|lib/a.dart': ''' // @dart = 2.11 import 'package:drift/drift.dart'; @DriftDatabase(tables: []) class Database {} ''', }, logger: logger); }); test('includes version override in part file mode', () async { final writer = await emulateDriftBuild(inputs: { 'foo|lib/a.dart': ''' // @dart = 2.13 import 'package:drift/drift.dart'; @DriftDatabase(tables: []) class Database {} ''', }); checkOutputs( { 'foo|lib/a.drift.dart': decodedMatches(contains('// @dart=2.13')), }, writer.dartOutputs, writer, ); }); }