| Index: compiler/javatests/com/google/dart/compiler/resolver/ResolverTest.java
|
| diff --git a/compiler/javatests/com/google/dart/compiler/resolver/ResolverTest.java b/compiler/javatests/com/google/dart/compiler/resolver/ResolverTest.java
|
| index de744fc88f17e4308d54a5d3fd4784a23bfff152..800cd84ffd8482ac03ae74b6d71af0bd5260fd3b 100644
|
| --- a/compiler/javatests/com/google/dart/compiler/resolver/ResolverTest.java
|
| +++ b/compiler/javatests/com/google/dart/compiler/resolver/ResolverTest.java
|
| @@ -344,6 +344,35 @@ public class ResolverTest extends ResolverTestCase {
|
| "}"));
|
| }
|
|
|
| + public void testFactoryTypeArgsNew() {
|
| + // Invoke constructor in factory method with type args
|
| + resolveAndTest(Joiner.on("\n").join(
|
| + "class Object {}",
|
| + "interface int {}",
|
| + "interface A<T> factory B {",
|
| + " A<T>();",
|
| + "}",
|
| + "class C<T> implements A<T> {}",
|
| + "class B {",
|
| + " factory A<T>() { return new C<T>();}",
|
| + "}"));
|
| + }
|
| +
|
| + public void testFactoryBadTypeArgsNew() {
|
| + // Invoke constructor in factory method with (wrong) type args
|
| + resolveAndTest(Joiner.on("\n").join(
|
| + "class Object {}",
|
| + "interface int {}",
|
| + "interface A<T> factory B {",
|
| + " A<T>();",
|
| + "}",
|
| + "class C<T> implements A<T> {}",
|
| + "class B {",
|
| + " factory A<T>() { return new C<K>();}",
|
| + "}"),
|
| + ResolverErrorCode.NO_SUCH_TYPE);
|
| + }
|
| +
|
| public void disabledBadFactoryTypeArgs1() {
|
| // Type arguments don't match
|
| resolveAndTest(Joiner.on("\n").join(
|
|
|