annotate graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeMapTest.java @ 18226:6eda3b299460

Record compilation dependencies with +LogCompilation
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Fri, 31 Oct 2014 12:20:56 -0700
parents 45b45f902bed
children f57d86eb036f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
1 /*
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
2 * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
4 *
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
5 * This code is free software; you can redistribute it and/or modify it
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
6 * under the terms of the GNU General Public License version 2 only, as
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
7 * published by the Free Software Foundation.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
8 *
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
9 * This code is distributed in the hope that it will be useful, but WITHOUT
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
12 * version 2 for more details (a copy is included in the LICENSE file that
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
13 * accompanied this code).
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
14 *
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License version
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
16 * 2 along with this work; if not, write to the Free Software Foundation,
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
18 *
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
20 * or visit www.oracle.com if you need additional information or have any
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
21 * questions.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
22 */
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
23 package com.oracle.graal.graph.test;
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
24
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
25 import static org.junit.Assert.*;
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
26
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
27 import org.junit.*;
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
28
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
29 import com.oracle.graal.api.runtime.*;
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
30 import com.oracle.graal.graph.*;
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
31 import com.oracle.graal.nodeinfo.*;
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
32
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
33 public class NodeMapTest {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
34
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
35 @NodeInfo
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
36 static class TestNode extends Node {
17309
845e881ce054 constructors in a Node class must be protected
Doug Simon <doug.simon@oracle.com>
parents: 17042
diff changeset
37 protected TestNode() {
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
38 }
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
39
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
40 public static TestNode create() {
17450
45b45f902bed removed Node generation (GRAAL-857)
Doug Simon <doug.simon@oracle.com>
parents: 17309
diff changeset
41 return new TestNode();
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
42 }
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
43 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
44
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
45 private Graph graph;
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
46 private TestNode[] nodes = new TestNode[100];
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
47 private NodeMap<Integer> map;
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
48
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
49 @Before
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
50 public void before() {
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
51 // Need to initialize HotSpotGraalRuntime before any Node class is initialized.
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
52 Graal.getRuntime();
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
53
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
54 graph = new Graph();
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
55 for (int i = 0; i < nodes.length; i++) {
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
56 nodes[i] = graph.add(TestNode.create());
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
57 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
58 map = new NodeMap<>(graph);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
59 for (int i = 0; i < nodes.length; i += 2) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
60 map.set(nodes[i], i);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
61 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
62 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
63
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
64 @Test
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
65 public void testEmpty() {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
66 NodeMap<Integer> emptyMap = new NodeMap<>(graph);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
67 for (TestNode node : nodes) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
68 assertEquals(null, emptyMap.get(node));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
69 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
70 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
71
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
72 @Test
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
73 public void testSimple() {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
74 for (int i = 0; i < nodes.length; i++) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
75 if ((i & 1) == 0) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
76 assertEquals((Integer) i, map.get(nodes[i]));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
77 } else {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
78 assertEquals(null, map.get(nodes[i]));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
79 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
80 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
81 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
82
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
83 @Test
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
84 public void testSimpleChanged() {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
85 for (TestNode node : nodes) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
86 map.set(node, 1);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
87 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
88 for (TestNode node : nodes) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
89 map.set(node, null);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
90 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
91 for (int i = 0; i < nodes.length; i += 2) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
92 map.set(nodes[i], i);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
93 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
94
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
95 for (int i = 0; i < nodes.length; i++) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
96 if ((i & 1) == 0) {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
97 assertEquals((Integer) i, map.get(nodes[i]));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
98 } else {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
99 assertEquals(null, map.get(nodes[i]));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
100 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
101 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
102 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
103
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
104 @SuppressWarnings("all")
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
105 private static boolean assertionsEnabled() {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
106 boolean assertionsEnabled = false;
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
107 assert assertionsEnabled = true;
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
108 return assertionsEnabled;
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
109 }
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
110
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
111 @Test
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
112 public void testNewGet() {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
113 /*
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
114 * Failing here is not required, but if this behavior changes, usages of get need to be
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
115 * checked for compatibility.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
116 */
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
117 TestNode newNode = graph.add(TestNode.create());
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
118 try {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
119 map.get(newNode);
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
120 fail("expected " + (assertionsEnabled() ? AssertionError.class.getSimpleName() : ArrayIndexOutOfBoundsException.class.getSimpleName()));
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
121 } catch (AssertionError ae) {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
122 // thrown when assertions are enabled
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
123 } catch (ArrayIndexOutOfBoundsException e) {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
124 // thrown when assertions are disabled
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
125 }
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
126 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
127
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
128 @Test
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
129 public void testNewSet() {
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
130 /*
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
131 * Failing here is not required, but if this behavior changes, usages of set need to be
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
132 * checked for compatibility.
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
133 */
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
134 TestNode newNode = graph.add(TestNode.create());
17042
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
135 try {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
136 map.set(newNode, 1);
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
137 fail("expected " + (assertionsEnabled() ? AssertionError.class.getSimpleName() : ArrayIndexOutOfBoundsException.class.getSimpleName()));
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
138 } catch (AssertionError ae) {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
139 // thrown when assertions are enabled
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
140 } catch (ArrayIndexOutOfBoundsException e) {
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
141 // thrown when assertions are disabled
9fe9d32e00b5 fixed unit tests so that they pass when assertions are disabled
Doug Simon <doug.simon@oracle.com>
parents: 16919
diff changeset
142 }
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
143 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
144
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
145 @Test
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
146 public void testNewGetAndGrow() {
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
147 TestNode newNode = graph.add(TestNode.create());
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
148 assertEquals(null, map.getAndGrow(newNode));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
149 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
150
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
151 @Test
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
152 public void testNewSetAndGrow() {
16895
06c15e88d383 added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Doug Simon <doug.simon@oracle.com>
parents: 15951
diff changeset
153 TestNode newNode = graph.add(TestNode.create());
15901
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
154 map.setAndGrow(newNode, 1);
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
155 assertEquals((Integer) 1, map.get(newNode));
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
156 }
dd863084c7ad tests for NodeMap
Lukas Stadler <lukas.stadler@oracle.com>
parents:
diff changeset
157 }