AsciiDocStringUtils { public static String resolveFilenameOfImageOrNull(String potentialImage){ return resolveSubstringFromPrefixToStartOfLastOpeningBracket(potentialImage, IMAGE_PREFIX); }  static String resolveFilenameOfDiagramMacroOrNull(String potentialInclude); static String resolveFilenameOfMacroOrNull(String potentialInclude, String macroName); static String resolveFilenameOfImageOrNull(String potentialImage); static String resolveFilenameOfIncludeOrNull(String potentialInclude); static LinkTextData resolveTextFromStartToBracketsEnd(String line, int offset, int offsetInLine); static String readUTF8FileToString(File fileToRead); static File writeTextToUTF8File(String transformed, File newTempFile);  }
@Test public void resolveFilenameOfImageOrNull_image_colon_colon_src_slash_subfolder_slash_imagename_dot_png_brackets_with_something_inside_has_subfolder_slash_imagename_dot_png() { assertEquals("subfolder/imagename.png", resolveFilenameOfImageOrNull("image::subfolder/imagename.png[something]")); }