aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google
diff options
context:
space:
mode:
authorGravatar nharmata <nharmata@google.com>2017-12-18 12:36:15 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-18 12:38:35 -0800
commitba14f67679235af1f261b422a8a0098dabe027f8 (patch)
tree7b105d77fd3638e209ca59da9adbb4dc558c40bd /src/test/java/com/google
parentefc86c5d140b277a341128950021c59c85f2304f (diff)
Have GraphTest test rdep consistency conditionally since some graph implementations don't store rdeps for done nodes.
RELNOTES: None PiperOrigin-RevId: 179455698
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r--src/test/java/com/google/devtools/build/skyframe/GraphTest.java26
1 files changed, 19 insertions, 7 deletions
diff --git a/src/test/java/com/google/devtools/build/skyframe/GraphTest.java b/src/test/java/com/google/devtools/build/skyframe/GraphTest.java
index 26fcefc87c..a864f48201 100644
--- a/src/test/java/com/google/devtools/build/skyframe/GraphTest.java
+++ b/src/test/java/com/google/devtools/build/skyframe/GraphTest.java
@@ -58,6 +58,10 @@ public abstract class GraphTest {
protected abstract Version getNextVersion(Version version);
+ protected boolean checkRdeps() {
+ return true;
+ }
+
@Before
public void init() throws Exception {
makeGraph();
@@ -194,7 +198,9 @@ public abstract class GraphTest {
for (int k = chunkSize; k <= numIterations; k++) {
entry.removeReverseDep(key("rdep" + j));
entry.addReverseDepAndCheckIfDone(key("rdep" + j));
- entry.getReverseDepsForDoneEntry();
+ if (checkRdeps()) {
+ entry.getReverseDepsForDoneEntry();
+ }
}
} catch (InterruptedException e) {
fail("Test failed: " + e.toString());
@@ -210,8 +216,10 @@ public abstract class GraphTest {
wrapper.waitForTasksAndMaybeThrow();
assertThat(ExecutorUtil.interruptibleShutdown(pool)).isFalse();
assertThat(graph.get(null, Reason.OTHER, key).getValue()).isEqualTo(new StringValue("foo1"));
- assertThat(graph.get(null, Reason.OTHER, key).getReverseDepsForDoneEntry())
- .hasSize(numKeys + 1);
+ if (checkRdeps()) {
+ assertThat(graph.get(null, Reason.OTHER, key).getReverseDepsForDoneEntry())
+ .hasSize(numKeys + 1);
+ }
graph = getGraph(getNextVersion(startingVersion));
NodeEntry sameEntry = Preconditions.checkNotNull(graph.get(null, Reason.OTHER, key));
@@ -221,8 +229,10 @@ public abstract class GraphTest {
sameEntry.markRebuilding();
sameEntry.setValue(new StringValue("foo2"), getNextVersion(startingVersion));
assertThat(graph.get(null, Reason.OTHER, key).getValue()).isEqualTo(new StringValue("foo2"));
- assertThat(graph.get(null, Reason.OTHER, key).getReverseDepsForDoneEntry())
- .hasSize(numKeys + 1);
+ if (checkRdeps()) {
+ assertThat(graph.get(null, Reason.OTHER, key).getReverseDepsForDoneEntry())
+ .hasSize(numKeys + 1);
+ }
}
// Tests adding inflight nodes with a given key while an existing node with the same key
@@ -450,8 +460,10 @@ public abstract class GraphTest {
NodeEntry entry = graph.get(null, Reason.OTHER, key("foo" + i));
assertThat(entry.getValue()).isEqualTo(new StringValue("bar" + i));
assertThat(entry.getVersion()).isEqualTo(getNextVersion(startingVersion));
- for (SkyKey key : entry.getReverseDepsForDoneEntry()) {
- assertThat(key).isEqualTo(key("rdep"));
+ if (checkRdeps()) {
+ for (SkyKey key : entry.getReverseDepsForDoneEntry()) {
+ assertThat(key).isEqualTo(key("rdep"));
+ }
}
for (SkyKey key : entry.getDirectDeps()) {
assertThat(key).isEqualTo(key("dep"));