@Test
    public void testInputErrors() {
        String message = "";
        try {
            parser = new BoundingBoxParser("n=10.11,e=2.02");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("Missing bounding box limits, n=true s=false e=true w=false", message);

        try {
            parser = new BoundingBoxParser("n=11.01,s=10.11,e=xyzzy,w=-122.2");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("Could not parse e limit 'xyzzy' as a number", message);

        try {
            parser = new BoundingBoxParser("n=11.01,n=10.11,e=-122.0,w=-122.2");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("multiple limits for 'n' boundary", message);

        try {
            parser = new BoundingBoxParser("s=11.01,s=10.11,e=-122.0,w=-122.2");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("multiple limits for 's' boundary", message);

        try {
            parser = new BoundingBoxParser("n=11.01,s=10.11,e=-122.0,e=-122.2");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("multiple limits for 'e' boundary", message);

        try {
            parser = new BoundingBoxParser("n=11.01,s=10.11,w=-122.0,w=-122.2");
        } catch (IllegalArgumentException e) {
            message = e.getMessage();
        }
        assertEquals("multiple limits for 'w' boundary", message);
    }
Tests various inputs that contain syntax errors.
vespajlib/src/test/java/com/yahoo/geo/BoundingBoxParserTestCase.java