Commit Graph

2261 Commits

Author SHA1 Message Date
Konstantin Shcheglov d6fdc65220 Run 'Rename Library' refactoring tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2614903006 .
2017-01-06 12:33:23 -08:00
Konstantin Shcheglov 429379045b Run rename-import tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2617213002 .
2017-01-06 11:35:29 -08:00
Brian Wilkerson 07895169be Remove code duplication
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2618983003 .
2017-01-06 10:55:55 -08:00
Konstantin Shcheglov 31c7cce275 Run refactoring tests with the new analysis driver.
There are some failures because of missing potential search results.

These tests are not updated yet because they have too many problems now.

inline_method_test.dart
move_file_test.dart
rename_import_test.dart
rename_library_test.dart

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2618993003 .
2017-01-06 10:49:34 -08:00
Konstantin Shcheglov c7380f5d14 Run Quick Fixes tests with the new analysis driver.
There is a handful of failing tests though.
I fill triage them in subsequent CLs.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2617833003 .
2017-01-06 09:27:04 -08:00
Konstantin Shcheglov 71fc176b9b Run class/member hierarchy tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2618033002 .
2017-01-06 09:24:31 -08:00
Konstantin Shcheglov 4e49205c61 Run AssistProcessor tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2617833002 .
2017-01-05 16:59:35 -08:00
Konstantin Shcheglov d2f48ccf58 Make subclasses of AbstractContextTest asynchronous.
As a preliminary step before duplicating them for the new analysis driver.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2614033003 .
2017-01-05 14:21:29 -08:00
Konstantin Shcheglov e870bc9872 Fix for summarizing triple slash documentation comments.
R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2615013003 .
2017-01-05 12:30:44 -08:00
Konstantin Shcheglov d8c426bb85 Fix for resynthesizing libraries with invalid part URIs.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2615903003 .
2017-01-05 12:26:47 -08:00
Konstantin Shcheglov e9794e37b5 Call processOptionsForDriver() before creating the driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2615903002 .
2017-01-05 11:10:01 -08:00
Konstantin Shcheglov d9930d86cd processOptionsForDriver() is never called with 'optionsRemoved'.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2612783004 .
2017-01-05 08:47:52 -08:00
Konstantin Shcheglov 9a3b6a09e5 Issue 28261. Add support for implementing generic methods in Quick Fix.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28261

Review-Url: https://codereview.chromium.org/2618653002 .
2017-01-05 08:32:03 -08:00
Konstantin Shcheglov 4f03cccf06 Fix part related completion tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2616493004 .
2017-01-04 15:06:10 -08:00
Konstantin Shcheglov 1e43b4f270 Replace using MockSdk with FolderBasedDartSdk + summaries in AbstractContextTest(s).
It has some performance penalty (about 2-3 seconds in 35 seconds total).

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2610823004 .
2017-01-04 14:39:24 -08:00
Konstantin Shcheglov 20ca3e9b7e Enable several completion tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2612103002 .
2017-01-04 14:23:18 -08:00
Konstantin Shcheglov 44bab19cb3 Implement 'analysis.analyzedFiles' notification with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2612723002 .
2017-01-04 07:12:47 -08:00
Konstantin Shcheglov 606bdb519f Cache results for priority files in AnalysisDriver.
Remove corresponding caching from Analysis Server.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2611523005 .
2017-01-03 17:04:58 -08:00
Konstantin Shcheglov 7e560a612f Enable the new analysis driver by default, use --disable-new-analysis-driver to disable.
R=paulberry@google.com, brianwilkerson@google.com, devoncarew@google.com
BUG=

Review-Url: https://codereview.chromium.org/2606283005 .
2017-01-03 14:50:17 -08:00
Brian Wilkerson bbf45b52e6 Guard against missing enclosing class (issue 28163)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2609833002 .
2017-01-03 07:52:54 -08:00
Brian Wilkerson e1a27c0c60 Rework the replay test to be more correct
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2611593002 .
2017-01-03 07:45:07 -08:00
Dan Rubel 384d35240d new test for analysis options include directive
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2590593003 .
2016-12-20 15:46:37 -05:00
Konstantin Shcheglov eaca15cd4d Fix analysis.getNavigation with the new analysis driver.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28125

Review-Url: https://codereview.chromium.org/2582753003 .
2016-12-16 10:52:47 -08:00
Konstantin Shcheglov 7e15a96b1b Use AnalysisOptions.signature as a way to check compatibility.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2577943003 .
2016-12-15 13:01:06 -08:00
Brian Wilkerson cfcfe7a5cf Add access to FutureOr in TypeProviders (and add implementation in mock sdks)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2581803002 .
2016-12-15 12:55:54 -08:00
Konstantin Shcheglov f0a0b1fc79 Fix some completion tests with parts.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2573233002 .
2016-12-14 16:28:02 -08:00
Brian Wilkerson 8c946a6b9b Apply error processors in the new driver
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2577913002 .
2016-12-14 16:07:06 -08:00
Brian Wilkerson a8e9a1f108 Fix updating source factory in driver (issue 28086)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2571353002 .
2016-12-14 13:08:23 -08:00
Konstantin Shcheglov 8dbfef1cf1 Fix completion tests that attempted to resolve a library.
We don't need this with the new analysis driver.
The library element will be resynthesized on demand.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2571333002 .
2016-12-14 12:33:06 -08:00
Brian Wilkerson bead4ce5f3 Add more tests of the driver
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2572233002 .
2016-12-14 12:29:20 -08:00
Konstantin Shcheglov 63d1c18f41 Add completion tests for the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572203002 .
2016-12-14 12:05:20 -08:00
Konstantin Shcheglov 52c81e4a78 Fix for detecting lib/src. Sort fixes by relevance.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572013002 .
2016-12-14 06:57:19 -08:00
Konstantin Shcheglov 3a422bceb7 Implement SearchEngine.searchMemberDeclarations() for the new driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566393003 .
2016-12-13 14:06:15 -08:00
Konstantin Shcheglov 142473b8cb Implement SearchEngine.searchTopLevelDeclarations() for the new driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572603003 .
2016-12-13 12:11:22 -08:00
Brian Wilkerson 5ad638c9d3 Add a failing integration test
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2574843002 .
2016-12-13 11:44:37 -08:00
Paul Berry cc2b071743 Fix up imports after d8c9645c26.
Review-Url: https://codereview.chromium.org/2567403002 .
2016-12-13 05:15:47 -08:00
Mike Fairhurst d8c9645c26 Reorganize InheritedRefenenceContributor to serve angular completion
Take the parts that I would have simply copied and pasted them into my
own code, and create new public & private methods to serve the new
organization.

Add an option to get the current class's accessors/methods along with
the inherited ones, because that's what I want.

Make opType a public member of DartCompletionRequest

Its used so heavily by so many of the autocomplete targets, it really
doesn't need to be hidden on the Impl.

Besides, I want to use InheritedReferenceContributor, which upcasts the
DartCompletionRequest into the Impl in order to grab this field -- but
for a large number of reasons I can't really use
DartCompletionRequestImpl. Therefore I need my own class to implement
DartCompletionRequest and therefore my code will only work with
InheritedReferenceContributor if it doesn't have to look outside the
interface for this information.

Change to enable the angular analysis project to do autocomplete

We don't have CompilationUnits, but we do have dart ASTs, and we want to
find the completion target with the same algorithm. The CompletionTarget
class's functionality doesn't depend on its member compilationUnit not
being null, so that isn't a problem for us. However, in `forOffset()`,
we cannot pass in a null unit, even though its only used to set the
`compilationUnit` member and otherwise only used as an `AstNode` which
we have.

So rather than using `compilationUnit` as the entry point of the
algorithm, add a new `AstNode` parameter to represent the entry point,
and when its null simply use the value of `compilationUnit`.

BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2565633002 .
2016-12-12 14:29:53 -08:00
Brian Wilkerson 223513c81a Fix bug when packages file changes in new driver
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2570623002 .
2016-12-12 14:03:00 -08:00
Konstantin Shcheglov a5b2e62bda Fix for completion after the closing quote in a directive.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572513003 .
2016-12-12 13:38:38 -08:00
Konstantin Shcheglov c4ed99acc9 Support for overlay only files in Analysis Server with the new driver.
Do we need this at all?

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2571593002 .
2016-12-12 13:16:04 -08:00
Konstantin Shcheglov d564b0aaab Send errors notification without delay.
Update 'analysis.updateContent' integration test.

This might be OK from performance POV - errors are cheaper to send than
for example navigation. And this satisfies the goal of 'analyzing'
notification - that new errors are to be expected.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2567113003 .
2016-12-12 11:39:47 -08:00
Konstantin Shcheglov f43db9ccfa Update the integration test to make the file with subscription a priority one.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566243002 .
2016-12-12 10:51:13 -08:00
Paul Berry 02fe40c6f7 Simplify how patch files are specified to analyzer.
After discussion with kmillikin@, sigmund@, and scheglov@, we decided
that specifying the patch files in libraries.dart is more complex (and
less flexible) than we'd like.  This CL changes things so that the
patch files are specified in analysis options using a simple map from
library name (e.g. "dart:core") to a list of patch file paths.

Clients are now allowed to put patch files wherever they want; they
don't need to be inside the sdk directory.

Note that we no longer include the patch configuration in
encodeCrossContextOptions.  This should be ok, since we don't have any
use case in which a single instance of analyzer needs to accommodate
multiple patch configurations.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2560323002 .
2016-12-12 10:15:18 -08:00
Konstantin Shcheglov 2a7612f103 Implement 'analysis.occurrences' for the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566223002 .
2016-12-12 10:07:19 -08:00
Konstantin Shcheglov a7222ac09d Implement 'analysis.outline' for the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2571513002 .
2016-12-12 09:09:45 -08:00
Brian Wilkerson a2713a8be5 Disable a test that times out on the bots
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2568183002 .
2016-12-12 08:51:11 -08:00
Konstantin Shcheglov 0728e4ee70 Implement 'analysis.getErrors' for the new driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566013002 .
2016-12-11 15:27:57 -08:00
Konstantin Shcheglov 80e30c4c4e Implement 'analysis.getNavigation' for the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566883002 .
2016-12-11 15:23:03 -08:00
Brian Wilkerson 86c62a6bad Remove the command-line plugin
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2565993002 .
2016-12-11 10:59:19 -08:00
Konstantin Shcheglov 4fa3413596 Renames and comment tweaks for files.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2569623002 .
2016-12-11 10:11:07 -08:00