Update ooo320-m1
[ooovba.git] / bridges / test / java_uno / equals / TestEquals.java
blobd1f2d0dc4c6d759dc415df10effa3f7ce68d920a
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: TestEquals.java,v $
10 * $Revision: 1.9 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 package test.java_uno.equals;
33 import com.sun.star.bridge.XBridge;
34 import com.sun.star.bridge.XBridgeFactory;
35 import com.sun.star.bridge.XInstanceProvider;
36 import com.sun.star.comp.helper.Bootstrap;
37 import com.sun.star.connection.Acceptor;
38 import com.sun.star.connection.XAcceptor;
39 import com.sun.star.connection.XConnection;
40 import com.sun.star.lang.XMultiComponentFactory;
41 import com.sun.star.lang.XSingleComponentFactory;
42 import com.sun.star.lib.TestBed;
43 import com.sun.star.lib.uno.typeinfo.MethodTypeInfo;
44 import com.sun.star.lib.uno.typeinfo.TypeInfo;
45 import com.sun.star.loader.XImplementationLoader;
46 import com.sun.star.uno.UnoRuntime;
47 import com.sun.star.uno.XComponentContext;
48 import com.sun.star.uno.XInterface;
49 import java.io.File;
50 import java.net.MalformedURLException;
51 import java.util.HashMap;
52 import java.util.Hashtable;
54 // In this test scenario, the Java server (see implementation of method
55 // notifyAccepting) has a remote bridge to the Java client and a local JNI
56 // bridge to a C++ com.sun.star.test.bridges.testequals.impl service. The C++
57 // service and the Java client are also connected via a remote bridge.
59 // The Java server gets two objects (INSTANCE1, INSTANCE2), once directly from
60 // the Java client via the remote bridge (proxies test1A, test2A), and once
61 // through the C++ service via the JNI bridge (proxies test1B, test2B).
62 // Exhaustive tests on the proxies' equals and hashCode methods are done.
64 public final class TestEquals {
65 // args[0] must be a file system path to a types.rdb,
66 // args[1] must be a file system path to a services.rdb
67 public static void main(String[] args) throws Exception {
68 TestBed t = new TestBed();
69 boolean success = t.execute(
70 new Provider(t, toFileUrl(args[0]), toFileUrl(args[1])), true,
71 Client.class, 0);
72 System.out.println("success? " + success);
73 System.exit(success ? 0 : 1);
76 private static String toFileUrl(String path) throws MalformedURLException {
77 String url = new File(path).toURL().toString();
78 String prefix = "file:/";
79 if (url.startsWith(prefix)
80 && (url.length() == prefix.length()
81 || url.charAt(prefix.length()) != '/')) {
82 url = url.substring(0, prefix.length()) + "//"
83 + url.substring(prefix.length());
85 return url;
88 public static final class Client extends TestBed.Client {
89 public static void main(String[] args) {
90 new Client().execute();
93 protected boolean run(XComponentContext context) throws Throwable {
94 XTestFrame f = UnoRuntime.queryInterface(
95 XTestFrame.class, getBridge(context).getInstance("TestFrame"));
96 XAcceptor acceptor = Acceptor.create(context);
97 XBridgeFactory factory = UnoRuntime.queryInterface(
98 XBridgeFactory.class,
99 context.getServiceManager().createInstanceWithContext(
100 "com.sun.star.bridge.BridgeFactory", context));
101 System.out.println("Client, 2nd connection: Accepting...");
102 XInstanceProvider prov = new Provider();
103 f.notifyAccepting(new Done(), prov.getInstance(INSTANCE1),
104 prov.getInstance(INSTANCE2));
105 XConnection connection = acceptor.accept(CONNECTION_DESCRIPTION);
106 System.out.println("Client, 2nd connection: ...connected...");
107 XBridge bridge2 = factory.createBridge(
108 "", PROTOCOL_DESCRIPTION, connection, prov);
109 System.out.println("Client, 2nd connection: ...bridged.");
110 synchronized (lock) {
111 while (!done) {
112 lock.wait();
115 return true;
118 private static final class Provider implements XInstanceProvider {
119 public Object getInstance(String instanceName) {
120 synchronized (map) {
121 Object o = map.get(instanceName);
122 if (o == null) {
123 o = new XDerived() {};
124 map.put(instanceName, o);
126 return o;
130 private final HashMap map = new HashMap();
133 private final class Done implements XDone {
134 public void notifyDone() {
135 synchronized (lock) {
136 done = true;
137 lock.notifyAll();
142 private final Object lock = new Object();
143 private boolean done = false;
146 private static final class Provider implements XInstanceProvider {
147 public Provider(TestBed testBed, String unoTypes, String unoServices) {
148 this.testBed = testBed;
149 this.unoTypes = unoTypes;
150 this.unoServices = unoServices;
153 public Object getInstance(String instanceName) {
154 return new XTestFrame() {
155 public void notifyAccepting(
156 final XDone done, final Object object1,
157 final Object object2)
159 new Thread() {
160 public void run() {
161 try {
162 Object test1Aa = object1;
163 XBase test1Ab = UnoRuntime.queryInterface(
164 XBase.class, test1Aa);
165 XDerived test1Ac =
166 UnoRuntime.queryInterface(
167 XDerived.class, test1Aa);
168 Object test2Aa = object2;
169 XBase test2Ab = UnoRuntime.queryInterface(
170 XBase.class, test2Aa);
171 XDerived test2Ac =
172 UnoRuntime.queryInterface(
173 XDerived.class, test2Aa);
175 Hashtable params = new Hashtable();
176 params.put("UNO_TYPES", unoTypes);
177 params.put("UNO_SERVICES", unoServices);
178 XComponentContext context = Bootstrap.
179 defaultBootstrap_InitialComponentContext(
180 null, params);
181 XMultiComponentFactory factory
182 = context.getServiceManager();
183 XImplementationLoader loader =
184 UnoRuntime.queryInterface(
185 XImplementationLoader.class,
186 factory.createInstanceWithContext(
187 "com.sun.star.loader."
188 + "SharedLibrary",
189 context));
190 XSingleComponentFactory factory2 =
191 UnoRuntime.queryInterface(
192 XSingleComponentFactory.class,
193 loader.activate(
194 "com.sun.star.test.bridges."
195 + "testequals.impl",
196 "", "../lib/testequals.uno",
197 null));
198 XTestInterface test =
199 UnoRuntime.queryInterface(
200 XTestInterface.class,
201 factory2.createInstanceWithContext(
202 context));
203 // allow client to start accepting:
204 Thread.sleep(3000);
205 test.connect(
206 CONNECTION_DESCRIPTION,
207 PROTOCOL_DESCRIPTION);
209 Object test1Ba = test.get(INSTANCE1);
210 XBase test1Bb = UnoRuntime.queryInterface(
211 XBase.class, test1Ba);
212 XDerived test1Bc =
213 UnoRuntime.queryInterface(
214 XDerived.class, test1Ba);
215 Object test2Ba = test.get(INSTANCE2);
216 XBase test2Bb = UnoRuntime.queryInterface(
217 XBase.class, test2Ba);
218 XDerived test2Bc =
219 UnoRuntime.queryInterface(
220 XDerived.class, test2Ba);
222 boolean success = true;
224 success &= test(
225 "UnoRumtime.areSame(null, null)",
226 UnoRuntime.areSame(null, null));
227 success &= test(
228 "!UnoRumtime.areSame(null, test1Aa)",
229 !UnoRuntime.areSame(null, test1Aa));
230 success &= test(
231 "!UnoRumtime.areSame(null, test1Ab)",
232 !UnoRuntime.areSame(null, test1Ab));
233 success &= test(
234 "!UnoRumtime.areSame(null, test1Ac)",
235 !UnoRuntime.areSame(null, test1Ac));
236 success &= test(
237 "!UnoRumtime.areSame(null, test1Ba)",
238 !UnoRuntime.areSame(null, test1Ba));
239 success &= test(
240 "!UnoRumtime.areSame(null, test1Bb)",
241 !UnoRuntime.areSame(null, test1Bb));
242 success &= test(
243 "!UnoRumtime.areSame(null, test1Bc)",
244 !UnoRuntime.areSame(null, test1Bc));
245 success &= test(
246 "!UnoRumtime.areSame(null, test2Aa)",
247 !UnoRuntime.areSame(null, test2Aa));
248 success &= test(
249 "!UnoRumtime.areSame(null, test2Ab)",
250 !UnoRuntime.areSame(null, test2Ab));
251 success &= test(
252 "!UnoRumtime.areSame(null, test2Ac)",
253 !UnoRuntime.areSame(null, test2Ac));
254 success &= test(
255 "!UnoRumtime.areSame(null, test2Ba)",
256 !UnoRuntime.areSame(null, test2Ba));
257 success &= test(
258 "!UnoRumtime.areSame(null, test2Bb)",
259 !UnoRuntime.areSame(null, test2Bb));
260 success &= test(
261 "!UnoRumtime.areSame(null, test2Bc)",
262 !UnoRuntime.areSame(null, test2Bc));
264 success &= test(
265 "!test1Aa.equals(null)",
266 !test1Aa.equals(null));
267 success &= test(
268 "!UnoRuntime.areSame(test1Aa, null)",
269 !UnoRuntime.areSame(test1Aa, null));
270 success &= test(
271 "test1Aa.equals(test1Aa)",
272 test1Aa.equals(test1Aa));
273 success &= test(
274 "UnoRuntime.areSame(test1Aa, test1Aa)",
275 UnoRuntime.areSame(test1Aa, test1Aa));
276 success &= test(
277 "test1Aa.equals(test1Ab)",
278 test1Aa.equals(test1Ab));
279 success &= test(
280 "UnoRuntime.areSame(test1Aa, test1Ab)",
281 UnoRuntime.areSame(test1Aa, test1Ab));
282 success &= test(
283 "test1Aa.equals(test1Ac)",
284 test1Aa.equals(test1Ac));
285 success &= test(
286 "UnoRuntime.areSame(test1Aa, test1Ac)",
287 UnoRuntime.areSame(test1Aa, test1Ac));
288 success &= test(
289 "test1Aa.equals(test1Ba)",
290 test1Aa.equals(test1Ba));
291 success &= test(
292 "UnoRuntime.areSame(test1Aa, test1Ba)",
293 UnoRuntime.areSame(test1Aa, test1Ba));
294 success &= test(
295 "test1Aa.equals(test1Bb)",
296 test1Aa.equals(test1Bb));
297 success &= test(
298 "UnoRuntime.areSame(test1Aa, test1Bb)",
299 UnoRuntime.areSame(test1Aa, test1Bb));
300 success &= test(
301 "test1Aa.equals(test1Bc)",
302 test1Aa.equals(test1Bc));
303 success &= test(
304 "UnoRuntime.areSame(test1Aa, test1Bc)",
305 UnoRuntime.areSame(test1Aa, test1Bc));
306 success &= test(
307 "!test1Aa.equals(test2Aa)",
308 !test1Aa.equals(test2Aa));
309 success &= test(
310 "!UnoRuntime.areSame(test1Aa, test2Aa)",
311 !UnoRuntime.areSame(test1Aa, test2Aa));
312 success &= test(
313 "!test1Aa.equals(test2Ab)",
314 !test1Aa.equals(test2Ab));
315 success &= test(
316 "!UnoRuntime.areSame(test1Aa, test2Ab)",
317 !UnoRuntime.areSame(test1Aa, test2Ab));
318 success &= test(
319 "!test1Aa.equals(test2Ac)",
320 !test1Aa.equals(test2Ac));
321 success &= test(
322 "!UnoRuntime.areSame(test1Aa, test2Ac)",
323 !UnoRuntime.areSame(test1Aa, test2Ac));
324 success &= test(
325 "!test1Aa.equals(test2Ba)",
326 !test1Aa.equals(test2Ba));
327 success &= test(
328 "!UnoRuntime.areSame(test1Aa, test2Ba)",
329 !UnoRuntime.areSame(test1Aa, test2Ba));
330 success &= test(
331 "!test1Aa.equals(test2Bb)",
332 !test1Aa.equals(test2Bb));
333 success &= test(
334 "!UnoRuntime.areSame(test1Aa, test2Bb)",
335 !UnoRuntime.areSame(test1Aa, test2Bb));
336 success &= test(
337 "!test1Aa.equals(test2Bc)",
338 !test1Aa.equals(test2Bc));
339 success &= test(
340 "!UnoRuntime.areSame(test1Aa, test2Bc)",
341 !UnoRuntime.areSame(test1Aa, test2Bc));
343 success &= test(
344 "!test1Ab.equals(null)",
345 !test1Ab.equals(null));
346 success &= test(
347 "!UnoRuntime.areSame(test1Ab, null)",
348 !UnoRuntime.areSame(test1Ab, null));
349 success &= test(
350 "test1Ab.equals(test1Aa)",
351 test1Ab.equals(test1Aa));
352 success &= test(
353 "UnoRuntime.areSame(test1Ab, test1Aa)",
354 UnoRuntime.areSame(test1Ab, test1Aa));
355 success &= test(
356 "test1Ab.equals(test1Ab)",
357 test1Ab.equals(test1Ab));
358 success &= test(
359 "UnoRuntime.areSame(test1Ab, test1Ab)",
360 UnoRuntime.areSame(test1Ab, test1Ab));
361 success &= test(
362 "test1Ab.equals(test1Ac)",
363 test1Ab.equals(test1Ac));
364 success &= test(
365 "UnoRuntime.areSame(test1Ab, test1Ac)",
366 UnoRuntime.areSame(test1Ab, test1Ac));
367 success &= test(
368 "test1Ab.equals(test1Ba)",
369 test1Ab.equals(test1Ba));
370 success &= test(
371 "UnoRuntime.areSame(test1Ab, test1Ba)",
372 UnoRuntime.areSame(test1Ab, test1Ba));
373 success &= test(
374 "test1Ab.equals(test1Bb)",
375 test1Ab.equals(test1Bb));
376 success &= test(
377 "UnoRuntime.areSame(test1Ab, test1Bb)",
378 UnoRuntime.areSame(test1Ab, test1Bb));
379 success &= test(
380 "test1Ab.equals(test1Bc)",
381 test1Ab.equals(test1Bc));
382 success &= test(
383 "UnoRuntime.areSame(test1Ab, test1Bc)",
384 UnoRuntime.areSame(test1Ab, test1Bc));
385 success &= test(
386 "!test1Ab.equals(test2Aa)",
387 !test1Ab.equals(test2Aa));
388 success &= test(
389 "!UnoRuntime.areSame(test1Ab, test2Aa)",
390 !UnoRuntime.areSame(test1Ab, test2Aa));
391 success &= test(
392 "!test1Ab.equals(test2Ab)",
393 !test1Ab.equals(test2Ab));
394 success &= test(
395 "!UnoRuntime.areSame(test1Ab, test2Ab)",
396 !UnoRuntime.areSame(test1Ab, test2Ab));
397 success &= test(
398 "!test1Ab.equals(test2Ac)",
399 !test1Ab.equals(test2Ac));
400 success &= test(
401 "!UnoRuntime.areSame(test1Ab, test2Ac)",
402 !UnoRuntime.areSame(test1Ab, test2Ac));
403 success &= test(
404 "!test1Ab.equals(test2Ba)",
405 !test1Ab.equals(test2Ba));
406 success &= test(
407 "!UnoRuntime.areSame(test1Ab, test2Ba)",
408 !UnoRuntime.areSame(test1Ab, test2Ba));
409 success &= test(
410 "!test1Ab.equals(test2Bb)",
411 !test1Ab.equals(test2Bb));
412 success &= test(
413 "!UnoRuntime.areSame(test1Ab, test2Bb)",
414 !UnoRuntime.areSame(test1Ab, test2Bb));
415 success &= test(
416 "!test1Ab.equals(test2Bc)",
417 !test1Ab.equals(test2Bc));
418 success &= test(
419 "!UnoRuntime.areSame(test1Ab, test2Bc)",
420 !UnoRuntime.areSame(test1Ab, test2Bc));
422 success &= test(
423 "!test1Ac.equals(null)",
424 !test1Ac.equals(null));
425 success &= test(
426 "!UnoRuntime.areSame(test1Ac, null)",
427 !UnoRuntime.areSame(test1Ac, null));
428 success &= test(
429 "test1Ac.equals(test1Aa)",
430 test1Ac.equals(test1Aa));
431 success &= test(
432 "UnoRuntime.areSame(test1Ac, test1Aa)",
433 UnoRuntime.areSame(test1Ac, test1Aa));
434 success &= test(
435 "test1Ac.equals(test1Ab)",
436 test1Ac.equals(test1Ab));
437 success &= test(
438 "UnoRuntime.areSame(test1Ac, test1Ab)",
439 UnoRuntime.areSame(test1Ac, test1Ab));
440 success &= test(
441 "test1Ac.equals(test1Ac)",
442 test1Ac.equals(test1Ac));
443 success &= test(
444 "UnoRuntime.areSame(test1Ac, test1Ac)",
445 UnoRuntime.areSame(test1Ac, test1Ac));
446 success &= test(
447 "test1Ac.equals(test1Ba)",
448 test1Ac.equals(test1Ba));
449 success &= test(
450 "UnoRuntime.areSame(test1Ac, test1Ba)",
451 UnoRuntime.areSame(test1Ac, test1Ba));
452 success &= test(
453 "test1Ac.equals(test1Bb)",
454 test1Ac.equals(test1Bb));
455 success &= test(
456 "UnoRuntime.areSame(test1Ac, test1Bb)",
457 UnoRuntime.areSame(test1Ac, test1Bb));
458 success &= test(
459 "test1Ac.equals(test1Bc)",
460 test1Ac.equals(test1Bc));
461 success &= test(
462 "UnoRuntime.areSame(test1Ac, test1Bc)",
463 UnoRuntime.areSame(test1Ac, test1Bc));
464 success &= test(
465 "!test1Ac.equals(test2Aa)",
466 !test1Ac.equals(test2Aa));
467 success &= test(
468 "!UnoRuntime.areSame(test1Ac, test2Aa)",
469 !UnoRuntime.areSame(test1Ac, test2Aa));
470 success &= test(
471 "!test1Ac.equals(test2Ab)",
472 !test1Ac.equals(test2Ab));
473 success &= test(
474 "!UnoRuntime.areSame(test1Ac, test2Ab)",
475 !UnoRuntime.areSame(test1Ac, test2Ab));
476 success &= test(
477 "!test1Ac.equals(test2Ac)",
478 !test1Ac.equals(test2Ac));
479 success &= test(
480 "!UnoRuntime.areSame(test1Ac, test2Ac)",
481 !UnoRuntime.areSame(test1Ac, test2Ac));
482 success &= test(
483 "!test1Ac.equals(test2Ba)",
484 !test1Ac.equals(test2Ba));
485 success &= test(
486 "!UnoRuntime.areSame(test1Ac, test2Ba)",
487 !UnoRuntime.areSame(test1Ac, test2Ba));
488 success &= test(
489 "!test1Ac.equals(test2Bb)",
490 !test1Ac.equals(test2Bb));
491 success &= test(
492 "!UnoRuntime.areSame(test1Ac, test2Bb)",
493 !UnoRuntime.areSame(test1Ac, test2Bb));
494 success &= test(
495 "!test1Ac.equals(test2Bc)",
496 !test1Ac.equals(test2Bc));
497 success &= test(
498 "!UnoRuntime.areSame(test1Ac, test2Bc)",
499 !UnoRuntime.areSame(test1Ac, test2Bc));
501 success &= test(
502 "!test1Ba.equals(null)",
503 !test1Ba.equals(null));
504 success &= test(
505 "!UnoRuntime.areSame(test1Ba, null)",
506 !UnoRuntime.areSame(test1Ba, null));
507 success &= test(
508 "test1Ba.equals(test1Aa)",
509 test1Ba.equals(test1Aa));
510 success &= test(
511 "UnoRuntime.areSame(test1Ba, test1Aa)",
512 UnoRuntime.areSame(test1Ba, test1Aa));
513 success &= test(
514 "test1Ba.equals(test1Ab)",
515 test1Ba.equals(test1Ab));
516 success &= test(
517 "UnoRuntime.areSame(test1Ba, test1Ab)",
518 UnoRuntime.areSame(test1Ba, test1Ab));
519 success &= test(
520 "test1Ba.equals(test1Ac)",
521 test1Ba.equals(test1Ac));
522 success &= test(
523 "UnoRuntime.areSame(test1Ba, test1Ac)",
524 UnoRuntime.areSame(test1Ba, test1Ac));
525 success &= test(
526 "test1Ba.equals(test1Ba)",
527 test1Ba.equals(test1Ba));
528 success &= test(
529 "UnoRuntime.areSame(test1Ba, test1Ba)",
530 UnoRuntime.areSame(test1Ba, test1Ba));
531 success &= test(
532 "test1Ba.equals(test1Bb)",
533 test1Ba.equals(test1Bb));
534 success &= test(
535 "UnoRuntime.areSame(test1Ba, test1Bb)",
536 UnoRuntime.areSame(test1Ba, test1Bb));
537 success &= test(
538 "test1Ba.equals(test1Bc)",
539 test1Ba.equals(test1Bc));
540 success &= test(
541 "UnoRuntime.areSame(test1Ba, test1Bc)",
542 UnoRuntime.areSame(test1Ba, test1Bc));
543 success &= test(
544 "!test1Ba.equals(test2Aa)",
545 !test1Ba.equals(test2Aa));
546 success &= test(
547 "!UnoRuntime.areSame(test1Ba, test2Aa)",
548 !UnoRuntime.areSame(test1Ba, test2Aa));
549 success &= test(
550 "!test1Ba.equals(test2Ab)",
551 !test1Ba.equals(test2Ab));
552 success &= test(
553 "!UnoRuntime.areSame(test1Ba, test2Ab)",
554 !UnoRuntime.areSame(test1Ba, test2Ab));
555 success &= test(
556 "!test1Ba.equals(test2Ac)",
557 !test1Ba.equals(test2Ac));
558 success &= test(
559 "!UnoRuntime.areSame(test1Ba, test2Ac)",
560 !UnoRuntime.areSame(test1Ba, test2Ac));
561 success &= test(
562 "!test1Ba.equals(test2Ba)",
563 !test1Ba.equals(test2Ba));
564 success &= test(
565 "!UnoRuntime.areSame(test1Ba, test2Ba)",
566 !UnoRuntime.areSame(test1Ba, test2Ba));
567 success &= test(
568 "!test1Ba.equals(test2Bb)",
569 !test1Ba.equals(test2Bb));
570 success &= test(
571 "!UnoRuntime.areSame(test1Ba, test2Bb)",
572 !UnoRuntime.areSame(test1Ba, test2Bb));
573 success &= test(
574 "!test1Ba.equals(test2Bc)",
575 !test1Ba.equals(test2Bc));
576 success &= test(
577 "!UnoRuntime.areSame(test1Ba, test2Bc)",
578 !UnoRuntime.areSame(test1Ba, test2Bc));
580 success &= test(
581 "!test1Bb.equals(null)",
582 !test1Bb.equals(null));
583 success &= test(
584 "!UnoRuntime.areSame(test1Bb, null)",
585 !UnoRuntime.areSame(test1Bb, null));
586 success &= test(
587 "test1Bb.equals(test1Aa)",
588 test1Bb.equals(test1Aa));
589 success &= test(
590 "UnoRuntime.areSame(test1Bb, test1Aa)",
591 UnoRuntime.areSame(test1Bb, test1Aa));
592 success &= test(
593 "test1Bb.equals(test1Ab)",
594 test1Bb.equals(test1Ab));
595 success &= test(
596 "UnoRuntime.areSame(test1Bb, test1Ab)",
597 UnoRuntime.areSame(test1Bb, test1Ab));
598 success &= test(
599 "test1Bb.equals(test1Ac)",
600 test1Bb.equals(test1Ac));
601 success &= test(
602 "UnoRuntime.areSame(test1Bb, test1Ac)",
603 UnoRuntime.areSame(test1Bb, test1Ac));
604 success &= test(
605 "test1Bb.equals(test1Ba)",
606 test1Bb.equals(test1Ba));
607 success &= test(
608 "UnoRuntime.areSame(test1Bb, test1Ba)",
609 UnoRuntime.areSame(test1Bb, test1Ba));
610 success &= test(
611 "test1Bb.equals(test1Bb)",
612 test1Bb.equals(test1Bb));
613 success &= test(
614 "UnoRuntime.areSame(test1Bb, test1Bb)",
615 UnoRuntime.areSame(test1Bb, test1Bb));
616 success &= test(
617 "test1Bb.equals(test1Bc)",
618 test1Bb.equals(test1Bc));
619 success &= test(
620 "UnoRuntime.areSame(test1Bb, test1Bc)",
621 UnoRuntime.areSame(test1Bb, test1Bc));
622 success &= test(
623 "!test1Bb.equals(test2Aa)",
624 !test1Bb.equals(test2Aa));
625 success &= test(
626 "!UnoRuntime.areSame(test1Bb, test2Aa)",
627 !UnoRuntime.areSame(test1Bb, test2Aa));
628 success &= test(
629 "!test1Bb.equals(test2Ab)",
630 !test1Bb.equals(test2Ab));
631 success &= test(
632 "!UnoRuntime.areSame(test1Bb, test2Ab)",
633 !UnoRuntime.areSame(test1Bb, test2Ab));
634 success &= test(
635 "!test1Bb.equals(test2Ac)",
636 !test1Bb.equals(test2Ac));
637 success &= test(
638 "!UnoRuntime.areSame(test1Bb, test2Ac)",
639 !UnoRuntime.areSame(test1Bb, test2Ac));
640 success &= test(
641 "!test1Bb.equals(test2Ba)",
642 !test1Bb.equals(test2Ba));
643 success &= test(
644 "!UnoRuntime.areSame(test1Bb, test2Ba)",
645 !UnoRuntime.areSame(test1Bb, test2Ba));
646 success &= test(
647 "!test1Bb.equals(test2Bb)",
648 !test1Bb.equals(test2Bb));
649 success &= test(
650 "!UnoRuntime.areSame(test1Bb, test2Bb)",
651 !UnoRuntime.areSame(test1Bb, test2Bb));
652 success &= test(
653 "!test1Bb.equals(test2Bc)",
654 !test1Bb.equals(test2Bc));
655 success &= test(
656 "!UnoRuntime.areSame(test1Bb, test2Bc)",
657 !UnoRuntime.areSame(test1Bb, test2Bc));
659 success &= test(
660 "!test1Bc.equals(null)",
661 !test1Bc.equals(null));
662 success &= test(
663 "!UnoRuntime.areSame(test1Bc, null)",
664 !UnoRuntime.areSame(test1Bc, null));
665 success &= test(
666 "test1Bc.equals(test1Aa)",
667 test1Bc.equals(test1Aa));
668 success &= test(
669 "UnoRuntime.areSame(test1Bc, test1Aa)",
670 UnoRuntime.areSame(test1Bc, test1Aa));
671 success &= test(
672 "test1Bc.equals(test1Ab)",
673 test1Bc.equals(test1Ab));
674 success &= test(
675 "UnoRuntime.areSame(test1Bc, test1Ab)",
676 UnoRuntime.areSame(test1Bc, test1Ab));
677 success &= test(
678 "test1Bc.equals(test1Ac)",
679 test1Bc.equals(test1Ac));
680 success &= test(
681 "UnoRuntime.areSame(test1Bc, test1Ac)",
682 UnoRuntime.areSame(test1Bc, test1Ac));
683 success &= test(
684 "test1Bc.equals(test1Ba)",
685 test1Bc.equals(test1Ba));
686 success &= test(
687 "UnoRuntime.areSame(test1Bc, test1Ba)",
688 UnoRuntime.areSame(test1Bc, test1Ba));
689 success &= test(
690 "test1Bc.equals(test1Bb)",
691 test1Bc.equals(test1Bb));
692 success &= test(
693 "UnoRuntime.areSame(test1Bc, test1Bb)",
694 UnoRuntime.areSame(test1Bc, test1Bb));
695 success &= test(
696 "test1Bc.equals(test1Bc)",
697 test1Bc.equals(test1Bc));
698 success &= test(
699 "UnoRuntime.areSame(test1Bc, test1Bc)",
700 UnoRuntime.areSame(test1Bc, test1Bc));
701 success &= test(
702 "!test1Bc.equals(test2Aa)",
703 !test1Bc.equals(test2Aa));
704 success &= test(
705 "!UnoRuntime.areSame(test1Bc, test2Aa)",
706 !UnoRuntime.areSame(test1Bc, test2Aa));
707 success &= test(
708 "!test1Bc.equals(test2Ab)",
709 !test1Bc.equals(test2Ab));
710 success &= test(
711 "!UnoRuntime.areSame(test1Bc, test2Ab)",
712 !UnoRuntime.areSame(test1Bc, test2Ab));
713 success &= test(
714 "!test1Bc.equals(test2Ac)",
715 !test1Bc.equals(test2Ac));
716 success &= test(
717 "!UnoRuntime.areSame(test1Bc, test2Ac)",
718 !UnoRuntime.areSame(test1Bc, test2Ac));
719 success &= test(
720 "!test1Bc.equals(test2Ba)",
721 !test1Bc.equals(test2Ba));
722 success &= test(
723 "!UnoRuntime.areSame(test1Bc, test2Ba)",
724 !UnoRuntime.areSame(test1Bc, test2Ba));
725 success &= test(
726 "!test1Bc.equals(test2Bb)",
727 !test1Bc.equals(test2Bb));
728 success &= test(
729 "!UnoRuntime.areSame(test1Bc, test2Bb)",
730 !UnoRuntime.areSame(test1Bc, test2Bb));
731 success &= test(
732 "!test1Bc.equals(test2Bc)",
733 !test1Bc.equals(test2Bc));
734 success &= test(
735 "!UnoRuntime.areSame(test1Bc, test2Bc)",
736 !UnoRuntime.areSame(test1Bc, test2Bc));
738 success &= test(
739 "!test2Aa.equals(null)",
740 !test2Aa.equals(null));
741 success &= test(
742 "!UnoRuntime.areSame(test2Aa, null)",
743 !UnoRuntime.areSame(test2Aa, null));
744 success &= test(
745 "!test2Aa.equals(test1Aa)",
746 !test2Aa.equals(test1Aa));
747 success &= test(
748 "!UnoRuntime.areSame(test2Aa, test1Aa)",
749 !UnoRuntime.areSame(test2Aa, test1Aa));
750 success &= test(
751 "!test2Aa.equals(test1Ab)",
752 !test2Aa.equals(test1Ab));
753 success &= test(
754 "!UnoRuntime.areSame(test2Aa, test1Ab)",
755 !UnoRuntime.areSame(test2Aa, test1Ab));
756 success &= test(
757 "!test2Aa.equals(test1Ac)",
758 !test2Aa.equals(test1Ac));
759 success &= test(
760 "!UnoRuntime.areSame(test2Aa, test1Ac)",
761 !UnoRuntime.areSame(test2Aa, test1Ac));
762 success &= test(
763 "!test2Aa.equals(test1Ba)",
764 !test2Aa.equals(test1Ba));
765 success &= test(
766 "!UnoRuntime.areSame(test2Aa, test1Ba)",
767 !UnoRuntime.areSame(test2Aa, test1Ba));
768 success &= test(
769 "!test2Aa.equals(test1Bb)",
770 !test2Aa.equals(test1Bb));
771 success &= test(
772 "!UnoRuntime.areSame(test2Aa, test1Bb)",
773 !UnoRuntime.areSame(test2Aa, test1Bb));
774 success &= test(
775 "!test2Aa.equals(test1Bc)",
776 !test2Aa.equals(test1Bc));
777 success &= test(
778 "!UnoRuntime.areSame(test2Aa, test1Bc)",
779 !UnoRuntime.areSame(test2Aa, test1Bc));
780 success &= test(
781 "test2Aa.equals(test2Aa)",
782 test2Aa.equals(test2Aa));
783 success &= test(
784 "UnoRuntime.areSame(test2Aa, test2Aa)",
785 UnoRuntime.areSame(test2Aa, test2Aa));
786 success &= test(
787 "test2Aa.equals(test2Ab)",
788 test2Aa.equals(test2Ab));
789 success &= test(
790 "UnoRuntime.areSame(test2Aa, test2Ab)",
791 UnoRuntime.areSame(test2Aa, test2Ab));
792 success &= test(
793 "test2Aa.equals(test2Ac)",
794 test2Aa.equals(test2Ac));
795 success &= test(
796 "UnoRuntime.areSame(test2Aa, test2Ac)",
797 UnoRuntime.areSame(test2Aa, test2Ac));
798 success &= test(
799 "test2Aa.equals(test2Ba)",
800 test2Aa.equals(test2Ba));
801 success &= test(
802 "UnoRuntime.areSame(test2Aa, test2Ba)",
803 UnoRuntime.areSame(test2Aa, test2Ba));
804 success &= test(
805 "test2Aa.equals(test2Bb)",
806 test2Aa.equals(test2Bb));
807 success &= test(
808 "UnoRuntime.areSame(test2Aa, test2Bb)",
809 UnoRuntime.areSame(test2Aa, test2Bb));
810 success &= test(
811 "test2Aa.equals(test2Bc)",
812 test2Aa.equals(test2Bc));
813 success &= test(
814 "UnoRuntime.areSame(test2Aa, test2Bc)",
815 UnoRuntime.areSame(test2Aa, test2Bc));
817 success &= test(
818 "!test2Ab.equals(null)",
819 !test2Ab.equals(null));
820 success &= test(
821 "!UnoRuntime.areSame(test2Ab, null)",
822 !UnoRuntime.areSame(test2Ab, null));
823 success &= test(
824 "!test2Ab.equals(test1Aa)",
825 !test2Ab.equals(test1Aa));
826 success &= test(
827 "!UnoRuntime.areSame(test2Ab, test1Aa)",
828 !UnoRuntime.areSame(test2Ab, test1Aa));
829 success &= test(
830 "!test2Ab.equals(test1Ab)",
831 !test2Ab.equals(test1Ab));
832 success &= test(
833 "!UnoRuntime.areSame(test2Ab, test1Ab)",
834 !UnoRuntime.areSame(test2Ab, test1Ab));
835 success &= test(
836 "!test2Ab.equals(test1Ac)",
837 !test2Ab.equals(test1Ac));
838 success &= test(
839 "!UnoRuntime.areSame(test2Ab, test1Ac)",
840 !UnoRuntime.areSame(test2Ab, test1Ac));
841 success &= test(
842 "!test2Ab.equals(test1Ba)",
843 !test2Ab.equals(test1Ba));
844 success &= test(
845 "!UnoRuntime.areSame(test2Ab, test1Ba)",
846 !UnoRuntime.areSame(test2Ab, test1Ba));
847 success &= test(
848 "!test2Ab.equals(test1Bb)",
849 !test2Ab.equals(test1Bb));
850 success &= test(
851 "!UnoRuntime.areSame(test2Ab, test1Bb)",
852 !UnoRuntime.areSame(test2Ab, test1Bb));
853 success &= test(
854 "!test2Ab.equals(test1Bc)",
855 !test2Ab.equals(test1Bc));
856 success &= test(
857 "!UnoRuntime.areSame(test2Ab, test1Bc)",
858 !UnoRuntime.areSame(test2Ab, test1Bc));
859 success &= test(
860 "test2Ab.equals(test2Aa)",
861 test2Ab.equals(test2Aa));
862 success &= test(
863 "UnoRuntime.areSame(test2Ab, test2Aa)",
864 UnoRuntime.areSame(test2Ab, test2Aa));
865 success &= test(
866 "test2Ab.equals(test2Ab)",
867 test2Ab.equals(test2Ab));
868 success &= test(
869 "UnoRuntime.areSame(test2Ab, test2Ab)",
870 UnoRuntime.areSame(test2Ab, test2Ab));
871 success &= test(
872 "test2Ab.equals(test2Ac)",
873 test2Ab.equals(test2Ac));
874 success &= test(
875 "UnoRuntime.areSame(test2Ab, test2Ac)",
876 UnoRuntime.areSame(test2Ab, test2Ac));
877 success &= test(
878 "test2Ab.equals(test2Ba)",
879 test2Ab.equals(test2Ba));
880 success &= test(
881 "UnoRuntime.areSame(test2Ab, test2Ba)",
882 UnoRuntime.areSame(test2Ab, test2Ba));
883 success &= test(
884 "test2Ab.equals(test2Bb)",
885 test2Ab.equals(test2Bb));
886 success &= test(
887 "UnoRuntime.areSame(test2Ab, test2Bb)",
888 UnoRuntime.areSame(test2Ab, test2Bb));
889 success &= test(
890 "test2Ab.equals(test2Bc)",
891 test2Ab.equals(test2Bc));
892 success &= test(
893 "UnoRuntime.areSame(test2Ab, test2Bc)",
894 UnoRuntime.areSame(test2Ab, test2Bc));
896 success &= test(
897 "!test2Ac.equals(null)",
898 !test2Ac.equals(null));
899 success &= test(
900 "!UnoRuntime.areSame(test2Ac, null)",
901 !UnoRuntime.areSame(test2Ac, null));
902 success &= test(
903 "!test2Ac.equals(test1Aa)",
904 !test2Ac.equals(test1Aa));
905 success &= test(
906 "!UnoRuntime.areSame(test2Ac, test1Aa)",
907 !UnoRuntime.areSame(test2Ac, test1Aa));
908 success &= test(
909 "!test2Ac.equals(test1Ab)",
910 !test2Ac.equals(test1Ab));
911 success &= test(
912 "!UnoRuntime.areSame(test2Ac, test1Ab)",
913 !UnoRuntime.areSame(test2Ac, test1Ab));
914 success &= test(
915 "!test2Ac.equals(test1Ac)",
916 !test2Ac.equals(test1Ac));
917 success &= test(
918 "!UnoRuntime.areSame(test2Ac, test1Ac)",
919 !UnoRuntime.areSame(test2Ac, test1Ac));
920 success &= test(
921 "!test2Ac.equals(test1Ba)",
922 !test2Ac.equals(test1Ba));
923 success &= test(
924 "!UnoRuntime.areSame(test2Ac, test1Ba)",
925 !UnoRuntime.areSame(test2Ac, test1Ba));
926 success &= test(
927 "!test2Ac.equals(test1Bb)",
928 !test2Ac.equals(test1Bb));
929 success &= test(
930 "!UnoRuntime.areSame(test2Ac, test1Bb)",
931 !UnoRuntime.areSame(test2Ac, test1Bb));
932 success &= test(
933 "!test2Ac.equals(test1Bc)",
934 !test2Ac.equals(test1Bc));
935 success &= test(
936 "!UnoRuntime.areSame(test2Ac, test1Bc)",
937 !UnoRuntime.areSame(test2Ac, test1Bc));
938 success &= test(
939 "test2Ac.equals(test2Aa)",
940 test2Ac.equals(test2Aa));
941 success &= test(
942 "UnoRuntime.areSame(test2Ac, test2Aa)",
943 UnoRuntime.areSame(test2Ac, test2Aa));
944 success &= test(
945 "test2Ac.equals(test2Ab)",
946 test2Ac.equals(test2Ab));
947 success &= test(
948 "UnoRuntime.areSame(test2Ac, test2Ab)",
949 UnoRuntime.areSame(test2Ac, test2Ab));
950 success &= test(
951 "test2Ac.equals(test2Ac)",
952 test2Ac.equals(test2Ac));
953 success &= test(
954 "UnoRuntime.areSame(test2Ac, test2Ac)",
955 UnoRuntime.areSame(test2Ac, test2Ac));
956 success &= test(
957 "test2Ac.equals(test2Ba)",
958 test2Ac.equals(test2Ba));
959 success &= test(
960 "UnoRuntime.areSame(test2Ac, test2Ba)",
961 UnoRuntime.areSame(test2Ac, test2Ba));
962 success &= test(
963 "test2Ac.equals(test2Bb)",
964 test2Ac.equals(test2Bb));
965 success &= test(
966 "UnoRuntime.areSame(test2Ac, test2Bb)",
967 UnoRuntime.areSame(test2Ac, test2Bb));
968 success &= test(
969 "test2Ac.equals(test2Bc)",
970 test2Ac.equals(test2Bc));
971 success &= test(
972 "UnoRuntime.areSame(test2Ac, test2Bc)",
973 UnoRuntime.areSame(test2Ac, test2Bc));
975 success &= test(
976 "!test2Ba.equals(null)",
977 !test2Ba.equals(null));
978 success &= test(
979 "!UnoRuntime.areSame(test2Ba, null)",
980 !UnoRuntime.areSame(test2Ba, null));
981 success &= test(
982 "!test2Ba.equals(test1Aa)",
983 !test2Ba.equals(test1Aa));
984 success &= test(
985 "!UnoRuntime.areSame(test2Ba, test1Aa)",
986 !UnoRuntime.areSame(test2Ba, test1Aa));
987 success &= test(
988 "!test2Ba.equals(test1Ab)",
989 !test2Ba.equals(test1Ab));
990 success &= test(
991 "!UnoRuntime.areSame(test2Ba, test1Ab)",
992 !UnoRuntime.areSame(test2Ba, test1Ab));
993 success &= test(
994 "!test2Ba.equals(test1Ac)",
995 !test2Ba.equals(test1Ac));
996 success &= test(
997 "!UnoRuntime.areSame(test2Ba, test1Ac)",
998 !UnoRuntime.areSame(test2Ba, test1Ac));
999 success &= test(
1000 "!test2Ba.equals(test1Ba)",
1001 !test2Ba.equals(test1Ba));
1002 success &= test(
1003 "!UnoRuntime.areSame(test2Ba, test1Ba)",
1004 !UnoRuntime.areSame(test2Ba, test1Ba));
1005 success &= test(
1006 "!test2Ba.equals(test1Bb)",
1007 !test2Ba.equals(test1Bb));
1008 success &= test(
1009 "!UnoRuntime.areSame(test2Ba, test1Bb)",
1010 !UnoRuntime.areSame(test2Ba, test1Bb));
1011 success &= test(
1012 "!test2Ba.equals(test1Bc)",
1013 !test2Ba.equals(test1Bc));
1014 success &= test(
1015 "!UnoRuntime.areSame(test2Ba, test1Bc)",
1016 !UnoRuntime.areSame(test2Ba, test1Bc));
1017 success &= test(
1018 "test2Ba.equals(test2Aa)",
1019 test2Ba.equals(test2Aa));
1020 success &= test(
1021 "UnoRuntime.areSame(test2Ba, test2Aa)",
1022 UnoRuntime.areSame(test2Ba, test2Aa));
1023 success &= test(
1024 "test2Ba.equals(test2Ab)",
1025 test2Ba.equals(test2Ab));
1026 success &= test(
1027 "UnoRuntime.areSame(test2Ba, test2Ab)",
1028 UnoRuntime.areSame(test2Ba, test2Ab));
1029 success &= test(
1030 "test2Ba.equals(test2Ac)",
1031 test2Ba.equals(test2Ac));
1032 success &= test(
1033 "UnoRuntime.areSame(test2Ba, test2Ac)",
1034 UnoRuntime.areSame(test2Ba, test2Ac));
1035 success &= test(
1036 "test2Ba.equals(test2Ba)",
1037 test2Ba.equals(test2Ba));
1038 success &= test(
1039 "UnoRuntime.areSame(test2Ba, test2Ba)",
1040 UnoRuntime.areSame(test2Ba, test2Ba));
1041 success &= test(
1042 "test2Ba.equals(test2Bb)",
1043 test2Ba.equals(test2Bb));
1044 success &= test(
1045 "UnoRuntime.areSame(test2Ba, test2Bb)",
1046 UnoRuntime.areSame(test2Ba, test2Bb));
1047 success &= test(
1048 "test2Ba.equals(test2Bc)",
1049 test2Ba.equals(test2Bc));
1050 success &= test(
1051 "UnoRuntime.areSame(test2Ba, test2Bc)",
1052 UnoRuntime.areSame(test2Ba, test2Bc));
1054 success &= test(
1055 "!test2Bb.equals(null)",
1056 !test2Bb.equals(null));
1057 success &= test(
1058 "!UnoRuntime.areSame(test2Bb, null)",
1059 !UnoRuntime.areSame(test2Bb, null));
1060 success &= test(
1061 "!test2Bb.equals(test1Aa)",
1062 !test2Bb.equals(test1Aa));
1063 success &= test(
1064 "!UnoRuntime.areSame(test2Bb, test1Aa)",
1065 !UnoRuntime.areSame(test2Bb, test1Aa));
1066 success &= test(
1067 "!test2Bb.equals(test1Ab)",
1068 !test2Bb.equals(test1Ab));
1069 success &= test(
1070 "!UnoRuntime.areSame(test2Bb, test1Ab)",
1071 !UnoRuntime.areSame(test2Bb, test1Ab));
1072 success &= test(
1073 "!test2Bb.equals(test1Ac)",
1074 !test2Bb.equals(test1Ac));
1075 success &= test(
1076 "!UnoRuntime.areSame(test2Bb, test1Ac)",
1077 !UnoRuntime.areSame(test2Bb, test1Ac));
1078 success &= test(
1079 "!test2Bb.equals(test1Ba)",
1080 !test2Bb.equals(test1Ba));
1081 success &= test(
1082 "!UnoRuntime.areSame(test2Bb, test1Ba)",
1083 !UnoRuntime.areSame(test2Bb, test1Ba));
1084 success &= test(
1085 "!test2Bb.equals(test1Bb)",
1086 !test2Bb.equals(test1Bb));
1087 success &= test(
1088 "!UnoRuntime.areSame(test2Bb, test1Bb)",
1089 !UnoRuntime.areSame(test2Bb, test1Bb));
1090 success &= test(
1091 "!test2Bb.equals(test1Bc)",
1092 !test2Bb.equals(test1Bc));
1093 success &= test(
1094 "!UnoRuntime.areSame(test2Bb, test1Bc)",
1095 !UnoRuntime.areSame(test2Bb, test1Bc));
1096 success &= test(
1097 "test2Bb.equals(test2Aa)",
1098 test2Bb.equals(test2Aa));
1099 success &= test(
1100 "UnoRuntime.areSame(test2Bb, test2Aa)",
1101 UnoRuntime.areSame(test2Bb, test2Aa));
1102 success &= test(
1103 "test2Bb.equals(test2Ab)",
1104 test2Bb.equals(test2Ab));
1105 success &= test(
1106 "UnoRuntime.areSame(test2Bb, test2Ab)",
1107 UnoRuntime.areSame(test2Bb, test2Ab));
1108 success &= test(
1109 "test2Bb.equals(test2Ac)",
1110 test2Bb.equals(test2Ac));
1111 success &= test(
1112 "UnoRuntime.areSame(test2Bb, test2Ac)",
1113 UnoRuntime.areSame(test2Bb, test2Ac));
1114 success &= test(
1115 "test2Bb.equals(test2Ba)",
1116 test2Bb.equals(test2Ba));
1117 success &= test(
1118 "UnoRuntime.areSame(test2Bb, test2Ba)",
1119 UnoRuntime.areSame(test2Bb, test2Ba));
1120 success &= test(
1121 "test2Bb.equals(test2Bb)",
1122 test2Bb.equals(test2Bb));
1123 success &= test(
1124 "UnoRuntime.areSame(test2Bb, test2Bb)",
1125 UnoRuntime.areSame(test2Bb, test2Bb));
1126 success &= test(
1127 "test2Bb.equals(test2Bc)",
1128 test2Bb.equals(test2Bc));
1129 success &= test(
1130 "UnoRuntime.areSame(test2Bb, test2Bc)",
1131 UnoRuntime.areSame(test2Bb, test2Bc));
1133 success &= test(
1134 "!test2Bc.equals(null)",
1135 !test2Bc.equals(null));
1136 success &= test(
1137 "!UnoRuntime.areSame(test2Bc, null)",
1138 !UnoRuntime.areSame(test2Bc, null));
1139 success &= test(
1140 "!test2Bc.equals(test1Aa)",
1141 !test2Bc.equals(test1Aa));
1142 success &= test(
1143 "!UnoRuntime.areSame(test2Bc, test1Aa)",
1144 !UnoRuntime.areSame(test2Bc, test1Aa));
1145 success &= test(
1146 "!test2Bc.equals(test1Ab)",
1147 !test2Bc.equals(test1Ab));
1148 success &= test(
1149 "!UnoRuntime.areSame(test2Bc, test1Ab)",
1150 !UnoRuntime.areSame(test2Bc, test1Ab));
1151 success &= test(
1152 "!test2Bc.equals(test1Ac)",
1153 !test2Bc.equals(test1Ac));
1154 success &= test(
1155 "!UnoRuntime.areSame(test2Bc, test1Ac)",
1156 !UnoRuntime.areSame(test2Bc, test1Ac));
1157 success &= test(
1158 "!test2Bc.equals(test1Ba)",
1159 !test2Bc.equals(test1Ba));
1160 success &= test(
1161 "!UnoRuntime.areSame(test2Bc, test1Ba)",
1162 !UnoRuntime.areSame(test2Bc, test1Ba));
1163 success &= test(
1164 "!test2Bc.equals(test1Bb)",
1165 !test2Bc.equals(test1Bb));
1166 success &= test(
1167 "!UnoRuntime.areSame(test2Bc, test1Bb)",
1168 !UnoRuntime.areSame(test2Bc, test1Bb));
1169 success &= test(
1170 "!test2Bc.equals(test1Bc)",
1171 !test2Bc.equals(test1Bc));
1172 success &= test(
1173 "!UnoRuntime.areSame(test2Bc, test1Bc)",
1174 !UnoRuntime.areSame(test2Bc, test1Bc));
1175 success &= test(
1176 "test2Bc.equals(test2Aa)",
1177 test2Bc.equals(test2Aa));
1178 success &= test(
1179 "UnoRuntime.areSame(test2Bc, test2Aa)",
1180 UnoRuntime.areSame(test2Bc, test2Aa));
1181 success &= test(
1182 "test2Bc.equals(test2Ab)",
1183 test2Bc.equals(test2Ab));
1184 success &= test(
1185 "UnoRuntime.areSame(test2Bc, test2Ab)",
1186 UnoRuntime.areSame(test2Bc, test2Ab));
1187 success &= test(
1188 "test2Bc.equals(test2Ac)",
1189 test2Bc.equals(test2Ac));
1190 success &= test(
1191 "UnoRuntime.areSame(test2Bc, test2Ac)",
1192 UnoRuntime.areSame(test2Bc, test2Ac));
1193 success &= test(
1194 "test2Bc.equals(test2Ba)",
1195 test2Bc.equals(test2Ba));
1196 success &= test(
1197 "UnoRuntime.areSame(test2Bc, test2Ba)",
1198 UnoRuntime.areSame(test2Bc, test2Ba));
1199 success &= test(
1200 "test2Bc.equals(test2Bb)",
1201 test2Bc.equals(test2Bb));
1202 success &= test(
1203 "UnoRuntime.areSame(test2Bc, test2Bb)",
1204 UnoRuntime.areSame(test2Bc, test2Bb));
1205 success &= test(
1206 "test2Bc.equals(test2Bc)",
1207 test2Bc.equals(test2Bc));
1208 success &= test(
1209 "UnoRuntime.areSame(test2Bc, test2Bc)",
1210 UnoRuntime.areSame(test2Bc, test2Bc));
1212 success &= test(
1213 "test1Aa.hashCode() == test1Ab.hashCode()",
1214 test1Aa.hashCode()
1215 == test1Ab.hashCode());
1216 success &= test(
1217 "test1Aa.hashCode()"
1218 + " == test1Ac.hashCode()",
1219 test1Aa.hashCode()
1220 == test1Ac.hashCode());
1221 success &= test(
1222 "test1Aa.hashCode()"
1223 + " == test1Ba.hashCode()",
1224 test1Aa.hashCode()
1225 == test1Ba.hashCode());
1226 success &= test(
1227 "test1Aa.hashCode()"
1228 + " == test1Bb.hashCode()",
1229 test1Aa.hashCode()
1230 == test1Bb.hashCode());
1231 success &= test(
1232 "test1Aa.hashCode()"
1233 + " == test1Bc.hashCode()",
1234 test1Aa.hashCode()
1235 == test1Bc.hashCode());
1236 success &= test(
1237 "test2Aa.hashCode()"
1238 + " == test2Ab.hashCode()",
1239 test2Aa.hashCode()
1240 == test2Ab.hashCode());
1241 success &= test(
1242 "test2Aa.hashCode()"
1243 + " == test2Ac.hashCode()",
1244 test2Aa.hashCode()
1245 == test2Ac.hashCode());
1246 success &= test(
1247 "test2Aa.hashCode()"
1248 + " == test2Ba.hashCode()",
1249 test2Aa.hashCode()
1250 == test2Ba.hashCode());
1251 success &= test(
1252 "test2Aa.hashCode()"
1253 + " == test2Bb.hashCode()",
1254 test2Aa.hashCode()
1255 == test2Bb.hashCode());
1256 success &= test(
1257 "test2Aa.hashCode()"
1258 + " == test2Bc.hashCode()",
1259 test2Aa.hashCode()
1260 == test2Bc.hashCode());
1262 done.notifyDone();
1263 testBed.serverDone(success);
1264 } catch (Exception e) {
1265 e.printStackTrace(System.err);
1269 private /*static*/ boolean test(
1270 String message, boolean condition)
1272 if (!condition) {
1273 System.err.println("Failed: " + message);
1275 return condition;
1277 }.start();
1282 private final TestBed testBed;
1283 private final String unoTypes;
1284 private final String unoServices;
1287 public interface XDone extends XInterface {
1288 void notifyDone();
1290 TypeInfo[] UNOTYPEINFO = { new MethodTypeInfo("notifyDone", 0, 0) };
1293 public interface XTestFrame extends XInterface {
1294 void notifyAccepting(XDone done, Object object1, Object object2);
1296 TypeInfo[] UNOTYPEINFO = {
1297 new MethodTypeInfo("notifyAccepting", 0, TypeInfo.ONEWAY) };
1300 // Use "127.0.0.1" instead of "localhost", see #i32281#:
1301 private static final String CONNECTION_DESCRIPTION
1302 = "socket,host=127.0.0.1,port=12346";
1303 private static final String PROTOCOL_DESCRIPTION = "urp";
1305 private static final String INSTANCE1 = "instance1";
1306 private static final String INSTANCE2 = "instance2";