@Test
    void testGeoLocation() {
        assertParse("select foo from bar where geoLocation(workplace, 63.418417, 10.433033, \"0.5 deg\")",
                "GEO_LOCATION workplace:(2,10433033,63418417,500000,0,1,0,1921876103)");
        assertParse("select foo from bar where geoLocation(headquarters, \"37.416383\", \"-122.024683\", \"100 miles\")",
                "GEO_LOCATION headquarters:(2,-122024683,37416383,1450561,0,1,0,3411238761)");
        assertParse("select foo from bar where geoLocation(home, \"E10.433033\", \"N63.418417\", \"5km\")",
                "GEO_LOCATION home:(2,10433033,63418417,45066,0,1,0,1921876103)");

        assertParseFail("select foo from bar where geoLocation(qux, 1, 2)",
                new IllegalArgumentException("Expected 4 arguments, got 3."));
        assertParseFail("select foo from bar where geoLocation(qux, 2.0, \"N5.0\", \"0.5 deg\");",
                new IllegalArgumentException(
                        "Invalid geoLocation coordinates 'Latitude: 2.0 degrees' and 'Latitude: 5.0 degrees'"));
        assertParse("select foo from bar where geoLocation(workplace, -12, -34, \"-77 d\")",
                "GEO_LOCATION workplace:(2,-34000000,-12000000,-1,0,1,0,4201111954)");
        assertParse("select * from test_index where geoLocation(coordinate, 0.000010, 0.000010, \"10.000000 km\")",
                "GEO_LOCATION coordinate:(2,10,10,90133,0,1,0,4294967294)");
    }
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