Fixed annotation handling.
- Store as SparseAnnotations internally and convert to Annotations
when merging multiple provider supplied annotations.
Change-Id: I82fe159b536b3e7344a33e09792f6a3473fb3500
diff --git a/core/api/src/test/java/org/onlab/onos/net/ConnectPointTest.java b/core/api/src/test/java/org/onlab/onos/net/ConnectPointTest.java
index 6d3e793..6b9f777 100644
--- a/core/api/src/test/java/org/onlab/onos/net/ConnectPointTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/ConnectPointTest.java
@@ -33,4 +33,4 @@
.addEqualityGroup(new ConnectPoint(DID2, P1), new ConnectPoint(DID2, P1))
.testEquals();
}
-}
\ No newline at end of file
+}
diff --git a/core/api/src/test/java/org/onlab/onos/net/DefaultAnnotationsTest.java b/core/api/src/test/java/org/onlab/onos/net/DefaultAnnotationsTest.java
index 274f4b8..9132126 100644
--- a/core/api/src/test/java/org/onlab/onos/net/DefaultAnnotationsTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/DefaultAnnotationsTest.java
@@ -36,6 +36,23 @@
}
@Test
+ public void union() {
+ annotations = builder().set("foo", "1").set("bar", "2").remove("buz").build();
+ assertEquals("incorrect keys", of("foo", "bar", "buz"), annotations.keys());
+
+ SparseAnnotations updates = builder().remove("foo").set("bar", "3").set("goo", "4").remove("fuzz").build();
+
+ SparseAnnotations result = DefaultAnnotations.union(annotations, updates);
+
+ assertTrue("remove instruction in original remains", result.isRemoved("buz"));
+ assertTrue("remove instruction in update remains", result.isRemoved("fuzz"));
+ assertEquals("incorrect keys", of("buz", "goo", "bar", "fuzz"), result.keys());
+ assertNull("incorrect value", result.value("foo"));
+ assertEquals("incorrect value", "3", result.value("bar"));
+ assertEquals("incorrect value", "4", result.value("goo"));
+ }
+
+ @Test
public void merge() {
annotations = builder().set("foo", "1").set("bar", "2").build();
assertEquals("incorrect keys", of("foo", "bar"), annotations.keys());
@@ -65,4 +82,4 @@
DefaultAnnotations.merge(null, null);
}
-}
\ No newline at end of file
+}
diff --git a/core/api/src/test/java/org/onlab/onos/net/DefaultDeviceTest.java b/core/api/src/test/java/org/onlab/onos/net/DefaultDeviceTest.java
index b4018e3..329e128 100644
--- a/core/api/src/test/java/org/onlab/onos/net/DefaultDeviceTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/DefaultDeviceTest.java
@@ -58,7 +58,5 @@
assertEquals("incorrect hw", HW, device.hwVersion());
assertEquals("incorrect sw", SW, device.swVersion());
assertEquals("incorrect serial", SN1, device.serialNumber());
- assertEquals("incorrect serial", SN1, device.serialNumber());
}
-
-}
\ No newline at end of file
+}
diff --git a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultGraphDescriptionTest.java b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultGraphDescriptionTest.java
index a968abf..5f7d47b 100644
--- a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultGraphDescriptionTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultGraphDescriptionTest.java
@@ -37,5 +37,4 @@
new DefaultGraphDescription(4321L, ImmutableSet.of(DEV1, DEV3),
ImmutableSet.of(L1, L2));
}
-
-}
\ No newline at end of file
+}
diff --git a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyEdgeTest.java b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyEdgeTest.java
index 6c3c112..5d64c83 100644
--- a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyEdgeTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyEdgeTest.java
@@ -50,5 +50,4 @@
new DefaultTopologyEdge(V2, V1, L2))
.testEquals();
}
-
-}
\ No newline at end of file
+}
diff --git a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyVertexTest.java b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyVertexTest.java
index 1284624..7210ff3 100644
--- a/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyVertexTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/topology/DefaultTopologyVertexTest.java
@@ -26,5 +26,4 @@
.addEqualityGroup(new DefaultTopologyVertex(D2),
new DefaultTopologyVertex(D2)).testEquals();
}
-
-}
\ No newline at end of file
+}