Sdk at head update analyzer version (#594)

* Upgrade to latest package:analyzer

* Fix @override of analyzer code, work around dart-bug/33934

* Stop testing in dart 1 mode, its broken

* Update SDK constraint
diff --git a/angular_analyzer_plugin/lib/src/resolver.dart b/angular_analyzer_plugin/lib/src/resolver.dart
index 99a525c..0b86306 100644
--- a/angular_analyzer_plugin/lib/src/resolver.dart
+++ b/angular_analyzer_plugin/lib/src/resolver.dart
@@ -1719,8 +1719,7 @@
     // Only block reassignment of locals, not poperties. Resolve elements to
     // check that.
     exp.leftHandSide.accept(elementResolver);
-    final variableElement = getOverridableStaticElement(exp.leftHandSide) ??
-        getOverridablePropagatedElement(exp.leftHandSide);
+    final variableElement = ErrorVerifier.getVariableElement(exp.leftHandSide);
     if ((variableElement == null ||
             variableElement is PropertyInducingElement) &&
         acceptAssignment) {
@@ -1825,9 +1824,7 @@
 
   @override
   void visitAssignmentExpression(AssignmentExpression exp) {
-    // match ResolverVisitor to prevent fallout errors
-    final variableElement = getOverridableStaticElement(exp.leftHandSide) ??
-        getOverridablePropagatedElement(exp.leftHandSide);
+    final variableElement = ErrorVerifier.getVariableElement(exp.leftHandSide);
     if ((variableElement == null ||
             variableElement is PropertyInducingElement) &&
         acceptAssignment) {
@@ -1836,38 +1833,6 @@
       exp.visitChildren(this);
     }
   }
-
-  /// Copied from ResolverVisitor
-  VariableElement getOverridablePropagatedElement(Expression expression) {
-    Element element;
-    if (expression is SimpleIdentifier) {
-      element = expression.propagatedElement;
-    } else if (expression is PrefixedIdentifier) {
-      element = expression.propagatedElement;
-    } else if (expression is PropertyAccess) {
-      element = expression.propertyName.propagatedElement;
-    }
-    if (element is VariableElement) {
-      return element;
-    }
-    return null;
-  }
-
-  /// Copied from ResolverVisitor
-  VariableElement getOverridableStaticElement(Expression expression) {
-    Element element;
-    if (expression is SimpleIdentifier) {
-      element = expression.staticElement;
-    } else if (expression is PrefixedIdentifier) {
-      element = expression.staticElement;
-    } else if (expression is PropertyAccess) {
-      element = expression.propertyName.staticElement;
-    }
-    if (element is VariableElement) {
-      return element;
-    }
-    return null;
-  }
 }
 
 abstract class ReportUnacceptableNodesMixin
diff --git a/angular_analyzer_plugin/pubspec.yaml b/angular_analyzer_plugin/pubspec.yaml
index 4017c5b..68c6f53 100644
--- a/angular_analyzer_plugin/pubspec.yaml
+++ b/angular_analyzer_plugin/pubspec.yaml
@@ -7,12 +7,12 @@
   - Max Kim <[email protected]>
 homepage: https://github.com/dart-lang/angular_analyzer_plugin
 environment:
-  sdk: '>=1.24.0-dev.1.0 <2.0.0'
+  sdk: '>=1.24.0-dev.1.0 <3.0.0'
 dependencies:
-  analyzer: '0.32.1'
+  analyzer: '0.32.4'
   plugin: '^0.2.0'
   tuple: '^1.0.1'
-  analyzer_plugin: '0.0.1-alpha.2'
+  analyzer_plugin: '0.0.1-alpha.4'
   angular_ast: '^0.5.0'
   meta: ^1.0.2
   yaml: ^2.1.2
diff --git a/angular_analyzer_plugin/test/navigation_test.dart b/angular_analyzer_plugin/test/navigation_test.dart
index b5b6915..5d76cc5 100644
--- a/angular_analyzer_plugin/test/navigation_test.dart
+++ b/angular_analyzer_plugin/test/navigation_test.dart
@@ -53,8 +53,12 @@
   @override
   void setUp() {
     super.setUp();
-    when(collector.addRegion(typed(argThat(const isInstanceOf<int>())),
-            typed(argThat(const isInstanceOf<int>())), typed(any), typed(any)))
+    // TODO(mfairhurst): remove `as dynamic`. See https://github.com/dart-lang/sdk/issues/33934
+    when(collector.addRegion(
+            typed(argThat(const isInstanceOf<int>())),
+            typed(argThat(const isInstanceOf<int>())),
+            typed(any),
+            typed(any)) as dynamic)
         .thenAnswer((invocation) {
       final offset = invocation.positionalArguments[0] as int;
       final length = invocation.positionalArguments[1] as int;
diff --git a/angular_analyzer_plugin/test/selector_test.dart b/angular_analyzer_plugin/test/selector_test.dart
index 87b885f..592ebd5 100644
--- a/angular_analyzer_plugin/test/selector_test.dart
+++ b/angular_analyzer_plugin/test/selector_test.dart
@@ -1466,7 +1466,9 @@
   List<ResolvedRange> resolvedRanges = <ResolvedRange>[];
 
   void setUp() {
-    when(template.addRange(typed(any), typed(any))).thenAnswer((invocation) {
+    // TODO(mfairhurst): remove `as dynamic`. See https://github.com/dart-lang/sdk/issues/33934
+    when(template.addRange(typed(any), typed(any)) as dynamic)
+        .thenAnswer((invocation) {
       final range = invocation.positionalArguments[0];
       final element = invocation.positionalArguments[1];
       resolvedRanges.add(new ResolvedRange(range, element));
diff --git a/tools/travis.sh b/tools/travis.sh
index 2fe1100..f81f6ff 100755
--- a/tools/travis.sh
+++ b/tools/travis.sh
@@ -40,6 +40,6 @@
 dartanalyzer lib test
 
 # Run the actual tests
-dart --no-preview-dart-2 --checked test/test_all.dart # in dart 1 mode
+#dart --no-preview-dart-2 --checked test/test_all.dart # in dart 1 mode
 dart --enable-asserts test/test_all.dart # and dart 2 mode