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 // Dart test using an identity hash. | 4 // Dart test using an identity hash. |
5 | 5 |
6 interface BigGame extends Hashable { | 6 interface BigGame extends Hashable { |
7 final String name; | 7 final String name; |
8 } | 8 } |
9 | 9 |
10 class Giraffe implements BigGame { | 10 class Giraffe implements BigGame { |
(...skipping 27 matching lines...) Expand all Loading... |
38 static void testMain() { | 38 static void testMain() { |
39 Map<BigGame, String> savannah = new Map<BigGame, String>(); | 39 Map<BigGame, String> savannah = new Map<BigGame, String>(); |
40 Giraffe giraffe1 = new Giraffe("Tony"); | 40 Giraffe giraffe1 = new Giraffe("Tony"); |
41 Giraffe giraffe2 = new Giraffe("Rose"); | 41 Giraffe giraffe2 = new Giraffe("Rose"); |
42 savannah[giraffe1] = giraffe1.name; | 42 savannah[giraffe1] = giraffe1.name; |
43 savannah[giraffe2] = giraffe2.name; | 43 savannah[giraffe2] = giraffe2.name; |
44 | 44 |
45 var count = savannah.length; | 45 var count = savannah.length; |
46 print("getCount is $count"); | 46 print("getCount is $count"); |
47 Expect.equals(2, count); | 47 Expect.equals(2, count); |
48 print("giraffe1: " + savannah[giraffe1]); | 48 print("giraffe1: ${savannah[giraffe1]}"); |
49 print("giraffe2: " + savannah[giraffe2]); | 49 print("giraffe2: ${savannah[giraffe2]}"); |
50 Expect.equals("Tony", savannah[giraffe1]); | 50 Expect.equals("Tony", savannah[giraffe1]); |
51 Expect.equals("Rose", savannah[giraffe2]); | 51 Expect.equals("Rose", savannah[giraffe2]); |
52 | 52 |
53 bool caught = false; | 53 bool caught = false; |
54 Zebra zebra1 = new Zebra("Paul"); | 54 Zebra zebra1 = new Zebra("Paul"); |
55 Zebra zebra2 = new Zebra("Joe"); | 55 Zebra zebra2 = new Zebra("Joe"); |
56 try { | 56 try { |
57 savannah[zebra1] = zebra1.name; | 57 savannah[zebra1] = zebra1.name; |
58 savannah[zebra2] = zebra2.name; | 58 savannah[zebra2] = zebra2.name; |
59 } catch (NoSuchMethodException e) { | 59 } catch (NoSuchMethodException e) { |
60 print("Caught: $e"); | 60 print("Caught: $e"); |
61 caught = true; | 61 caught = true; |
62 } | 62 } |
63 Expect.equals(true, caught); | 63 Expect.equals(true, caught); |
64 | 64 |
65 count = savannah.length; | 65 count = savannah.length; |
66 print("getCount is $count"); | 66 print("getCount is $count"); |
67 Expect.equals(2, count); | 67 Expect.equals(2, count); |
68 | 68 |
69 caught = false; | 69 caught = false; |
70 try { | 70 try { |
71 print("zebra1: " + savannah[zebra1]); | 71 print("zebra1: ${savannah[zebra1]}"); |
72 print("zebra2: " + savannah[zebra2]); | 72 print("zebra2: ${savannah[zebra2]}"); |
73 } catch (NoSuchMethodException e) { | 73 } catch (NoSuchMethodException e) { |
74 print("Caught: $e"); | 74 print("Caught: $e"); |
75 caught = true; | 75 caught = true; |
76 } | 76 } |
77 Expect.equals(true, caught); | 77 Expect.equals(true, caught); |
78 } | 78 } |
79 | 79 |
80 } | 80 } |
81 | 81 |
82 main() { | 82 main() { |
83 SavannahTest.testMain(); | 83 SavannahTest.testMain(); |
84 } | 84 } |
OLD | NEW |