Add Test for field.getArray() sort-order.

One more test before replacing the old sort() mechanism.

R=thestig@chromium.org

Review URL: https://codereview.chromium.org/1650623004 .
diff --git a/testing/resources/javascript/field.in b/testing/resources/javascript/field.in
new file mode 100644
index 0000000..c23b81a
--- /dev/null
+++ b/testing/resources/javascript/field.in
@@ -0,0 +1,126 @@
+{{header}}
+{{object 1 0}} <<
+  /Type /Catalog
+  /Pages 2 0 R
+  /AcroForm 4 0 R
+  /OpenAction 10 0 R
+>>
+endobj
+{{object 2 0}} <<
+  /Type /Pages
+  /Count 1
+  /Kids [
+    3 0 R
+  ]
+>>
+endobj
+% Page number 0.
+{{object 3 0}} <<
+  /Type /Page
+  /Parent 2 0 R
+  /Resources <<
+    /Font <</F1 15 0 R>>
+  >>
+  /Contents [21 0 R]
+  /MediaBox [0 0 612 792]
+>>
+endobj
+% Forms
+{{object 4 0}} <<
+  /Fields [5 0 R]
+>>
+endobj
+% Fields
+{{object 5 0}} <<
+  /T (MyField)
+  /Type /Annot
+  /Subtype /Widget
+  /Rect [100 100 400 400]
+  /Kids [
+    6 0 R
+    7 0 R
+    8 0 R
+    9 0 R
+  ]
+>>
+endobj
+{{object 6 0}} <<
+  /FT /Tx
+  /Parent 5 0 R
+  /T (Sub_X)
+  /Type /Annot
+  /Subtype /Widget
+  /Rect [200 200 220 220]
+>>
+endobj
+{{object 7 0}} <<
+  /FT /Tx
+  /Parent 5 0 R
+  /T (Sub_A)
+  /Type /Annot
+  /Subtype /Widget
+  /Rect [220 220 240 240]
+>>
+endobj
+{{object 8 0}} <<
+  /FT /Tx
+  /Parent 5 0 R
+  /T (Sub_Z)
+  /Type /Annot
+  /Subtype /Widget
+  /Rect [240 240 260 260]
+>>
+endobj
+{{object 9 0}} <<
+  /FT /Tx
+  /Parent 5 0 R
+  /T (Sub_B)
+  /Type /Annot
+  /Subtype /Widget
+  /Rect [260 260 280 280]
+>>
+endobj
+% OpenAction action
+{{object 10 0}} <<
+  /Type /Action
+  /S /JavaScript
+  /JS 11 0 R
+>>
+endobj
+% JS program to exexute
+{{object 11 0}} <<
+>>
+stream
+function TestGetField() {
+  try {
+    var field = this.getField("MyField");
+    app.alert("field is " + field.name);
+    var sub_a = this.getField("MyField.Sub_A");
+    app.alert("sub_a is " + sub_a.name);
+    var nonesuch = this.getField("MyField.nonesuch");
+    app.alert("nonesuch is " + nonesuch);
+  } catch (e) {
+    app.alert("Unexpected error: " + e);
+  }
+}
+function TestGetArray() {
+  try {
+    var subs = this.getField("MyField").getArray();
+    app.alert("found " + subs.length + " sub-fields:");
+    for (i = 0; i < subs.length; ++i) {
+      app.alert(subs[i].name);
+    }
+  } catch (e) {
+    app.alert("Unexpected error: " + e);
+  }
+}
+TestGetField();
+TestGetArray();
+endstream
+endobj
+{{xref}}
+trailer <<
+  /Root 1 0 R
+>>
+{{startxref}}
+%%EOF
diff --git a/testing/resources/javascript/field_expected.txt b/testing/resources/javascript/field_expected.txt
new file mode 100644
index 0000000..04aafd7
--- /dev/null
+++ b/testing/resources/javascript/field_expected.txt
@@ -0,0 +1,8 @@
+Alert: field is MyField
+Alert: sub_a is MyField.Sub_A
+Alert: nonesuch is undefined
+Alert: found 4 sub-fields:
+Alert: MyField.Sub_A
+Alert: MyField.Sub_B
+Alert: MyField.Sub_X
+Alert: MyField.Sub_Z