Conditions { public static void writeOrCondition( final QueryStatement query, final QueryWriterResolver resolver, final FieldPath contextFieldPath, final Object queryParameter ) throws QueryBuildException { writeCompositeCondition("(", ")", "OR", query, resolver, contextFieldPath, queryParameter); } private  Conditions(); static void writeAndCondition(
            final QueryStatement query,
            final QueryWriterResolver resolver,
            final FieldPath contextFieldPath,
            final Object queryParameter
    ); static void writeOrCondition(
            final QueryStatement query,
            final QueryWriterResolver resolver,
            final FieldPath contextFieldPath,
            final Object queryParameter
    ); static void writeNotCondition(
            final QueryStatement query,
            final QueryWriterResolver resolver,
            final FieldPath contextFieldPath,
            final Object queryParameter
    );  }
@Test public void testOrOnIObject() throws QueryBuildException, InvalidArgumentException { queryParameter = new DSObject("{ \"a\": \"b\", \"c\": \"d\" }"); Conditions.writeOrCondition(query, resolver, fieldPath, queryParameter); assertEquals("( resolver, fieldPath, b, [b] OR resolver, fieldPath, d, [b, d] )", body.toString()); }
@Test public void testOrOnList() throws QueryBuildException, InvalidArgumentException { queryParameter = new ArrayList() {{ add("a"); add("b"); }}; Conditions.writeOrCondition(query, resolver, fieldPath, queryParameter); assertEquals("( resolver, fieldPath, a, [a] OR resolver, fieldPath, b, [a, b] )", body.toString()); }