@Tags(['analyzer']) import 'package:drift_dev/src/analysis/results/results.dart'; import 'package:test/test.dart'; import '../../test_utils.dart'; void main() { test('warns about invalid column', () async { final backend = await TestBackend.inTest({ 'a|lib/main.dart': ''' import 'package:drift/drift.dart'; class HasInvalidColumn extends Table { IntColumn get id => integer().call(); @override Set get primaryKey => {id}; } ''', }); final file = await backend.driver.fullyAnalyze(Uri.parse('package:a/main.dart')); final table = file.analyzedElements.single as DriftTable; expect(table.schemaName, 'has_invalid_column'); expect(table.columns, isEmpty); expect( file.allErrors, containsAll( [ isDriftError(contains('This getter does not create a valid column')) .withSpan('id'), isDriftError(contains('Column not found')).withSpan('id'), ], ), ); }); }