diff --git a/net/core/trivial/src/test/java/org/onlab/onos/impl/GreetManagerTest.java b/net/core/trivial/src/test/java/org/onlab/onos/impl/GreetManagerTest.java
new file mode 100644
index 0000000..c498660
--- /dev/null
+++ b/net/core/trivial/src/test/java/org/onlab/onos/impl/GreetManagerTest.java
@@ -0,0 +1,31 @@
+package org.onlab.onos.impl;
+
+import org.junit.Test;
+import org.onlab.onos.GreetService;
+
+import java.util.Iterator;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+
+/**
+ * Example of a component &amp; service implementation unit test.
+ */
+public class GreetManagerTest {
+
+    @Test
+    public void basics() {
+        GreetService service = new GreetManager();
+        assertEquals("incorrect greeting", "Whazup dude?", service.yo("dude"));
+
+        Iterator<String> names = service.names().iterator();
+        assertEquals("incorrect name", "dude", names.next());
+        assertFalse("no more names expected", names.hasNext());
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void nullArg() {
+        new GreetManager().yo(null);
+    }
+
+}
