bug 250829 - continued refactoring of VEX Document Model.
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Document.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Document.java
index a200091..fdfbb23 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Document.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Document.java
@@ -293,9 +293,9 @@
VEXElement[] children = e1.getChildElements();
Content newContent = new GapContent(endOffset - startOffset);
- String s = this.content.getString(startOffset, endOffset - startOffset);
+ String s = content.getString(startOffset, endOffset - startOffset);
newContent.insertString(0, s);
- List newChildren = new ArrayList();
+ List<VEXElement> newChildren = new ArrayList<VEXElement>();
for (int i = 0; i < children.length; i++) {
VEXElement child = children[i];
if (child.getEndOffset() <= startOffset) {
@@ -303,14 +303,12 @@
} else if (child.getStartOffset() >= endOffset) {
break;
} else {
- newChildren.add(this.cloneElement(child, newContent,
+ newChildren.add(cloneElement(child, newContent,
-startOffset, null));
}
}
- VEXElement[] elementArray = (VEXElement[]) newChildren
- .toArray(new VEXElement[newChildren.size()]);
- return new DocumentFragment(newContent, elementArray);
+ return new DocumentFragment(newContent, newChildren);
}
/* (non-Javadoc)
@@ -399,17 +397,17 @@
* child elements that are within the run
*/
static VEXNode[] createNodeArray(Content content, int startOffset,
- int endOffset, VEXElement[] elements) {
+ int endOffset, List<VEXElement> elements) {
List nodes = new ArrayList();
int offset = startOffset;
- for (int i = 0; i < elements.length; i++) {
- int start = elements[i].getStartOffset();
+ for (int i = 0; i < elements.size(); i++) {
+ int start = elements.get(i).getStartOffset();
if (offset < start) {
nodes.add(new Text(content, offset, start));
}
- nodes.add(elements[i]);
- offset = elements[i].getEndOffset() + 1;
+ nodes.add(elements.get(i));
+ offset = elements.get(i).getEndOffset() + 1;
}
if (offset < endOffset) {
@@ -598,9 +596,9 @@
index++;
}
- VEXElement[] elements = fragment.getElements();
- for (int i = 0; i < elements.length; i++) {
- VEXElement newElement = this.cloneElement(elements[i], this.content,
+ List<VEXElement> elements = fragment.getElements();
+ for (int i = 0; i < elements.size(); i++) {
+ VEXElement newElement = this.cloneElement(elements.get(i), this.content,
offset, parent);
parent.insertChild(index, newElement);
index++;
@@ -934,11 +932,11 @@
clone.setContent(content, original.getStartOffset() + shift, original
.getEndOffset()
+ shift);
- String[] attrNames = original.getAttributeNames();
- for (int i = 0; i < attrNames.length; i++) {
+ List<String> attrNames = original.getAttributeNames();
+ for (int i = 0; i < attrNames.size(); i++) {
try {
- clone.setAttribute(attrNames[i], original
- .getAttribute(attrNames[i]));
+ clone.setAttribute(attrNames.get(i), original
+ .getAttribute(attrNames.get(i)));
} catch (DocumentValidationException ex) {
throw new RuntimeException("Unexpected exception: " + ex);
}
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentFragment.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentFragment.java
index 7f77b1f..8edc700 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentFragment.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentFragment.java
@@ -30,7 +30,7 @@
public class DocumentFragment implements Serializable, VEXDocumentFragment {
private Content content;
- private VEXElement[] elements;
+ private List<VEXElement> elements;
/**
* Class constructor.
@@ -40,7 +40,7 @@
* @param elementArray
* Elements that make up this fragment.
*/
- public DocumentFragment(Content content, VEXElement[] elementArray) {
+ public DocumentFragment(Content content, List<VEXElement> elementArray) {
this.content = content;
this.elements = elementArray;
}
@@ -62,7 +62,7 @@
/* (non-Javadoc)
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXDocumentFragment#getElements()
*/
- public VEXElement[] getElements() {
+ public List<VEXElement> getElements() {
return this.elements;
}
@@ -99,10 +99,10 @@
*/
private void writeObject(ObjectOutputStream out) throws IOException {
- out.writeUTF(this.content.getString(0, this.content.getLength()));
- out.writeInt(this.elements.length);
- for (int i = 0; i < this.elements.length; i++) {
- this.writeElement(this.elements[i], out);
+ out.writeUTF(content.getString(0, content.getLength()));
+ out.writeInt(elements.size());
+ for (int i = 0; i < elements.size(); i++) {
+ this.writeElement(elements.get(i), out);
}
}
@@ -112,11 +112,11 @@
out.writeObject(element.getName());
out.writeInt(element.getStartOffset());
out.writeInt(element.getEndOffset());
- String[] attrNames = element.getAttributeNames();
- out.writeInt(attrNames.length);
- for (int i = 0; i < attrNames.length; i++) {
- out.writeObject(attrNames[i]);
- out.writeObject(element.getAttribute(attrNames[i]));
+ List<String> attrNames = element.getAttributeNames();
+ out.writeInt(attrNames.size());
+ for (int i = 0; i < attrNames.size(); i++) {
+ out.writeObject(attrNames.get(i));
+ out.writeObject(element.getAttribute(attrNames.get(i)));
}
VEXElement[] children = element.getChildElements();
out.writeInt(children.length);
@@ -132,9 +132,9 @@
this.content = new GapContent(s.length());
content.insertString(0, s);
int n = in.readInt();
- this.elements = new Element[n];
+ elements = new ArrayList<VEXElement>(n);
for (int i = 0; i < n; i++) {
- this.elements[i] = this.readElement(in);
+ elements.add(readElement(in));
}
}
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriter.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriter.java
index 2beafec..e0745d7 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriter.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriter.java
@@ -15,6 +15,8 @@
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
import org.eclipse.wst.xml.vex.core.internal.provisional.dom.VEXDocument;
import org.eclipse.wst.xml.vex.core.internal.provisional.dom.VEXElement;
@@ -283,10 +285,10 @@
} else {
VEXElement element = (VEXElement) node;
VEXNode[] content = element.getChildNodes();
- String[] attrs = element.getAttributeNames();
- Arrays.sort(attrs);
+ List<String> attrs = element.getAttributeNames();
+ Collections.sort(attrs);
- if (attrs.length == 0) {
+ if (attrs.size() == 0) {
if (content.length == 0) {
wrapper.add("<" + element.getName() + " />");
} else {
@@ -295,16 +297,16 @@
} else {
Validator validator = element.getDocument().getValidator();
StringBuffer sb = new StringBuffer();
- for (int i = 0; i < attrs.length; i++) {
+ for (int i = 0; i < attrs.size(); i++) {
sb.setLength(0);
if (i == 0) {
sb.append("<" + element.getName());
}
- if (!attrHasDefaultValue(validator, element, attrs[i])) {
- sb.append(attrToString(attrs[i], element
- .getAttribute(attrs[i])));
+ if (!attrHasDefaultValue(validator, element, attrs.get(i))) {
+ sb.append(attrToString(attrs.get(i), element
+ .getAttribute(attrs.get(i))));
}
- if (i == attrs.length - 1) {
+ if (i == attrs.size() - 1) {
if (content.length == 0) {
sb.append("/>");
} else {
@@ -329,17 +331,17 @@
Validator validator = element.getDocument().getValidator();
- String[] attrs = element.getAttributeNames();
- Arrays.sort(attrs);
+ List<String> attrs = element.getAttributeNames();
+ Collections.sort(attrs);
StringBuffer sb = new StringBuffer();
- for (int i = 0; i < attrs.length; i++) {
- if (attrHasDefaultValue(validator, element, attrs[i])) {
+ for (int i = 0; i < attrs.size(); i++) {
+ if (attrHasDefaultValue(validator, element, attrs.get(i))) {
continue;
}
sb.append(" ");
- sb.append(attrs[i]);
+ sb.append(attrs.get(i));
sb.append("=\"");
- sb.append(escape(element.getAttribute(attrs[i])));
+ sb.append(escape(element.getAttribute(attrs.get(i))));
sb.append("\"");
}
return sb.toString();
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Element.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Element.java
index d26abd7..06ca1f4 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Element.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/dom/Element.java
@@ -10,7 +10,9 @@
*******************************************************************************/
package org.eclipse.wst.xml.vex.core.internal.dom;
+import java.lang.reflect.Array;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
@@ -35,7 +37,6 @@
private List children = new ArrayList();
private Map attributes = new HashMap();
-
/**
* Class constructor.
*
@@ -46,15 +47,21 @@
this.name = name;
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#addChild(org.eclipse.wst.xml.vex.core.internal.dom.Element)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#addChild(org.eclipse
+ * .wst.xml.vex.core.internal.dom.Element)
*/
public void addChild(VEXElement child) {
this.children.add(child);
child.setParent(this);
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#clone()
*/
public Object clone() {
@@ -74,46 +81,65 @@
}
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getAttribute(java.lang.String)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getAttribute(java
+ * .lang.String)
*/
public String getAttribute(String name) {
return (String) attributes.get(name);
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getAttributeNames()
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getAttributeNames()
*/
- public String[] getAttributeNames() {
+ public List<String> getAttributeNames() {
Collection names = this.attributes.keySet();
- return (String[]) names.toArray(new String[names.size()]);
+ List attributeNames = Arrays.asList((String[]) names.toArray(new String[names.size()]));
+ return attributeNames;
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildIterator()
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildIterator()
*/
public Iterator getChildIterator() {
return this.children.iterator();
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildElements()
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildElements()
*/
public VEXElement[] getChildElements() {
int size = this.children.size();
return (VEXElement[]) this.children.toArray(new VEXElement[size]);
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildNodes()
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getChildNodes()
*/
public VEXNode[] getChildNodes() {
- return Document.createNodeArray(this.getContent(), this
- .getStartOffset() + 1, this.getEndOffset(), this
- .getChildElements());
+ List<VEXElement> childElements = Arrays.asList(getChildElements());
+ return Document.createNodeArray(getContent(), getStartOffset() + 1,
+ getEndOffset(), childElements);
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getDocument()
*/
public VEXDocument getDocument() {
@@ -128,21 +154,27 @@
}
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getName()
*/
public String getName() {
return this.name;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getParent()
*/
public VEXElement getParent() {
return this.parent;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#getText()
*/
public String getText() {
@@ -163,18 +195,24 @@
*/
public void insertChild(int index, VEXElement child) {
this.children.add(index, child);
- child.setParent(this);
+ child.setParent(this);
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#isEmpty()
*/
public boolean isEmpty() {
return this.getStartOffset() + 1 == this.getEndOffset();
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#removeAttribute(java.lang.String)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#removeAttribute
+ * (java.lang.String)
*/
public void removeAttribute(String name) throws DocumentValidationException {
@@ -185,7 +223,7 @@
}
VEXDocument doc = this.getDocument();
if (doc != null) { // doc may be null, e.g. when we're cloning an
- // element
+ // element
// to produce a document fragment
IUndoableEdit edit = doc.isUndoEnabled() ? new AttributeChangeEdit(
@@ -196,8 +234,12 @@
}
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#setAttribute(java.lang.String, java.lang.String)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#setAttribute(java
+ * .lang.String, java.lang.String)
*/
public void setAttribute(String name, String value)
throws DocumentValidationException {
@@ -214,7 +256,7 @@
this.attributes.put(name, value);
VEXDocument doc = this.getDocument();
if (doc != null) { // doc may be null, e.g. when we're cloning an
- // element
+ // element
// to produce a document fragment
IUndoableEdit edit = doc.isUndoEnabled() ? new AttributeChangeEdit(
@@ -228,14 +270,20 @@
}
- /* (non-Javadoc)
- * @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#setParent(org.eclipse.wst.xml.vex.core.internal.dom.Element)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#setParent(org.eclipse
+ * .wst.xml.vex.core.internal.dom.Element)
*/
public void setParent(Element parent) {
this.parent = parent;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.wst.xml.vex.core.internal.dom.IVEXElement#toString()
*/
public String toString() {
@@ -243,16 +291,16 @@
StringBuffer sb = new StringBuffer();
sb.append("<");
sb.append(this.getName());
- String[] attrs = this.getAttributeNames();
+ List<String> attrs = this.getAttributeNames();
- for (int i = 0; i < attrs.length; i++) {
+ for (int i = 0; i < attrs.size(); i++) {
if (i > 0) {
sb.append(",");
}
sb.append(" ");
- sb.append(attrs[i]);
+ sb.append(attrs.get(i));
sb.append("=\"");
- sb.append(this.getAttribute(attrs[i]));
+ sb.append(this.getAttribute(attrs.get(i)));
sb.append("\"");
}
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXDocumentFragment.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXDocumentFragment.java
index 8320c52..9d2ddca 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXDocumentFragment.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXDocumentFragment.java
@@ -33,7 +33,7 @@
*
* @model
*/
- public VEXElement[] getElements();
+ public List<VEXElement> getElements();
/**
* Returns an array of element names and Validator.PCDATA representing the
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXElement.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXElement.java
index 829aba7..b3da020 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXElement.java
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src/org/eclipse/wst/xml/vex/core/internal/provisional/dom/VEXElement.java
@@ -1,6 +1,7 @@
package org.eclipse.wst.xml.vex.core.internal.provisional.dom;
import java.util.Iterator;
+import java.util.List;
import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
@@ -43,7 +44,7 @@
*
* @model
*/
- public String[] getAttributeNames();
+ public List<String> getAttributeNames();
/**
* Returns an iterator over the children. Used by
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriterTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriterTest.java
index 6945a90..683fa08 100644
--- a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriterTest.java
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DocumentWriterTest.java
@@ -17,6 +17,9 @@
import java.io.InputStream;
import java.net.URL;
import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParserFactory;
import junit.framework.TestCase;
@@ -84,15 +87,15 @@
System.out.println("Checking " + actual.getName());
assertEquals(expected.getName(), actual.getName());
- String[] expectedAttrs = expected.getAttributeNames();
- Arrays.sort(expectedAttrs);
+ List<String> expectedAttrs = expected.getAttributeNames();
+ Collections.sort(expectedAttrs);
- String[] actualAttrs = actual.getAttributeNames();
- Arrays.sort(actualAttrs);
+ List<String> actualAttrs = actual.getAttributeNames();
+ Collections.sort(actualAttrs);
- assertEquals(expectedAttrs.length, actualAttrs.length);
- for (int i = 0; i < expectedAttrs.length; i++) {
- assertEquals(expectedAttrs[i], actualAttrs[i]);
+ assertEquals(expectedAttrs.size(), actualAttrs.size());
+ for (int i = 0; i < expectedAttrs.size(); i++) {
+ assertEquals(expectedAttrs.get(i), actualAttrs.get(i));
}
VEXNode[] expectedContent = expected.getChildNodes();
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DomTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DomTest.java
index 8243811..7db9614 100644
--- a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DomTest.java
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src/org/eclipse/wst/xml/vex/core/internal/dom/DomTest.java
@@ -122,7 +122,6 @@
VEXDocument doc;
VEXDocumentFragment frag;
- VEXElement[] elements;
List<VEXNode> nodes;
VEXElement root;
VEXElement x;
@@ -157,7 +156,7 @@
frag = doc.getFragment(2, 3);
assertEquals(1, frag.getContent().getLength());
- assertEquals(0, frag.getElements().length);
+ assertEquals(0, frag.getElements().size());
nodes = frag.getNodes();
assertEquals(1, nodes.size());
this.assertIsText(nodes.get(0), "b", 0, 1);
@@ -182,15 +181,16 @@
doc.insertText(3, "b");
frag = doc.getFragment(1, 6);
- elements = frag.getElements();
- assertEquals(1, elements.length);
- this.assertIsElement(elements[0], "z", null, 1, 3);
+
+ List<VEXElement> elements = frag.getElements();
+ assertEquals(1, elements.size());
+ this.assertIsElement(elements.get(0), "z", null, 1, 3);
nodes = frag.getNodes();
assertEquals(3, nodes.size());
assertIsText(nodes.get(0), "a", 0, 1);
assertIsElement(nodes.get(1), "z", null, 1, 3);
assertIsText(nodes.get(2), "c", 4, 5);
- VEXNode[] childNodes = elements[0].getChildNodes();
+ VEXNode[] childNodes = elements.get(0).getChildNodes();
assertEquals(1, childNodes.length);
assertIsText(childNodes[0], "b", 2, 3);
@@ -224,9 +224,9 @@
assertEquals(9, frag.getContent().getLength());
elements = frag.getElements();
- assertEquals(2, elements.length);
- assertIsElement(elements[0], "x", null, 1, 3);
- assertIsElement(elements[1], "y", null, 5, 7);
+ assertEquals(2, elements.size());
+ assertIsElement(elements.get(0), "x", null, 1, 3);
+ assertIsElement(elements.get(1), "y", null, 5, 7);
nodes = frag.getNodes();
assertEquals(5, nodes.size());
@@ -246,14 +246,14 @@
assertEquals(13, frag.getContent().getLength());
elements = frag.getElements();
- assertEquals(1, elements.length);
- assertIsElement(elements[0], "z", null, 0, 12);
+ assertEquals(1, elements.size());
+ assertIsElement(elements.get(0), "z", null, 0, 12);
nodes = frag.getNodes();
assertEquals(1, nodes.size());
assertIsElement(nodes.get(0), "z", null, 0, 12);
- z = elements[0];
+ z = elements.get(0);
childNodes = z.getChildNodes();
assertEquals(5, childNodes.length);
assertIsText(childNodes[0], "bc", 1, 3);