Commit Graph

4182 Commits

Author SHA1 Message Date
scheglov@google.com 80d8779110 Navigation computer and two variants of tests for it.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//314493002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36958 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-03 23:14:47 +00:00
scheglov@google.com 61dfa442c9 Extract analysis/notifications into a separate operation/file.
It seems that while we really have to expose some additional API from AnalysisServer,
it still worth to extract analysis and its notifications into a separate file.

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

Review URL: https://codereview.chromium.org//311653002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36899 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 21:00:49 +00:00
paulberry@google.com b703deb077 Add a boolean which causes AnalysisServer to rethrow exceptions.
The boolean defaults to true to ensure that any unhandled analysis
exceptions which occur during unit tests are reported as unit test
failures.  When the full analysis server is run normally it is set to false
so that exceptions are simply logged.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//302323002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36895 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 19:57:41 +00:00
scheglov@google.com 304243bc5b Add ServerOperation and queue.
Schedule operations to perform analysis.
Moving notifications into operations to be done in the next CL.

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

Review URL: https://codereview.chromium.org//308003009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36890 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 18:31:49 +00:00
brianwilkerson@google.com 99e1a17cf0 Fix another test
Review URL: https://codereview.chromium.org//310643003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36877 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 16:01:27 +00:00
brianwilkerson@google.com 128c605a17 Fix the build
Review URL: https://codereview.chromium.org//308313005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36875 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 14:58:27 +00:00
brianwilkerson@google.com ae5597140c First cut at server timing tests
R=jwren@google.com, paulberry@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//303233007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36874 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 14:39:33 +00:00
scheglov@google.com a95856f5be Use 'analysis.setSubscriptions' HIGHLIGHTS in Editor.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//304273007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36853 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-31 01:53:28 +00:00
paulberry@google.com 15560d6608 Convert analysis_server_test to use a helper class.
Also remove some commented-out tests that are no longer relevant.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//303113005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36837 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 21:17:40 +00:00
scheglov@google.com fe26a39b8d Initial implementation for 'analysis.setSubscriptions' API.
Not quite all, and not as operations yet.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//308923003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36834 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 21:02:28 +00:00
paulberry@google.com 386fcb77c9 Don't add files inside "packages" subdir to context.
In the short term this will allow us to make fair comparisons between
the Java-based and Dart-based analysis engines.  In the long run we'll
be adding these files to the context using a separate mechanism (by
finding them via "pub list-package-dirs").

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//303413003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36832 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 19:38:20 +00:00
scheglov@google.com 24c8f1f4b2 Extract constants into separate libarary.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//308703005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36828 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 18:37:44 +00:00
scheglov@google.com 2ee78ad191 Implementation of 'notification.highlight' API.
Still no subscriptions yet, so we generate highlight regions for all non-SDK files.

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

Review URL: https://codereview.chromium.org//307963006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36822 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 17:22:05 +00:00
paulberry@google.com 9cbf4c9886 Move PhysicalResourceProvider tests out of test_all.dart.
These tests are slow since they require long delays to let the file
system sync up.  With this change, the tests will still run on the
buildbots, but won't run on local developer machines unless the
developer specifically chooses to execute
physical_resource_provider_test.dart.

R=scheglov@google.com

Review URL: https://codereview.chromium.org//303123004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36809 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-29 22:24:55 +00:00
paulberry@google.com a9a6747471 Handle file additions/removals in ContextDirectoryManager.
R=danrubel@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//308713002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36800 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-29 20:14:24 +00:00
paulberry@google.com f8e69ee59c Make ContextDirectoryManager responsible for scanning directory contents.
It will be responsible for updating the context when the contents of
the directory have changed, so it makes sense to have it do the
initial scan as well.

R=danrubel@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//306733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36785 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-29 15:26:13 +00:00
paulberry@google.com 3c32eb2434 Create a new class for managing the set of analysis roots.
This will allow the functionality of mapping analysis roots to context
folders to be tested in isolation.

R=scheglov@google.com

Review URL: https://codereview.chromium.org//305763002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36768 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 20:50:48 +00:00
scheglov@google.com e1ecc28e7f Implementation for 'analysis.updateContent' API.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//300553014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36766 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 20:44:32 +00:00
paulberry@google.com b4debf3d44 Add watch and modify/delete support to MemoryFile.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//297303010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36762 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 20:15:58 +00:00
scheglov@google.com e3a1355632 Switch to using remote analysis server instead of local.
1. Start remote server.

2. Set analysis roots.

3. Listen for and show errors.

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

Review URL: https://codereview.chromium.org//300313002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36750 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 17:42:30 +00:00
scheglov@google.com 35c177c90b Send 'notification.errors' for all non-SDK files.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//307533004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36743 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 15:50:23 +00:00
danrubel@google.com e7e559942c add server.status notification
BUG=
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//298823007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36727 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 02:25:20 +00:00
paulberry@google.com a9c1109b69 Allow physical folder resources to be watched for changes to their contents.
This functionality is just a thin wrapper over the existing Watcher
package.  A future CL will add similar functionality to in-memory
folder resources.

R=scheglov@google.com

Review URL: https://codereview.chromium.org//303503007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36714 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 22:36:20 +00:00
scheglov@google.com 89fd27a218 Tests for exceptional situations in MemoryResourceProvider.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//300853006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36713 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 22:17:48 +00:00
scheglov@google.com 764c6b112c Partial implementation of the 'setAnalysisRoots' API.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//300023004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36702 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 19:01:14 +00:00
scheglov@google.com a37f04c568 Resource/File/Folder interfaces and implementations for dart:io and memory.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//299403004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36613 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-25 16:17:19 +00:00
scheglov@google.com cb0999996d API and stubs for the 'analysis' domain.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//302503002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36611 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-25 15:22:36 +00:00
scheglov@google.com fd334b8c04 Use only block Dartdoc comments in analysis_server.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//297203003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36609 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-24 17:40:03 +00:00
scheglov@google.com ebd41ed304 Implementation of 'Server Domain' in dart analysis server.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//297153002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36607 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-24 17:36:06 +00:00
scheglov@google.com 555bc4ef2d New analyzer snapshot.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//294903015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36511 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-22 16:58:29 +00:00
danrubel@google.com 6da2ff1d40 improve analysis server notifications
* add context id to error notifications
* add analysis.complete notification

BUG=
R=paulberry@google.com

Review URL: https://codereview.chromium.org//299513003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36363 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-20 16:42:50 +00:00
danrubel@google.com 8b119623e2 update analysis_server_test with expected error code message arguments
BUG=
R=paulberry@google.com

Review URL: https://codereview.chromium.org//291023002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36327 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-19 21:27:55 +00:00
danrubel@google.com f21f056bba implement ByteStreamClientChannel close
BUG=
R=paulberry@google.com

Review URL: https://codereview.chromium.org//284353002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36316 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-19 19:35:01 +00:00
danrubel@google.com 88344402e1 move context id constant to AnalysisServer
BUG=
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//284103005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36263 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-16 17:44:24 +00:00
paulberry@google.com 206854b25e Fix remaining RequestDatum tests.
There were a few problems:

- An expression like "x is List<Foo>" doesn't guarantee that every
  element of x is of type Foo.  We need to check item by item.
  Similar for maps.

- InvalidParameterResponseMatcher was failing to account for the fact
  that the response gets wrapped in a RequestFailure object.

- Tests weren't calling setUp().

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//289003003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36237 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-15 20:03:53 +00:00
danrubel@google.com 03aaf34742 add RequestDatum tests and fix some situations
BUG=
R=paulberry@google.com

Review URL: https://codereview.chromium.org//281373002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36217 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-15 11:55:26 +00:00
danrubel@google.com c263b483a7 allow client to specify any combination of add/modified/removed
BUG=
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//288013003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36216 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-15 11:49:21 +00:00
scheglov@google.com 8efee14586 Add a top-level typed_mock package.
R=brianwilkerson@google.com, danrubel@google.com
BUG=

Review URL: https://codereview.chromium.org//281943002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36170 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-14 15:36:18 +00:00
paulberry@google.com 839e807406 Leave "error" key out of response JSON when there is no error.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//282993002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36169 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-14 15:04:31 +00:00
danrubel@google.com a08555d604 new ByteStreamClientChannel
BUG=dartbug.com/18632
R=paulberry@google.com

Review URL: https://codereview.chromium.org//276113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36059 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-12 20:17:57 +00:00
scheglov@google.com 5e718a35d0 verifyNoMoreInteractions() and verifyZeroInteractions()
R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//250813003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35441 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 19:18:28 +00:00
scheglov@google.com d0763d1997 verify() for mocks
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//257783005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35428 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 16:14:18 +00:00
scheglov@google.com c846bdd7c6 Restore thenReturnList().
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//251733002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35423 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 14:05:25 +00:00
scheglov@google.com 7166546aaa Argument matchers for mocks.
R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//255503005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35415 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 23:49:37 +00:00
scheglov@google.com 1544c07521 Typed mocks library.
R=danrubel@google.com, brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org//252463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35399 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 20:22:42 +00:00
paulberry@google.com 1c873d4a38 Use @MirrorsUsed to prevent analysis server tests from slowing down in dart2js.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//254533004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35396 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 20:11:26 +00:00
paulberry@google.com 9271ac7a8f Rework some analysis server tests using mocks.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//252373003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35374 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 15:05:11 +00:00
paulberry@google.com 5d44255126 Trigger analysis when context.applyChanges request is received.
With this change, the analysis server is now capable of analyzing a
source file and responding with error notifications.

R=jwren@google.com

Review URL: https://codereview.chromium.org//246013007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35373 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 14:58:15 +00:00
paulberry@google.com 22ee284c47 Serialize AnalysisErrors to JSON in the analysis server.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//247893004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35329 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 20:35:43 +00:00
paulberry@google.com 2424320373 Don't make assumptions about source encoding in analysis server tests (TBR).
On Windows, the encoding of an absolute path like "/foo.dart" contains
a drive letter (e.g. "102file:///e:/foo.dart"); on Mac and Linux it
doesn't.  Call ".encoding" from the test so that we don't depend on
the specific file name encoding in use.

As a side benefit, this makes the test independent of bug 18379.

Review URL: https://codereview.chromium.org//247143009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35327 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 20:02:18 +00:00