Add tests to verify the effect of enabling/disabling index_array_lengths
Skip the array-length-field tests if text service is not running
Skip creating the index doc if the text service is not up
diff --git a/test/10-disable-array-length-field-test.py b/test/10-disable-array-length-field-test.py
new file mode 100644
index 0000000..0715f1d
--- /dev/null
+++ b/test/10-disable-array-length-field-test.py
@@ -0,0 +1,42 @@
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import mango
+import unittest
+
+
+class DisableIndexArrayLengthsTest(mango.UserDocsTextTests):
+
+    @classmethod
+    def setUpClass(klass):
+        super(DisableIndexArrayLengthsTest, klass).setUpClass()
+        if mango.has_text_service():
+            klass.db.create_text_index(ddoc="disable_index_array_lengths",
+                                       analyzer="keyword",
+                                       index_array_lengths=False)
+            klass.db.create_text_index(ddoc="explicit_enable_index_array_lengths",
+                                       analyzer="keyword",
+                                       index_array_lengths=True)
+
+    @unittest.skipUnless(mango.has_text_service(), "requires text service")
+    def test_disable_index_array_length(self):
+        docs = self.db.find({"favorites": {"$size": 4}},
+                            use_index="disable_index_array_lengths")
+        for d in docs:
+            assert len(d["favorites"]) == 0
+
+    @unittest.skipUnless(mango.has_text_service(), "requires text service")
+    def test_enable_index_array_length(self):
+        docs = self.db.find({"favorites": {"$size": 4}},
+                            use_index="explicit_enable_index_array_lengths")
+        for d in docs:
+            assert len(d["favorites"]) == 4
diff --git a/test/mango.py b/test/mango.py
index 5ca8367..09c45fc 100644
--- a/test/mango.py
+++ b/test/mango.py
@@ -104,7 +104,7 @@
         return r.json()["result"] == "created"
 
     def create_text_index(self, analyzer=None, selector=None, idx_type="text",
-        default_field=None, fields=None, name=None, ddoc=None):
+        default_field=None, fields=None, name=None, ddoc=None,index_array_lengths=None):
         body = {
             "index": {
             },
@@ -117,6 +117,8 @@
             body["index"]["default_analyzer"] = analyzer
         if default_field is not None:
             body["index"]["default_field"] = default_field
+        if index_array_lengths is not None:
+            body["index"]["index_array_lengths"] = index_array_lengths
         if selector is not None:
             body["selector"] = selector
         if fields is not None: