### Question:
WebMercatorTile { public static WebMercatorTile forQuadkey(String quadKey) throws IllegalArgumentException { if (!QUADKEY_REGEXP.matcher(quadKey).matches()) { throw new IllegalArgumentException("Invalid quadkey."); } int level = quadKey.length(); int x = 0; int y = 0; int depth = Math.min(MAX_LEVEL, quadKey.length()); for (int index = 0; index < depth; ++index) { y <<= 1; x <<= 1; char nextChar = quadKey.charAt(index); if ('1' == nextChar) { x++; } else if ('2' == nextChar) { y++; } else if ('3' == nextChar) { x++; y++; } } return new WebMercatorTile(level, x, y); } private  WebMercatorTile(final int level, final int x, final int y); static long xy(int x, int y); static int x(long pixel); static int y(long pixel); static double clip(double n, double minValue, double maxValue); static int verifyLevelOfDetail(int levelOfDetail); static long mapSize(int levelOfDetail); static double groundResolution(double latitude, int levelOfDetail); static double mapScale(double latitude, int levelOfDetail, int screenDpi); static long lonLatToPixel(double longitude, double latitude, int levelOfDetail); static ILonLat pixelToLonLat(int pixelX, int pixelY, int levelOfDetail, ILonLat pos); static long pixelToTile(int pixelX, int pixelY); static long tileToPixel(int tileX, int tileY); static String tileToQuadKey(int tileX, int tileY, int levelOfDetail); static int quadKeyLevelOfDetail(String quadkey); static int getZoomFromBBOX(BBox bbox); static WebMercatorTile getTileFromLatLonLev(double lat, double lon, int lev); static long quadKeyToTile(String quadKey); static WebMercatorTile forQuadkey(String quadKey); static WebMercatorTile forWeb(String tileAddress); static WebMercatorTile forWeb(int level, int x, int y); static WebMercatorTile forTMS(String tileAddress); static WebMercatorTile forTMS(int level, int x, int y); BBox getBBox(boolean clone); PreparedGeometry getAsPolygon(); BBox getExtendedBBox(int buffer); PreparedGeometry getExtendedBBoxAsPolygon(int buffer); String asQuadkey(); @Override String toString(); static final double EarthRadius; static final double MinLatitude; static final double MaxLatitude; static final double MinLongitude; static final double MaxLongitude; static final int TileSizeInPixel; final int x; final int y; final int level; final double left; final double top; final double right; final double bottom; }### Answer:
@Test(expected = IllegalArgumentException.class) public void invalidQuadIdentifier1() { forQuadkey("052301230123"); }
@Test(expected = IllegalArgumentException.class) public void invalidQuadIdentifier2() { forQuadkey("1A000"); }
@Test(expected = IllegalArgumentException.class) public void invalidQuadIdentifier3() { forQuadkey("-9"); }
@Test(expected = IllegalArgumentException.class) public void invalidQuadIdentifier4() { forQuadkey("1234"); }
@Test(expected = IllegalArgumentException.class) public void invalidQuadIdentifier5() { forQuadkey("052301230123"); }