drift/drift_dev/test/utils/options_reader_test.dart

104 lines
2.5 KiB
Dart

import 'package:build_config/build_config.dart';
import 'package:drift_dev/src/utils/options_reader.dart';
import 'package:test/test.dart';
void main() {
test('reads options from build.yaml file', () {
final config = BuildConfig.parse('a', ['drift_dev'], r'''
targets:
$default:
auto_apply_builders: false
builders:
drift_dev:preparing_builder:
enabled: true
drift_dev:drift_dev:
enabled: true
options:
scoped_dart_components: false
json_serializable:
enabled: true
sources:
- lib/**
- test/generated/**
''');
final options = readOptionsFromConfig(config);
expect(options.scopedDartComponents, isFalse);
});
test('supports reading from non-default target', () {
final config = BuildConfig.parse('a', ['drift_dev'], r'''
targets:
$default:
dependencies: [:source_gen]
source_gen:
auto_apply_builders: false
builders:
drift_dev:preparing_builder:
enabled: true
drift_dev:drift_dev:
enabled: true
options:
scoped_dart_components: false
json_serializable:
enabled: true
sources:
- lib/**
- test/generated/**
''');
final options = readOptionsFromConfig(config);
expect(options.scopedDartComponents, isFalse);
});
test('supports reading for not_shared builder', () {
final config = BuildConfig.parse('a', ['drift_dev'], r'''
targets:
$default:
dependencies: [:source_gen]
source_gen:
auto_apply_builders: false
builders:
drift_dev:preparing_builder:
enabled: true
drift_dev:not_shared:
enabled: true
options:
scoped_dart_components: false
json_serializable:
enabled: true
sources:
- lib/**
- test/generated/**
''');
final options = readOptionsFromConfig(config);
expect(options.scopedDartComponents, isFalse);
});
test('still works with | syntax', () {
final config = BuildConfig.parse('a', ['drift_dev'], r'''
targets:
$default:
dependencies: [:source_gen]
source_gen:
auto_apply_builders: false
builders:
drift_dev|preparing_builder:
enabled: true
drift_dev|not_shared:
enabled: true
options:
scoped_dart_components: false
json_serializable:
enabled: true
sources:
- lib/**
- test/generated/**
''');
final options = readOptionsFromConfig(config);
expect(options.scopedDartComponents, isFalse);
});
}