### Question:
GraphMap implements GraphManager { @Override public synchronized void registerNode(Object nodeId, Object nodeObject) { nodes.put(nodeId, nodeObject); } GraphMap(); @Override Collection<Object> registeredNodes(); @Override synchronized Object getNode(Object nodeId); @Override synchronized void registerNode(Object nodeId, Object nodeObject); @Override synchronized Object unregisterNode(Object nodeId); @Override void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId); @Override void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId); @Override void nodeCreated(Object nodeId); @Override void nodeRemoved(Object nodeId); @Override void nodeIdChanged(Object nodeId, Object newId); @Override void nodePropertyChanged(
            Object nodeId,
            String property,
            Object oldValue,
            Object newValue);  }### Answer:
@Test public void testRegisterNode() { GraphMap map = new GraphMap(); Object node = new Object(); map.registerNode("key", node); assertSame(node, map.getNode("key")); }