Index: tests/lib/mirrors/abstract_class_test.dart |
diff --git a/tests/lib/mirrors/abstract_class_test.dart b/tests/lib/mirrors/abstract_class_test.dart |
index e661d543091529e357b88f49486f8ace93822efb..30f3c278e94e84e425439d22eaeeef8c3f85c2ba 100644 |
--- a/tests/lib/mirrors/abstract_class_test.dart |
+++ b/tests/lib/mirrors/abstract_class_test.dart |
@@ -19,7 +19,6 @@ void main() { |
abstract class Foo { |
foo(); |
} |
- |
class Bar extends Foo { |
foo() {} |
} |
@@ -31,6 +30,7 @@ testSimple() { |
Expect.isFalse(reflect(new Bar()).type.isAbstract); |
} |
+ |
void baz() {} |
testFunctionType() { |
@@ -40,7 +40,6 @@ testFunctionType() { |
abstract class FunctionFoo implements Function { |
call(); |
} |
- |
class FunctionBar extends FunctionFoo { |
call() {} |
} |
@@ -55,7 +54,6 @@ testFakeFunction() { |
abstract class GenericFoo<T> { |
T genericFoo(); |
} |
- |
class GenericBar<T> extends GenericFoo<T> { |
T genericFoo() {} |
} |
@@ -69,18 +67,16 @@ testGeneric() { |
Expect.isFalse(reflect(new GenericBar<int>()).type.isAbstract); |
} |
-class S {} |
+class S {} |
abstract class M { |
mixinFoo(); |
} |
- |
-abstract class MA extends S with M {} |
- |
+abstract class MA extends S with M { |
+} |
class SubMA extends MA { |
mixinFoo() {} |
} |
- |
class ConcreteMA extends S with M { |
mixinFoo() {} |
} |
@@ -88,15 +84,12 @@ class ConcreteMA extends S with M { |
class M2 { |
mixin2Foo() {} |
} |
- |
abstract class MA2 extends S with M2 { |
mixinBar(); |
} |
- |
class SubMA2 extends MA2 { |
mixinBar() {} |
} |
- |
class ConcreteMA2 extends S with M2 { |
mixin2Foo() {} |
} |
@@ -104,76 +97,73 @@ class ConcreteMA2 extends S with M2 { |
testAnonMixinApplication() { |
// Application is abstract. |
{ |
- // Mixin is abstract. |
- Expect.isFalse(reflectClass(SubMA).isAbstract); |
- Expect.isTrue(reflectClass(SubMA).superclass.isAbstract); |
- Expect.isFalse(reflectClass(SubMA).superclass.superclass.isAbstract); |
- Expect.isTrue(reflectClass(MA).isAbstract); |
- Expect.isFalse(reflectClass(MA).superclass.isAbstract); |
- |
- // Mixin is concrete. |
- Expect.isFalse(reflectClass(SubMA2).isAbstract); |
- Expect.isTrue(reflectClass(SubMA2).superclass.isAbstract); |
- Expect.isFalse(reflectClass(SubMA2).superclass.superclass.isAbstract); |
- Expect.isTrue(reflectClass(MA2).isAbstract); |
- Expect.isFalse(reflectClass(MA2).superclass.isAbstract); |
+ // Mixin is abstract. |
+ Expect.isFalse(reflectClass(SubMA).isAbstract); |
+ Expect.isTrue(reflectClass(SubMA).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(SubMA).superclass.superclass.isAbstract); |
+ Expect.isTrue(reflectClass(MA).isAbstract); |
+ Expect.isFalse(reflectClass(MA).superclass.isAbstract); |
+ |
+ // Mixin is concrete. |
+ Expect.isFalse(reflectClass(SubMA2).isAbstract); |
+ Expect.isTrue(reflectClass(SubMA2).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(SubMA2).superclass.superclass.isAbstract); |
+ Expect.isTrue(reflectClass(MA2).isAbstract); |
+ Expect.isFalse(reflectClass(MA2).superclass.isAbstract); |
} |
// Application is concrete. |
{ |
- // Mixin is abstract. |
- Expect.isFalse(reflectClass(ConcreteMA).isAbstract); |
- Expect.isFalse(reflectClass(ConcreteMA).superclass.isAbstract); |
- Expect.isFalse(reflectClass(ConcreteMA).superclass.superclass.isAbstract); |
- |
- // Mixin is concrete. |
- Expect.isFalse(reflectClass(ConcreteMA2).isAbstract); |
- Expect.isFalse(reflectClass(ConcreteMA2).superclass.isAbstract); |
- Expect.isFalse(reflectClass(ConcreteMA2).superclass.superclass.isAbstract); |
+ // Mixin is abstract. |
+ Expect.isFalse(reflectClass(ConcreteMA).isAbstract); |
+ Expect.isFalse(reflectClass(ConcreteMA).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(ConcreteMA).superclass.superclass.isAbstract); |
+ |
+ // Mixin is concrete. |
+ Expect.isFalse(reflectClass(ConcreteMA2).isAbstract); |
+ Expect.isFalse(reflectClass(ConcreteMA2).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(ConcreteMA2).superclass.superclass.isAbstract); |
} |
} |
abstract class NamedMA = S with M; |
- |
class SubNamedMA extends NamedMA { |
mixinFoo() {} |
} |
class ConcreteNamedMA = S with M; //# 00: static type warning |
abstract class NamedMA2 = S with M2; |
- |
class SubNamedMA2 extends NamedMA2 { |
mixinFoo() {} |
} |
- |
class ConcreteNamedMA2 = S with M2; |
testNamedMixinApplication() { |
// Application is abstract. |
{ |
- // Mixin is abstract. |
- Expect.isFalse(reflectClass(SubNamedMA).isAbstract); |
- Expect.isTrue(reflectClass(SubNamedMA).superclass.isAbstract); |
- Expect.isFalse(reflectClass(SubNamedMA).superclass.superclass.isAbstract); |
- Expect.isTrue(reflectClass(NamedMA).isAbstract); |
- Expect.isFalse(reflectClass(NamedMA).superclass.isAbstract); |
- |
- // Mixin is concrete. |
- Expect.isFalse(reflectClass(SubNamedMA2).isAbstract); |
- Expect.isTrue(reflectClass(SubNamedMA2).superclass.isAbstract); |
- Expect.isFalse(reflectClass(SubNamedMA2).superclass.superclass.isAbstract); |
- Expect.isTrue(reflectClass(NamedMA2).isAbstract); |
- Expect.isFalse(reflectClass(NamedMA2).superclass.isAbstract); |
+ // Mixin is abstract. |
+ Expect.isFalse(reflectClass(SubNamedMA).isAbstract); |
+ Expect.isTrue(reflectClass(SubNamedMA).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(SubNamedMA).superclass.superclass.isAbstract); |
+ Expect.isTrue(reflectClass(NamedMA).isAbstract); |
+ Expect.isFalse(reflectClass(NamedMA).superclass.isAbstract); |
+ |
+ // Mixin is concrete. |
+ Expect.isFalse(reflectClass(SubNamedMA2).isAbstract); |
+ Expect.isTrue(reflectClass(SubNamedMA2).superclass.isAbstract); |
+ Expect.isFalse(reflectClass(SubNamedMA2).superclass.superclass.isAbstract); |
+ Expect.isTrue(reflectClass(NamedMA2).isAbstract); |
+ Expect.isFalse(reflectClass(NamedMA2).superclass.isAbstract); |
} |
// Application is concrete. |
{ |
- // Mixin is abstract. |
+ // Mixin is abstract. |
Expect.isFalse(reflectClass(ConcreteNamedMA).isAbstract); //# 00: ok |
Expect.isFalse(reflectClass(ConcreteNamedMA).superclass.isAbstract); //# 00: ok |
- // Mixin is concrete. |
- Expect.isFalse(reflectClass(ConcreteNamedMA2).isAbstract); |
- Expect.isFalse(reflectClass(ConcreteNamedMA2).superclass.isAbstract); |
+ // Mixin is concrete. |
+ Expect.isFalse(reflectClass(ConcreteNamedMA2).isAbstract); |
+ Expect.isFalse(reflectClass(ConcreteNamedMA2).superclass.isAbstract); |
} |
} |