@Test
    void testMultipleAnnotatedOrdering() {
        assertParse(
                "select foo from bar where title contains \"madonna\""
                        + " order by {\"function\": \"uca\", \"locale\": \"en_US\", \"strength\": \"IDENTICAL\"}other desc,"
                        + " {\"function\": \"lowercase\"}something asc"
                        + " limit 600" + " timeout 3", "title:madonna");
        {
            FieldOrder fieldOrder = parser.getSorting().fieldOrders().get(0);
            assertEquals("other", fieldOrder.getFieldName());
            assertEquals(Order.DESCENDING, fieldOrder.getSortOrder());
            AttributeSorter sorter = fieldOrder.getSorter();
            assertEquals(UcaSorter.class, sorter.getClass());
            UcaSorter uca = (UcaSorter) sorter;
            assertEquals("en_US", uca.getLocale());
            assertEquals(UcaSorter.Strength.IDENTICAL, uca.getStrength());
        }
        {
            FieldOrder fieldOrder = parser.getSorting().fieldOrders().get(1);
            assertEquals("something", fieldOrder.getFieldName());
            assertEquals(Order.ASCENDING, fieldOrder.getSortOrder());
            AttributeSorter sorter = fieldOrder.getSorter();
            assertEquals(LowerCaseSorter.class, sorter.getClass());
        }
    }
Specification for the conversion of YQL+ expressions to Vespa search queries.

@author Steinar Knutsen
@author Stian Kristoffersen
container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java