blob: 7cffe378359621011182126f6a858a92a25b2abd [file] [log] [blame]
// Copyright (c) 2014, 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.
library test.integration.analysis.get.errors;
import 'dart:async';
import 'package:unittest/unittest.dart';
import '../integration_tests.dart';
/**
* Base class for testing the "analysis.getErrors" request.
*/
class AnalysisDomainGetErrorsTest extends
AbstractAnalysisServerIntegrationTest {
/**
* True if the "analysis.getErrors" request should be made after analysis is
* complete.
*/
final bool afterAnalysis;
AnalysisDomainGetErrorsTest(this.afterAnalysis);
test_getErrors() {
String pathname = sourcePath('test.dart');
String text = r'''
main() {
var x // parse error: missing ';'
}''';
writeFile(pathname, text);
standardAnalysisSetup();
Future finishTest() {
return sendAnalysisGetErrors(pathname).then((result) {
expect(result['errors'], equals(currentAnalysisErrors[pathname]));
});
}
if (afterAnalysis) {
return analysisFinished.then((_) => finishTest());
} else {
return finishTest();
}
}
}