103 B b = new B();
104 b.foo(null);
105 }
106
107 @Test
108 public void test02() {
109 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
110 sa.addMethod(findMethod(StaticAnalysisTests.class, "test02Entry"));
111 sa.finish();
112
113 assertEquals(sa.getResults().getAllInstantiatedTypes(), t(A.class), t(B.class), t(Data.class));
114 assertEquals(f(sa, Data.class, "f"));
115 assertEquals(m(sa, A.class, "foo").getFormalParameters()[0], t(A.class), t(B.class));
116 assertEquals(m(sa, A.class, "foo").getFormalParameters()[1], t(Data.class));
117 assertEquals(m(sa, A.class, "foo").getFormalReturn(), t(Data.class));
118 assertEquals(m(sa, B.class, "foo").getFormalParameters()[0], t(B.class));
119 assertEquals(m(sa, B.class, "foo").getFormalParameters()[1]);
120 assertEquals(m(sa, B.class, "foo").getFormalReturn(), t(Data.class));
121 }
122
123 @SuppressWarnings("deprecation")
124 static void test03Entry() {
125 Data data = new Data();
126 data.f = new Integer(42);
127
128 A a = new A();
129 a.foo(new Data());
130
131 B b = new B();
132 b.foo(null);
133 }
134
135 @Test
136 public void test03() {
137 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
138 sa.addMethod(findMethod(StaticAnalysisTests.class, "test03Entry"));
139 sa.finish();
140
141 assertEquals(sa.getResults().getAllInstantiatedTypes(), t(A.class), t(B.class), t(Data.class), t(Integer.class));
142 assertEquals(f(sa, Data.class, "f"), t(Integer.class));
143 assertEquals(m(sa, A.class, "foo").getFormalParameters()[0], t(A.class), t(B.class));
144 assertEquals(m(sa, A.class, "foo").getFormalParameters()[1], t(Data.class));
145 assertEquals(m(sa, A.class, "foo").getFormalReturn(), t(Data.class));
146 assertEquals(m(sa, B.class, "foo").getFormalParameters()[0], t(B.class));
147 assertEquals(m(sa, B.class, "foo").getFormalParameters()[1]);
148 assertEquals(m(sa, B.class, "foo").getFormalReturn(), t(Data.class), t(Integer.class));
149 }
150
151 @SuppressWarnings("deprecation")
152 static void test04Entry() {
153 Data data = null;
154 for (int i = 0; i < 2; i++) {
155 if (i == 0) {
156 data = new Data();
157 } else if (i == 1) {
158 data.f = new Integer(42);
159 }
160 }
161
162 A a = new A();
163 a.foo(data);
164 }
165
166 @Test
167 public void test04() {
168 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
169 sa.addMethod(findMethod(StaticAnalysisTests.class, "test04Entry"));
170 sa.finish();
171
|
103 B b = new B();
104 b.foo(null);
105 }
106
107 @Test
108 public void test02() {
109 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
110 sa.addMethod(findMethod(StaticAnalysisTests.class, "test02Entry"));
111 sa.finish();
112
113 assertEquals(sa.getResults().getAllInstantiatedTypes(), t(A.class), t(B.class), t(Data.class));
114 assertEquals(f(sa, Data.class, "f"));
115 assertEquals(m(sa, A.class, "foo").getFormalParameters()[0], t(A.class), t(B.class));
116 assertEquals(m(sa, A.class, "foo").getFormalParameters()[1], t(Data.class));
117 assertEquals(m(sa, A.class, "foo").getFormalReturn(), t(Data.class));
118 assertEquals(m(sa, B.class, "foo").getFormalParameters()[0], t(B.class));
119 assertEquals(m(sa, B.class, "foo").getFormalParameters()[1]);
120 assertEquals(m(sa, B.class, "foo").getFormalReturn(), t(Data.class));
121 }
122
123 @SuppressWarnings({"deprecation", "unused"})
124 static void test03Entry() {
125 Data data = new Data();
126 data.f = new Integer(42);
127
128 A a = new A();
129 a.foo(new Data());
130
131 B b = new B();
132 b.foo(null);
133 }
134
135 @Test
136 public void test03() {
137 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
138 sa.addMethod(findMethod(StaticAnalysisTests.class, "test03Entry"));
139 sa.finish();
140
141 assertEquals(sa.getResults().getAllInstantiatedTypes(), t(A.class), t(B.class), t(Data.class), t(Integer.class));
142 assertEquals(f(sa, Data.class, "f"), t(Integer.class));
143 assertEquals(m(sa, A.class, "foo").getFormalParameters()[0], t(A.class), t(B.class));
144 assertEquals(m(sa, A.class, "foo").getFormalParameters()[1], t(Data.class));
145 assertEquals(m(sa, A.class, "foo").getFormalReturn(), t(Data.class));
146 assertEquals(m(sa, B.class, "foo").getFormalParameters()[0], t(B.class));
147 assertEquals(m(sa, B.class, "foo").getFormalParameters()[1]);
148 assertEquals(m(sa, B.class, "foo").getFormalReturn(), t(Data.class), t(Integer.class));
149 }
150
151 @SuppressWarnings({"deprecation", "unused"})
152 static void test04Entry() {
153 Data data = null;
154 for (int i = 0; i < 2; i++) {
155 if (i == 0) {
156 data = new Data();
157 } else if (i == 1) {
158 data.f = new Integer(42);
159 }
160 }
161
162 A a = new A();
163 a.foo(data);
164 }
165
166 @Test
167 public void test04() {
168 StaticAnalysis sa = new StaticAnalysis(metaAccess, stampProvider);
169 sa.addMethod(findMethod(StaticAnalysisTests.class, "test04Entry"));
170 sa.finish();
171
|