Chromium Code Reviews| Index: pkg/analysis_server/test/mocks.dart |
| diff --git a/pkg/analysis_server/test/mocks.dart b/pkg/analysis_server/test/mocks.dart |
| index f1c23a910bbaeb02035094a6f3039b7199eb7b16..eac055134b17a3c434ba7338ddbed93672ebb47e 100644 |
| --- a/pkg/analysis_server/test/mocks.dart |
| +++ b/pkg/analysis_server/test/mocks.dart |
| @@ -7,12 +7,18 @@ library mocks; |
| import 'dart:async'; |
| import 'dart:io'; |
| +import 'package:analyzer/src/generated/ast.dart'; |
| +import 'package:analyzer/src/generated/element.dart'; |
| import 'package:analyzer/src/generated/engine.dart'; |
| +import 'package:analyzer/src/generated/error.dart'; |
| +import 'package:analyzer/src/generated/html.dart'; |
| import 'package:analyzer/src/generated/source.dart'; |
| +import 'package:analysis_server/src/analysis_logger.dart'; |
| import 'package:analysis_server/src/analysis_server.dart'; |
| import 'package:analysis_server/src/channel.dart'; |
| import 'package:analysis_server/src/protocol.dart'; |
| import 'package:matcher/matcher.dart'; |
| +import 'package:unittest/unittest.dart'; |
| /** |
| * Answer the absolute path the the SDK relative to the currently running |
| @@ -143,3 +149,199 @@ class MockServerChannel implements ServerCommunicationChannel { |
| expect(notificationsReceived, hasLength(notificationCount)); |
| } |
| } |
| + |
| +/** |
| + * Exception thrown when an unexpected function call is made on a mock. |
| + */ |
| +class UnexpectedMockCall extends Error { |
| + String toString() => "Unexpected call to mocked function"; |
| +} |
| + |
| +/** |
| + * Shorthand function for throwing an UnexpectedMockCall exception. |
| + */ |
| +_unexpected() { |
| + throw new UnexpectedMockCall(); |
| +} |
| + |
| +/** |
| + * A mock [AnalysisLogger] that treats all errors and warnings as unexpected. |
| + */ |
| +class MockAnalysisLogger extends Logger { |
|
Brian Wilkerson
2014/04/22 22:46:03
Try the following
@proxy
class MockAnalysisLogger
Paul Berry
2014/04/23 18:36:26
Done, thanks.
|
| + |
| + void logError(String message) { |
| + print(message); |
| + _unexpected(); |
| + } |
| + |
| + @override |
| + void logError2(String message, Exception exception) => _unexpected(); |
| + |
| + @override |
| + void logInformation(String message) => _unexpected(); |
| + |
| + @override |
| + void logInformation2(String message, Exception exception) => _unexpected(); |
| +} |
| + |
| +/** |
| + * A mock [AnalysisContext] for testing [AnalysisServer]. This class raises an |
| + * exception for every abstract method in [AnalysisContext]. Tests should |
| + * derive from this and re-implement the methods they need. |
| + */ |
| +class MockAnalysisContext extends AnalysisContext { |
|
Brian Wilkerson
2014/04/22 22:46:03
Likewise:
@proxy
class MockAnalysisContext implem
|
| + |
| + @override |
| + AnalysisOptions get analysisOptions => _unexpected(); |
| + |
| + @override |
| + void set analysisOptions(AnalysisOptions options) => _unexpected(); |
| + |
| + @override |
| + void set analysisPriorityOrder(List<Source> sources) => _unexpected(); |
| + |
| + @override |
| + void applyChanges(ChangeSet changeSet) => _unexpected(); |
| + |
| + @override |
| + String computeDocumentationComment(Element element) => _unexpected(); |
| + |
| + @override |
| + List<AnalysisError> computeErrors(Source source) => _unexpected(); |
| + |
| + @override |
| + HtmlElement computeHtmlElement(Source source) => _unexpected(); |
| + |
| + @override |
| + SourceKind computeKindOf(Source source) => _unexpected(); |
| + |
| + @override |
| + LibraryElement computeLibraryElement(Source source) => _unexpected(); |
| + |
| + @override |
| + LineInfo computeLineInfo(Source source) => _unexpected(); |
| + |
| + @override |
| + void dispose() => _unexpected(); |
| + |
| + @override |
| + bool exists(Source source) => _unexpected(); |
| + |
| + @override |
| + AnalysisContext extractContext(SourceContainer container) => _unexpected(); |
| + |
| + @override |
| + AngularApplication getAngularApplicationWithHtml(Source htmlSource) => |
| + _unexpected(); |
| + |
| + @override |
| + CompilationUnitElement getCompilationUnitElement(Source unitSource, Source |
| + librarySource) => _unexpected(); |
| + |
| + @override |
| + TimestampedData<String> getContents(Source source) => _unexpected(); |
| + |
| + @override |
| + Element getElement(ElementLocation location) => _unexpected(); |
| + |
| + @override |
| + AnalysisErrorInfo getErrors(Source source) => _unexpected(); |
| + |
| + @override |
| + HtmlElement getHtmlElement(Source source) => _unexpected(); |
| + |
| + @override |
| + List<Source> getHtmlFilesReferencing(Source source) => _unexpected(); |
| + |
| + @override |
| + SourceKind getKindOf(Source source) => _unexpected(); |
| + |
| + @override |
| + List<Source> getLibrariesContaining(Source source) => _unexpected(); |
| + |
| + @override |
| + List<Source> getLibrariesDependingOn(Source librarySource) => _unexpected(); |
| + |
| + @override |
| + List<Source> getLibrariesReferencedFromHtml(Source htmlSource) => _unexpected(); |
| + |
| + @override |
| + LibraryElement getLibraryElement(Source source) => _unexpected(); |
| + |
| + @override |
| + LineInfo getLineInfo(Source source) => _unexpected(); |
| + |
| + @override |
| + int getModificationStamp(Source source) => _unexpected(); |
| + |
| + @override |
| + CompilationUnit getResolvedCompilationUnit(Source unitSource, LibraryElement |
| + library) => _unexpected(); |
| + |
| + @override |
| + CompilationUnit getResolvedCompilationUnit2(Source unitSource, Source |
| + librarySource) => _unexpected(); |
| + |
| + @override |
| + HtmlUnit getResolvedHtmlUnit(Source htmlSource) => _unexpected(); |
| + |
| + @override |
| + List<Source> get htmlSources => _unexpected(); |
| + |
| + @override |
| + bool isClientLibrary(Source librarySource) => _unexpected(); |
| + |
| + @override |
| + bool get isDisposed => _unexpected(); |
| + |
| + @override |
| + bool isServerLibrary(Source librarySource) => _unexpected(); |
| + |
| + @override |
| + List<Source> get launchableClientLibrarySources => _unexpected(); |
| + |
| + @override |
| + List<Source> get launchableServerLibrarySources => _unexpected(); |
| + |
| + @override |
| + List<Source> get librarySources => _unexpected(); |
| + |
| + @override |
| + void mergeContext(AnalysisContext context) => _unexpected(); |
| + |
| + @override |
| + CompilationUnit parseCompilationUnit(Source source) => _unexpected(); |
| + |
| + @override |
| + HtmlUnit parseHtmlUnit(Source source) => _unexpected(); |
| + |
| + @override |
| + AnalysisResult performAnalysisTask() => _unexpected(); |
| + |
| + @override |
| + List<Source> get refactoringUnsafeSources => _unexpected(); |
| + |
| + @override |
| + CompilationUnit resolveCompilationUnit(Source unitSource, LibraryElement |
| + library) => _unexpected(); |
| + |
| + @override |
| + CompilationUnit resolveCompilationUnit2(Source unitSource, Source |
| + librarySource) => _unexpected(); |
| + |
| + @override |
| + HtmlUnit resolveHtmlUnit(Source htmlSource) => _unexpected(); |
| + |
| + @override |
| + void setChangedContents(Source source, String contents, int offset, int |
| + oldLength, int newLength) => _unexpected(); |
| + |
| + @override |
| + void setContents(Source source, String contents) => _unexpected(); |
| + |
| + @override |
| + SourceFactory get sourceFactory => _unexpected(); |
| + |
| + @override |
| + void set sourceFactory(SourceFactory factory) => _unexpected(); |
| +} |