TesseractOCRConfig implements Serializable { public void setPageSegMode(String pageSegMode) { if (!pageSegMode.matches("[0-9]|10|11|12|13")) { throw new IllegalArgumentException("Invalid page segmentation mode"); } this.pageSegMode = pageSegMode; } TesseractOCRConfig();  TesseractOCRConfig(InputStream is); String getTesseractPath(); void setTesseractPath(String tesseractPath); String getTessdataPath(); void setTessdataPath(String tessdataPath); String getLanguage(); void setLanguage(String language); String getPageSegMode(); void setPageSegMode(String pageSegMode); String getPageSeparator(); void setPageSeparator(String pageSeparator); void setTrustedPageSeparator(String pageSeparator); void setPreserveInterwordSpacing(boolean preserveInterwordSpacing); boolean getPreserveInterwordSpacing(); long getMinFileSizeToOcr(); void setMinFileSizeToOcr(long minFileSizeToOcr); long getMaxFileSizeToOcr(); void setMaxFileSizeToOcr(long maxFileSizeToOcr); void setTimeout(int timeout); int getTimeout(); void setOutputType(OUTPUT_TYPE outputType); void setOutputType(String outputType); OUTPUT_TYPE getOutputType(); int isEnableImageProcessing(); void setEnableImageProcessing(int enableImageProcessing); int getDensity(); void setDensity(int density); int getDepth(); void setDepth(int depth); String getColorspace(); void setColorspace(String colorspace); String getFilter(); void setFilter(String filter); int getResize(); void setResize(int resize); String getImageMagickPath(); void setImageMagickPath(String imageMagickPath); boolean getApplyRotation(); void setApplyRotation(boolean applyRotation); Map<String, String> getOtherTesseractConfig(); void addOtherTesseractConfig(String key, String value);  }
@Test(expected=IllegalArgumentException.class) public void testValidatePageSegMode() { TesseractOCRConfig config = new TesseractOCRConfig(); config.setPageSegMode("0"); config.setPageSegMode("10"); assertTrue("Couldn't set valid values", true); config.setPageSegMode("14"); }