| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 // Dart test program for testing properties of ports. | 5 // Test properties of ports. |
| 6 // Note: unittest.dart depends on ports, in particular on the behaviour tested |
| 7 // here. To keep things simple, we don't use the unittest library here. |
| 8 |
| 6 #library("PortTest"); | 9 #library("PortTest"); |
| 7 #import("dart:isolate"); | 10 #import("dart:isolate"); |
| 8 | 11 |
| 9 class PortTest { | |
| 10 | 12 |
| 11 static void testMain() { | 13 main() { |
| 12 testHashCode(); | 14 testHashCode(); |
| 13 testEquals(); | 15 testEquals(); |
| 14 testMap(); | 16 testMap(); |
| 15 } | |
| 16 | |
| 17 static void testHashCode() { | |
| 18 ReceivePort rp0 = new ReceivePort(); | |
| 19 ReceivePort rp1 = new ReceivePort(); | |
| 20 Expect.equals(rp0.toSendPort().hashCode(), rp0.toSendPort().hashCode()); | |
| 21 Expect.equals(rp1.toSendPort().hashCode(), rp1.toSendPort().hashCode()); | |
| 22 rp0.close(); | |
| 23 rp1.close(); | |
| 24 } | |
| 25 | |
| 26 static void testEquals() { | |
| 27 ReceivePort rp0 = new ReceivePort(); | |
| 28 ReceivePort rp1 = new ReceivePort(); | |
| 29 Expect.equals(rp0.toSendPort(), rp0.toSendPort()); | |
| 30 Expect.equals(rp1.toSendPort(), rp1.toSendPort()); | |
| 31 Expect.equals(false, (rp0.toSendPort() == rp1.toSendPort())); | |
| 32 rp0.close(); | |
| 33 rp1.close(); | |
| 34 } | |
| 35 | |
| 36 static void testMap() { | |
| 37 ReceivePort rp0 = new ReceivePort(); | |
| 38 ReceivePort rp1 = new ReceivePort(); | |
| 39 final map = new Map<SendPort, int>(); | |
| 40 map[rp0.toSendPort()] = 42; | |
| 41 map[rp1.toSendPort()] = 87; | |
| 42 Expect.equals(42, map[rp0.toSendPort()]); | |
| 43 Expect.equals(87, map[rp1.toSendPort()]); | |
| 44 | |
| 45 map[rp0.toSendPort()] = 99; | |
| 46 Expect.equals(99, map[rp0.toSendPort()]); | |
| 47 Expect.equals(87, map[rp1.toSendPort()]); | |
| 48 | |
| 49 map.remove(rp0.toSendPort()); | |
| 50 Expect.equals(false, map.containsKey(rp0.toSendPort())); | |
| 51 Expect.equals(87, map[rp1.toSendPort()]); | |
| 52 | |
| 53 map.remove(rp1.toSendPort()); | |
| 54 Expect.equals(false, map.containsKey(rp0.toSendPort())); | |
| 55 Expect.equals(false, map.containsKey(rp1.toSendPort())); | |
| 56 | |
| 57 rp0.close(); | |
| 58 rp1.close(); | |
| 59 } | |
| 60 | |
| 61 } | 17 } |
| 62 | 18 |
| 63 main() { | 19 void testHashCode() { |
| 64 PortTest.testMain(); | 20 ReceivePort rp0 = new ReceivePort(); |
| 21 ReceivePort rp1 = new ReceivePort(); |
| 22 Expect.equals(rp0.toSendPort().hashCode(), rp0.toSendPort().hashCode()); |
| 23 Expect.equals(rp1.toSendPort().hashCode(), rp1.toSendPort().hashCode()); |
| 24 rp0.close(); |
| 25 rp1.close(); |
| 65 } | 26 } |
| 27 |
| 28 void testEquals() { |
| 29 ReceivePort rp0 = new ReceivePort(); |
| 30 ReceivePort rp1 = new ReceivePort(); |
| 31 Expect.equals(rp0.toSendPort(), rp0.toSendPort()); |
| 32 Expect.equals(rp1.toSendPort(), rp1.toSendPort()); |
| 33 Expect.equals(false, (rp0.toSendPort() == rp1.toSendPort())); |
| 34 rp0.close(); |
| 35 rp1.close(); |
| 36 } |
| 37 |
| 38 void testMap() { |
| 39 ReceivePort rp0 = new ReceivePort(); |
| 40 ReceivePort rp1 = new ReceivePort(); |
| 41 final map = new Map<SendPort, int>(); |
| 42 map[rp0.toSendPort()] = 42; |
| 43 map[rp1.toSendPort()] = 87; |
| 44 Expect.equals(42, map[rp0.toSendPort()]); |
| 45 Expect.equals(87, map[rp1.toSendPort()]); |
| 46 |
| 47 map[rp0.toSendPort()] = 99; |
| 48 Expect.equals(99, map[rp0.toSendPort()]); |
| 49 Expect.equals(87, map[rp1.toSendPort()]); |
| 50 |
| 51 map.remove(rp0.toSendPort()); |
| 52 Expect.equals(false, map.containsKey(rp0.toSendPort())); |
| 53 Expect.equals(87, map[rp1.toSendPort()]); |
| 54 |
| 55 map.remove(rp1.toSendPort()); |
| 56 Expect.equals(false, map.containsKey(rp0.toSendPort())); |
| 57 Expect.equals(false, map.containsKey(rp1.toSendPort())); |
| 58 |
| 59 rp0.close(); |
| 60 rp1.close(); |
| 61 } |
| OLD | NEW |