LogicalNode extends SuperNode { @Override public String toString() { return "LogicalNode [name=" + name + ", type=" + type + ", children=" + getChildren() + "]"; } LogicalNode(final String name);  LogicalNode(final Type type);  LogicalNode(final Type type, final Node... subNodes);  LogicalNode(final Type type, final Collection<Node> subNodes); String getName(); Type getType(); @Override void accept(final PredicateVisitor predicateVisitor); @Override String toString(); @SuppressWarnings("squid:S109") @Override int hashCode(); @SuppressWarnings("squid:MethodCyclomaticComplexity") @Override boolean equals(final Object obj);  }
@Test public void validToString() { assertThat(new LogicalNode("and").toString()).startsWith("LogicalNode "); }