| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013, the Dart project authors. | 2 * Copyright (c) 2013, the Dart project authors. |
| 3 * | 3 * |
| 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u
se this file except | 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u
se this file except |
| 5 * in compliance with the License. You may obtain a copy of the License at | 5 * in compliance with the License. You may obtain a copy of the License at |
| 6 * | 6 * |
| 7 * http://www.eclipse.org/legal/epl-v10.html | 7 * http://www.eclipse.org/legal/epl-v10.html |
| 8 * | 8 * |
| 9 * Unless required by applicable law or agreed to in writing, software distribut
ed under the License | 9 * Unless required by applicable law or agreed to in writing, software distribut
ed under the License |
| 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K
IND, either express | 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K
IND, either express |
| (...skipping 711 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 722 "import 'dart:async';", | 722 "import 'dart:async';", |
| 723 "Future f = null;", | 723 "Future f = null;", |
| 724 "Stream s;")); | 724 "Stream s;")); |
| 725 addSource("/lib.dart", createSource(// | 725 addSource("/lib.dart", createSource(// |
| 726 "library lib;", | 726 "library lib;", |
| 727 "class Future {}")); | 727 "class Future {}")); |
| 728 resolve(source); | 728 resolve(source); |
| 729 assertErrors(source, StaticWarningCode.CONFLICTING_DART_IMPORT); | 729 assertErrors(source, StaticWarningCode.CONFLICTING_DART_IMPORT); |
| 730 } | 730 } |
| 731 | 731 |
| 732 public void test_conflictingInstanceGetterAndSuperclassMember_direct_field() t
hrows Exception { | 732 public void test_conflictingInstanceGetterAndSuperclassMember_declField_direct
_setter() |
| 733 throws Exception { |
| 733 Source source = addSource(createSource(// | 734 Source source = addSource(createSource(// |
| 734 "class A {", | 735 "class A {", |
| 735 " static int v;", | 736 " static set v(x) {}", |
| 736 "}", | 737 "}", |
| 737 "class B extends A {", | 738 "class B extends A {", |
| 738 " get v => 0;", | 739 " var v;", |
| 739 "}")); | 740 "}")); |
| 740 resolve(source); | 741 resolve(source); |
| 741 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 742 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 742 verify(source); | 743 verify(source); |
| 743 } | 744 } |
| 744 | 745 |
| 745 public void test_conflictingInstanceGetterAndSuperclassMember_direct_getter()
throws Exception { | 746 public void test_conflictingInstanceGetterAndSuperclassMember_declGetter_direc
t_getter() |
| 747 throws Exception { |
| 746 Source source = addSource(createSource(// | 748 Source source = addSource(createSource(// |
| 747 "class A {", | 749 "class A {", |
| 748 " static get v => 0;", | 750 " static get v => 0;", |
| 749 "}", | 751 "}", |
| 750 "class B extends A {", | 752 "class B extends A {", |
| 751 " get v => 0;", | 753 " get v => 0;", |
| 752 "}")); | 754 "}")); |
| 753 resolve(source); | 755 resolve(source); |
| 754 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 756 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 755 verify(source); | 757 verify(source); |
| 756 } | 758 } |
| 757 | 759 |
| 758 public void test_conflictingInstanceGetterAndSuperclassMember_direct_method()
throws Exception { | 760 public void test_conflictingInstanceGetterAndSuperclassMember_declGetter_direc
t_method() |
| 761 throws Exception { |
| 759 Source source = addSource(createSource(// | 762 Source source = addSource(createSource(// |
| 760 "class A {", | 763 "class A {", |
| 761 " static v() {}", | 764 " static v() {}", |
| 762 "}", | 765 "}", |
| 763 "class B extends A {", | 766 "class B extends A {", |
| 764 " get v => 0;", | 767 " get v => 0;", |
| 765 "}")); | 768 "}")); |
| 766 resolve(source); | 769 resolve(source); |
| 767 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 770 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 768 verify(source); | 771 verify(source); |
| 769 } | 772 } |
| 770 | 773 |
| 771 public void test_conflictingInstanceGetterAndSuperclassMember_direct_setter()
throws Exception { | 774 public void test_conflictingInstanceGetterAndSuperclassMember_declGetter_direc
t_setter() |
| 775 throws Exception { |
| 772 Source source = addSource(createSource(// | 776 Source source = addSource(createSource(// |
| 773 "class A {", | 777 "class A {", |
| 774 " static set v(x) {}", | 778 " static set v(x) {}", |
| 775 "}", | 779 "}", |
| 776 "class B extends A {", | 780 "class B extends A {", |
| 777 " get v => 0;", | 781 " get v => 0;", |
| 778 "}")); | 782 "}")); |
| 779 resolve(source); | 783 resolve(source); |
| 780 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 784 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 781 verify(source); | 785 verify(source); |
| 782 } | 786 } |
| 783 | 787 |
| 784 public void test_conflictingInstanceGetterAndSuperclassMember_indirect() throw
s Exception { | 788 public void test_conflictingInstanceGetterAndSuperclassMember_declGetter_indir
ect() |
| 789 throws Exception { |
| 785 Source source = addSource(createSource(// | 790 Source source = addSource(createSource(// |
| 786 "class A {", | 791 "class A {", |
| 787 " static int v;", | 792 " static int v;", |
| 788 "}", | 793 "}", |
| 789 "class B extends A {}", | 794 "class B extends A {}", |
| 790 "class C extends B {", | 795 "class C extends B {", |
| 791 " get v => 0;", | 796 " get v => 0;", |
| 792 "}")); | 797 "}")); |
| 793 resolve(source); | 798 resolve(source); |
| 794 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 799 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 795 verify(source); | 800 verify(source); |
| 796 } | 801 } |
| 797 | 802 |
| 798 public void test_conflictingInstanceGetterAndSuperclassMember_mixin() throws E
xception { | 803 public void test_conflictingInstanceGetterAndSuperclassMember_declGetter_mixin
() throws Exception { |
| 799 Source source = addSource(createSource(// | 804 Source source = addSource(createSource(// |
| 800 "class M {", | 805 "class M {", |
| 801 " static int v;", | 806 " static int v;", |
| 802 "}", | 807 "}", |
| 803 "class B extends Object with M {", | 808 "class B extends Object with M {", |
| 804 " get v => 0;", | 809 " get v => 0;", |
| 805 "}")); | 810 "}")); |
| 806 resolve(source); | 811 resolve(source); |
| 807 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); | 812 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 808 verify(source); | 813 verify(source); |
| 809 } | 814 } |
| 810 | 815 |
| 816 public void test_conflictingInstanceGetterAndSuperclassMember_direct_field() t
hrows Exception { |
| 817 Source source = addSource(createSource(// |
| 818 "class A {", |
| 819 " static int v;", |
| 820 "}", |
| 821 "class B extends A {", |
| 822 " get v => 0;", |
| 823 "}")); |
| 824 resolve(source); |
| 825 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_GETTER_AND_SUPER
CLASS_MEMBER); |
| 826 verify(source); |
| 827 } |
| 828 |
| 829 public void test_conflictingInstanceMethodSetter_sameClass() throws Exception
{ |
| 830 Source source = addSource(createSource(// |
| 831 "class A {", |
| 832 " foo() {}", |
| 833 " set foo(a) {}", |
| 834 "}")); |
| 835 resolve(source); |
| 836 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_METHOD_SETTER); |
| 837 verify(source); |
| 838 } |
| 839 |
| 840 public void test_conflictingInstanceMethodSetter_setterInInterface() throws Ex
ception { |
| 841 Source source = addSource(createSource(// |
| 842 "abstract class A {", |
| 843 " set foo(a);", |
| 844 "}", |
| 845 "abstract class B implements A {", |
| 846 " foo() {}", |
| 847 "}")); |
| 848 resolve(source); |
| 849 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_METHOD_SETTER); |
| 850 verify(source); |
| 851 } |
| 852 |
| 853 public void test_conflictingInstanceMethodSetter_setterInSuper() throws Except
ion { |
| 854 Source source = addSource(createSource(// |
| 855 "class A {", |
| 856 " set foo(a) {}", |
| 857 "}", |
| 858 "class B extends A {", |
| 859 " foo() {}", |
| 860 "}")); |
| 861 resolve(source); |
| 862 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_METHOD_SETTER); |
| 863 verify(source); |
| 864 } |
| 865 |
| 811 public void test_conflictingInstanceSetterAndSuperclassMember() throws Excepti
on { | 866 public void test_conflictingInstanceSetterAndSuperclassMember() throws Excepti
on { |
| 812 Source source = addSource(createSource(// | 867 Source source = addSource(createSource(// |
| 813 "class A {", | 868 "class A {", |
| 814 " static int v;", | 869 " static int v;", |
| 815 "}", | 870 "}", |
| 816 "class B extends A {", | 871 "class B extends A {", |
| 817 " set v(x) {}", | 872 " set v(x) {}", |
| 818 "}")); | 873 "}")); |
| 819 resolve(source); | 874 resolve(source); |
| 820 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_SETTER_AND_SUPER
CLASS_MEMBER); | 875 assertErrors(source, StaticWarningCode.CONFLICTING_INSTANCE_SETTER_AND_SUPER
CLASS_MEMBER); |
| (...skipping 1599 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2420 " static set s(int i) {}", | 2475 " static set s(int i) {}", |
| 2421 "}", | 2476 "}", |
| 2422 "class C extends S {}", | 2477 "class C extends S {}", |
| 2423 "f(var p) {", | 2478 "f(var p) {", |
| 2424 " f(C.s = 1);", | 2479 " f(C.s = 1);", |
| 2425 "}")); | 2480 "}")); |
| 2426 resolve(source); | 2481 resolve(source); |
| 2427 assertErrors(source, StaticTypeWarningCode.UNDEFINED_SETTER); | 2482 assertErrors(source, StaticTypeWarningCode.UNDEFINED_SETTER); |
| 2428 } | 2483 } |
| 2429 } | 2484 } |
| OLD | NEW |