d4abd49df7
BUG= R=brianwilkerson@google.com, scheglov@google.com, zra@google.com Review-Url: https://codereview.chromium.org/2963323002 .
58 lines
1.7 KiB
Dart
58 lines
1.7 KiB
Dart
// Copyright (c) 2015, 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.
|
|
|
|
/// Test that sdk extensions are properly detected in various scenarios.
|
|
library analyzer_cli.test.sdk_ext;
|
|
|
|
import 'dart:io';
|
|
|
|
import 'package:analyzer/src/dart/sdk/sdk.dart';
|
|
import 'package:analyzer/src/generated/sdk.dart';
|
|
import 'package:analyzer_cli/src/driver.dart' show Driver, errorSink, outSink;
|
|
import 'package:analyzer_cli/src/options.dart';
|
|
import 'package:path/path.dart' as path;
|
|
import 'package:test/test.dart';
|
|
|
|
import 'utils.dart';
|
|
|
|
main() {
|
|
group('Sdk extensions', () {
|
|
StringSink savedOutSink, savedErrorSink;
|
|
int savedExitCode;
|
|
ExitHandler savedExitHandler;
|
|
|
|
setUp(() {
|
|
savedOutSink = outSink;
|
|
savedErrorSink = errorSink;
|
|
savedExitHandler = exitHandler;
|
|
savedExitCode = exitCode;
|
|
exitHandler = (code) => exitCode = code;
|
|
outSink = new StringBuffer();
|
|
errorSink = new StringBuffer();
|
|
});
|
|
tearDown(() {
|
|
outSink = savedOutSink;
|
|
errorSink = savedErrorSink;
|
|
exitCode = savedExitCode;
|
|
exitHandler = savedExitHandler;
|
|
});
|
|
|
|
test('.packages file specified', () async {
|
|
String testDir = path.join(testDirectory, 'data', 'packages_file');
|
|
Driver driver = new Driver(isTesting: true);
|
|
await driver.start([
|
|
'--packages',
|
|
path.join(testDir, '_packages'),
|
|
path.join(testDir, 'sdk_ext_user.dart')
|
|
]);
|
|
|
|
DartSdk sdk = driver.sdk;
|
|
expect(sdk, new isInstanceOf<FolderBasedDartSdk>());
|
|
expect((sdk as FolderBasedDartSdk).useSummary, isFalse);
|
|
|
|
expect(exitCode, 0);
|
|
});
|
|
});
|
|
}
|