diff --git a/node/node_test.go b/node/node_test.go
index b7b67fd3e56b1c50bb384e8fdeede63c48abd3d9..ed01d1b43927cea2e514a4a2fc9d2fb8f9c1935d 100644
--- a/node/node_test.go
+++ b/node/node_test.go
@@ -135,3 +135,21 @@ func TestRadioNode_ConfigChangePropagation(t *testing.T) {
 		n.Wait()
 	}
 }
+
+func TestRadioNode_UpdatesDoNotTriggerIfNothingChanged(t *testing.T) {
+	etcd := util.NewTestEtcdClient()
+	loadTestData(etcd)
+	node := startTestNodes(1, etcd)[0]
+
+	for i := 0; i < 10; i++ {
+		time.Sleep(100 * time.Millisecond)
+		etcd.Set(autoradio.MountPrefix+"test.ogg",
+			`{"Name": "/test.ogg", "Username": "source1", "Password": "foo"}`,
+			86400)
+	}
+
+	numUpdates := node.icecast.(*mockController).numUpdates
+	if numUpdates != 1 {
+		t.Errorf("node received %d updates (expected 1)", numUpdates)
+	}
+}