### Question:
ConditionalParser { protected static double parseNumber(String str) { int untilIndex = str.length() - 1; for (; untilIndex >= 0; untilIndex--) { if (Character.isDigit(str.charAt(untilIndex))) break; } return Double.parseDouble(str.substring(0, untilIndex + 1)); } ConditionalParser(Set<String> restrictedTags);  ConditionalParser(Set<String> restrictedTags, boolean enabledLogs); static ConditionalValueParser createNumberParser(final String assertKey, final Number obj); ConditionalParser addConditionalValueParser(ConditionalValueParser vp); ConditionalParser setConditionalValueParser(ConditionalValueParser vp); boolean checkCondition(String conditionalTag);  }### Answer:
@Test public void parseNumber() { assertEquals(3, ConditionalParser.parseNumber("3t"), .1); assertEquals(3.1, ConditionalParser.parseNumber("3.1 t"), .1); assertEquals(3, ConditionalParser.parseNumber("3 meters"), .1); }