Graph { void clear() { Arrays.fill(topologies, Topology.unknown()); for (int i = 0; i < order; i++) { atoms[i] = null; degrees[i] = 0; } order = 0; size = 0; } Graph(int expSize);   Graph(Graph org); Atom atom(int i); int degree(int u); List<Edge> edges(int u); int[] neighbors(int u); boolean adjacent(int u, int v); int implHCount(int u); Edge edge(int u, int v); Edge edgeAt(int u, int j); Topology topologyOf(int u); Configuration configurationOf(int u); int order(); int size(); static Graph fromSmiles(String smi); static Graph parse(String smi, boolean strict, Set<String> warnings); String toSmiles(); String toSmiles(int[] visitedAt); Graph aromatic(); Graph resonate(); Graph kekule(); boolean assignable(); Graph permute(int[] p); Iterable<Atom> atoms(); Iterable<Edge> edges(); int getFlags(final int mask); int getFlags(); void setTitle(String title); String getTitle(); Graph sort(EdgeComparator comparator); static final int HAS_AROM; static final int HAS_ATM_STRO; static final int HAS_EXT_STRO; static final int HAS_BND_STRO; static final int HAS_STRO; }
@Test public void clear() { Graph g = new Graph(2); g.addAtom(mock(Atom.class)); g.addAtom(mock(Atom.class)); g.addAtom(mock(Atom.class)); g.addEdge(new Edge(0, 1, Bond.IMPLICIT)); g.addEdge(new Edge(1, 2, Bond.IMPLICIT)); assertThat(g.order(), is(3)); assertThat(g.size(), is(2)); assertThat(g.edges(0).size(), is(1)); assertThat(g.edges(0), hasItem(new Edge(0, 1, Bond.IMPLICIT))); assertThat(g.edges(1).size(), is(2)); assertThat(g.edges(1), hasItems(new Edge(0, 1, Bond.IMPLICIT), new Edge(1, 0, Bond.IMPLICIT))); g.clear(); assertThat(g.order(), is(0)); assertThat(g.size(), is(0)); }