StateNode { public void forEachFeature(ForEachCallback<Double, NodeFeature> callback) { features.forEach(callback); } StateNode(int id, StateTree tree); StateTree getTree(); int getId(); NodeList getList(int id); NodeMap getMap(int id); boolean hasFeature(int id); void forEachFeature(ForEachCallback<Double, NodeFeature> callback); JsonObject getDebugJson(); boolean isUnregistered(); void unregister(); EventRemover addUnregisterListener(NodeUnregisterListener listener); Node getDomNode(); void setDomNode(Node node); EventRemover addDomNodeSetListener(
            Function<StateNode, Boolean> listener); StateNode getParent(); void setParent(StateNode parent); void setNodeData(T object); T getNodeData(Class<T> clazz); void clearNodeData(T object);  }
@Test public void testDefaultNoFeatures() { node.forEachFeature((ns, id) -> Assert.fail()); }