GUI Topo -- Cleaned up NodeBadge, now that we have a clearer idea of what we want to model.
Change-Id: I754a94cbd1fbe2a2c8affccaca88c48c3fa33b92
diff --git a/core/api/src/test/java/org/onosproject/ui/topo/NodeBadgeTest.java b/core/api/src/test/java/org/onosproject/ui/topo/NodeBadgeTest.java
index 12b0db6..c824369 100644
--- a/core/api/src/test/java/org/onosproject/ui/topo/NodeBadgeTest.java
+++ b/core/api/src/test/java/org/onosproject/ui/topo/NodeBadgeTest.java
@@ -17,6 +17,7 @@
package org.onosproject.ui.topo;
import org.junit.Test;
+import org.onosproject.ui.topo.NodeBadge.Status;
import static org.junit.Assert.assertEquals;
@@ -25,92 +26,87 @@
*/
public class NodeBadgeTest {
- private static final String SOME_MSG = "a msg";
- private static final String WR_T = "wrong type";
+ private static final String MSG = "a msg";
+ private static final String TXT = "text";
+ private static final String GID = "glyph-id";
+ private static final int NUM = 42;
+ private static final String NUM_STR = Integer.toString(NUM);
+
+ private static final String WR_S = "wrong status";
+ private static final String WR_B = "wrong boolean";
+ private static final String WR_T = "wrong text";
private static final String WR_M = "wrong message";
private static final String WR_SF = "wrong string format";
private NodeBadge badge;
- private String expStr(String t) {
- return "{Badge {" + t + "} \"" + SOME_MSG + "\"}";
- }
-
- private String expNumStr(String n) {
- return "{Badge {n} \"" + n + "\"}";
- }
-
- @Test
- public void info() {
- badge = NodeBadge.info(SOME_MSG);
- assertEquals(WR_T, NodeBadge.Type.INFO, badge.type());
- assertEquals(WR_M, SOME_MSG, badge.message());
- assertEquals(WR_SF, expStr("i"), badge.toString());
- }
-
- @Test
- public void warn() {
- badge = NodeBadge.warn(SOME_MSG);
- assertEquals(WR_T, NodeBadge.Type.WARN, badge.type());
- assertEquals(WR_M, SOME_MSG, badge.message());
- assertEquals(WR_SF, expStr("w"), badge.toString());
- }
-
- @Test
- public void error() {
- badge = NodeBadge.error(SOME_MSG);
- assertEquals(WR_T, NodeBadge.Type.ERROR, badge.type());
- assertEquals(WR_M, SOME_MSG, badge.message());
- assertEquals(WR_SF, expStr("e"), badge.toString());
- }
-
- @Test
- public void checkMark() {
- badge = NodeBadge.checkMark(SOME_MSG);
- assertEquals(WR_T, NodeBadge.Type.CHECK_MARK, badge.type());
- assertEquals(WR_M, SOME_MSG, badge.message());
- assertEquals(WR_SF, expStr("/"), badge.toString());
- }
-
- @Test
- public void xMark() {
- badge = NodeBadge.xMark(SOME_MSG);
- assertEquals(WR_T, NodeBadge.Type.X_MARK, badge.type());
- assertEquals(WR_M, SOME_MSG, badge.message());
- assertEquals(WR_SF, expStr("X"), badge.toString());
- }
-
- @Test
- public void number0() {
- badge = NodeBadge.number(0);
- assertEquals(WR_T, NodeBadge.Type.NUMBER, badge.type());
- assertEquals(WR_M, "0", badge.message());
- assertEquals(WR_SF, expNumStr("0"), badge.toString());
- }
-
- @Test
- public void number5() {
- badge = NodeBadge.number(5);
- assertEquals(WR_T, NodeBadge.Type.NUMBER, badge.type());
- assertEquals(WR_M, "5", badge.message());
- assertEquals(WR_SF, expNumStr("5"), badge.toString());
- }
-
- @Test
- public void number99() {
- badge = NodeBadge.number(99);
- assertEquals(WR_T, NodeBadge.Type.NUMBER, badge.type());
- assertEquals(WR_M, "99", badge.message());
- assertEquals(WR_SF, expNumStr("99"), badge.toString());
+ private void checkFields(NodeBadge b, Status s, boolean g,
+ String txt, String msg) {
+ assertEquals(WR_S, s, b.status());
+ assertEquals(WR_B, g, b.isGlyph());
+ assertEquals(WR_T, txt, b.text());
+ assertEquals(WR_M, msg, b.message());
}
@Test
public void badgeTypes() {
- assertEquals(WR_SF, "i", NodeBadge.Type.INFO.code());
- assertEquals(WR_SF, "w", NodeBadge.Type.WARN.code());
- assertEquals(WR_SF, "e", NodeBadge.Type.ERROR.code());
- assertEquals(WR_SF, "/", NodeBadge.Type.CHECK_MARK.code());
- assertEquals(WR_SF, "X", NodeBadge.Type.X_MARK.code());
- assertEquals(WR_SF, "n", NodeBadge.Type.NUMBER.code());
+ assertEquals(WR_SF, "i", Status.INFO.code());
+ assertEquals(WR_SF, "w", Status.WARN.code());
+ assertEquals(WR_SF, "e", Status.ERROR.code());
+ assertEquals("unexpected size", 3, Status.values().length);
+ }
+
+ @Test
+ public void textOnly() {
+ badge = NodeBadge.text(TXT);
+ checkFields(badge, Status.INFO, false, TXT, null);
+ }
+
+ @Test
+ public void glyphOnly() {
+ badge = NodeBadge.glyph(GID);
+ checkFields(badge, Status.INFO, true, GID, null);
+ }
+
+ @Test
+ public void numberOnly() {
+ badge = NodeBadge.number(NUM);
+ checkFields(badge, Status.INFO, false, NUM_STR, null);
+ }
+
+ @Test
+ public void textInfo() {
+ badge = NodeBadge.text(Status.INFO, TXT);
+ checkFields(badge, Status.INFO, false, TXT, null);
+ }
+
+ @Test
+ public void glyphWarn() {
+ badge = NodeBadge.glyph(Status.WARN, GID);
+ checkFields(badge, Status.WARN, true, GID, null);
+ }
+
+ @Test
+ public void numberError() {
+ badge = NodeBadge.number(Status.ERROR, NUM);
+ checkFields(badge, Status.ERROR, false, NUM_STR, null);
+ }
+
+ @Test
+ public void textInfoMsg() {
+ badge = NodeBadge.text(Status.INFO, TXT, MSG);
+ checkFields(badge, Status.INFO, false, TXT, MSG);
+ }
+
+ @Test
+ public void glyphWarnMsg() {
+ badge = NodeBadge.glyph(Status.WARN, GID, MSG);
+ checkFields(badge, Status.WARN, true, GID, MSG);
+ }
+
+ @Test
+ public void numberErrorMsg() {
+ badge = NodeBadge.number(Status.ERROR, NUM, MSG);
+ checkFields(badge, Status.ERROR, false, NUM_STR, MSG);
}
}
diff --git a/core/api/src/test/java/org/onosproject/ui/topo/TopoJsonTest.java b/core/api/src/test/java/org/onosproject/ui/topo/TopoJsonTest.java
index 3b572a97..50aabf8 100644
--- a/core/api/src/test/java/org/onosproject/ui/topo/TopoJsonTest.java
+++ b/core/api/src/test/java/org/onosproject/ui/topo/TopoJsonTest.java
@@ -21,9 +21,11 @@
import org.junit.Test;
import org.onosproject.ui.JsonUtils;
import org.onosproject.ui.topo.Highlights.Amount;
+import org.onosproject.ui.topo.NodeBadge.Status;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
/**
* Unit tests for {@link TopoJson}.
@@ -32,7 +34,8 @@
private static final String DEV1 = "device-1";
private static final String DEV2 = "device-2";
- private static final String BADGE_MSG = "Hello there";
+ private static final String SOME_MSG = "Hello there";
+ private static final String GID = "glyph-ID";
private ObjectNode payload;
@@ -78,15 +81,15 @@
public void badgedDevice() {
Highlights h = new Highlights();
DeviceHighlight dh = new DeviceHighlight(DEV1);
- dh.setBadge(NodeBadge.info(BADGE_MSG));
- h.add(dh);
-
- dh = new DeviceHighlight(DEV2);
dh.setBadge(NodeBadge.number(7));
h.add(dh);
+ dh = new DeviceHighlight(DEV2);
+ dh.setBadge(NodeBadge.glyph(Status.WARN, GID, SOME_MSG));
+ h.add(dh);
+
payload = TopoJson.json(h);
- System.out.println(payload);
+// System.out.println(payload);
// dig into the payload, and verify the badges are set on the devices
ArrayNode a = (ArrayNode) payload.get(TopoJson.DEVICES);
@@ -96,15 +99,19 @@
ObjectNode b = (ObjectNode) d.get(TopoJson.BADGE);
assertNotNull("missing badge", b);
- assertEquals("wrong type code", "i", b.get(TopoJson.TYPE).asText());
- assertEquals("wrong message", BADGE_MSG, b.get(TopoJson.MSG).asText());
+ assertEquals("wrong status code", "i", b.get(TopoJson.STATUS).asText());
+ assertEquals("wrong text", "7", b.get(TopoJson.TXT).asText());
+ assertNull("glyph?", b.get(TopoJson.GID));
+ assertNull("msg?", b.get(TopoJson.MSG));
d = (ObjectNode) a.get(1);
assertEquals("wrong device id", DEV2, d.get(TopoJson.ID).asText());
b = (ObjectNode) d.get(TopoJson.BADGE);
assertNotNull("missing badge", b);
- assertEquals("wrong type code", "n", b.get(TopoJson.TYPE).asText());
- assertEquals("wrong message", "7", b.get(TopoJson.MSG).asText());
+ assertEquals("wrong status code", "w", b.get(TopoJson.STATUS).asText());
+ assertNull("text?", b.get(TopoJson.TXT));
+ assertEquals("wrong text", GID, b.get(TopoJson.GID).asText());
+ assertEquals("wrong message", SOME_MSG, b.get(TopoJson.MSG).asText());
}
}