diff --git a/quad/computation_graph/test/test_computation_graph.c b/quad/computation_graph/test/test_computation_graph.c
index 1cf2b26d76e50fb2d5951ee1da5da800dbb9d768..b13948aa102ce0bdbfb3ce780bb2da3752a39c7a 100644
--- a/quad/computation_graph/test/test_computation_graph.c
+++ b/quad/computation_graph/test/test_computation_graph.c
@@ -160,6 +160,34 @@ int graph_test_update_rules() {
     return nequal(result, 3);
 }
 
+/*
+C1 --->| accum_b1 --->|
+                      | Add --->
+C2 --->| accum_b2 --->|
+*/
+int graph_test_update_propagation() {
+    struct computation_graph *graph = create_graph();
+    int cblock1 = graph_add_node_const(graph, "const1");
+    int cblock2 = graph_add_node_const(graph, "const2");
+    int accum_b1 = graph_add_node_accum(graph, "accumulator1");
+    int accum_b2 = graph_add_node_accum(graph, "accumulator2");
+    int add_b = graph_add_node_add(graph, "add");
+    graph_set_source(graph, accum_b1, ACCUM_IN, cblock1, CONST_VAL);
+    graph_set_source(graph, accum_b2, ACCUM_IN, cblock2, CONST_VAL);
+    graph_set_source(graph, add_b, ADD_SUMMAND1, accum_b1, ACCUMULATED);
+    graph_set_source(graph, add_b, ADD_SUMMAND2, accum_b2, ACCUMULATED);
+    graph_set_param_val(graph, cblock1, CONST_SET, 5);
+    graph_set_param_val(graph, cblock2, CONST_SET, 2);
+    int to_compute_for[] = {add_b};
+    graph_compute_nodes(graph, to_compute_for, 1);
+    double result1 = graph_get_output(graph, add_b, ADD_SUM);
+    graph_set_param_val(graph, cblock1, CONST_SET, 1);
+    graph_compute_nodes(graph, to_compute_for, 1);
+    double result2 = graph_get_output(graph, add_b, ADD_SUM);
+
+    return nequal(result1, 7) || nequal(result2, 8);
+}
+
 
 int main() {
     int success = 0;
@@ -171,5 +199,6 @@ int main() {
     test(graph_test_reset_rules, "Tests that already connected blocks don't get reset");
     test(graph_test_self_loop, "Tests that a self-loop computation terminates");
     test(graph_test_update_rules, "Tests that nodes only update when their inputs change");
+    test(graph_test_update_propagation, "Tests that updates propagate only to their children");
     test_summary();
 }