Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(970)

Unified Diff: pkg/analyzer/test/src/task/strong/checker_test.dart

Issue 1430953004: Check field overrides (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer/test/src/task/strong/checker_test.dart
diff --git a/pkg/analyzer/test/src/task/strong/checker_test.dart b/pkg/analyzer/test/src/task/strong/checker_test.dart
index b11e7926d6e15e1bf6777a36e8f932b08b6b6328..8570d66b3b37f7cd6be081c483c3565a4cdc902d 100644
--- a/pkg/analyzer/test/src/task/strong/checker_test.dart
+++ b/pkg/analyzer/test/src/task/strong/checker_test.dart
@@ -1132,6 +1132,13 @@ void main() {
}
class Child extends Base {
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/A f1; // invalid for getter
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/C f2; // invalid for setter
+ /*severe:InvalidFieldOverride*/var f3;
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride,severe:InvalidMethodOverride*/dynamic f4;
+ }
+
+ class Child2 implements Base {
/*severe:InvalidMethodOverride*/A f1; // invalid for getter
/*severe:InvalidMethodOverride*/C f2; // invalid for setter
var f3;
@@ -1176,6 +1183,13 @@ void main() {
}
class Child extends Base {
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/A get f1 => null;
+ /*severe:InvalidFieldOverride*/C get f2 => null;
+ /*severe:InvalidFieldOverride*/get f3 => null;
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/dynamic get f4 => null;
+ }
+
+ class Child2 implements Base {
/*severe:InvalidMethodOverride*/A get f1 => null;
C get f2 => null;
get f3 => null;
@@ -1223,6 +1237,20 @@ void main() {
}
class Child extends Base {
+ /*severe:InvalidFieldOverride*/B get f1 => null;
+ /*severe:InvalidFieldOverride*/B get f2 => null;
+ /*severe:InvalidFieldOverride*/B get f3 => null;
+ /*severe:InvalidFieldOverride*/B get f4 => null;
+ /*severe:InvalidFieldOverride*/B get f5 => null;
+
+ /*severe:InvalidFieldOverride*/void set f1(A value) {}
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/void set f2(C value) {}
+ /*severe:InvalidFieldOverride*/void set f3(value) {}
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/void set f4(dynamic value) {}
+ /*severe:InvalidFieldOverride*/set f5(B value) {}
+ }
+
+ class Child2 implements Base {
B get f1 => null;
B get f2 => null;
B get f3 => null;
@@ -1508,18 +1536,34 @@ void main() {
}
class T1 extends Base {
- /*severe:InvalidMethodOverride*/B get f => null;
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/B get f => null;
}
class T2 extends Base {
- /*severe:InvalidMethodOverride*/set f(B b) => null;
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/set f(B b) => null;
}
class T3 extends Base {
- /*severe:InvalidMethodOverride*/final B f;
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride*/final B f;
}
class T4 extends Base {
// two: one for the getter one for the setter.
+ /*severe:InvalidFieldOverride,severe:InvalidMethodOverride,severe:InvalidMethodOverride*/B f;
+ }
+
+ class T5 implements Base {
+ /*severe:InvalidMethodOverride*/B get f => null;
+ }
+
+ class T6 implements Base {
+ /*severe:InvalidMethodOverride*/set f(B b) => null;
+ }
+
+ class T7 implements Base {
+ /*severe:InvalidMethodOverride*/final B f;
+ }
+ class T8 implements Base {
+ // two: one for the getter one for the setter.
/*severe:InvalidMethodOverride,severe:InvalidMethodOverride*/B f;
}
'''
@@ -1546,12 +1590,14 @@ void main() {
class Grandparent {
m(A a) {}
+ int x;
}
class Parent extends Grandparent {
}
class Test extends Parent {
/*severe:InvalidMethodOverride*/m(B a) {}
+ /*severe:InvalidFieldOverride*/int x;
}
'''
});
@@ -1600,17 +1646,20 @@ void main() {
class Base {
m(A a) {}
+ int x;
}
class M1 {
m(B a) {}
}
- class M2 {}
+ class M2 {
+ int x;
+ }
class T1 extends Base with /*severe:InvalidMethodOverride*/M1 {}
- class T2 extends Base with /*severe:InvalidMethodOverride*/M1, M2 {}
- class T3 extends Base with M2, /*severe:InvalidMethodOverride*/M1 {}
+ class T2 extends Base with /*severe:InvalidMethodOverride*/M1, /*severe:InvalidFieldOverride*/M2 {}
+ class T3 extends Base with /*severe:InvalidFieldOverride*/M2, /*severe:InvalidMethodOverride*/M1 {}
'''
});
@@ -1624,13 +1673,15 @@ void main() {
class M1 {
m(B a) {}
+ int x;
}
class M2 {
m(A a) {}
+ int x;
}
- class T1 extends Base with M1, /*severe:InvalidMethodOverride*/M2 {}
+ class T1 extends Base with M1, /*severe:InvalidMethodOverride,severe:InvalidFieldOverride*/M2 {}
'''
});

Powered by Google App Engine
This is Rietveld 408576698