@Test void testConvertParseException() { assertThrows(SelectionParseException.class, () -> selectionConverter.convert("item,")); }
@Override public Selection convert(String source) { if (source.isEmpty()) { return Selection.FULL_SELECTION; } try { return new SelectionParser(source).parse(); } catch (ParseException e) { throw new SelectionParseException(e); } }
SelectionConverter implements Converter<String, Selection> { @Override public Selection convert(String source) { if (source.isEmpty()) { return Selection.FULL_SELECTION; } try { return new SelectionParser(source).parse(); } catch (ParseException e) { throw new SelectionParseException(e); } } }
SelectionConverter implements Converter<String, Selection> { @Override public Selection convert(String source) { if (source.isEmpty()) { return Selection.FULL_SELECTION; } try { return new SelectionParser(source).parse(); } catch (ParseException e) { throw new SelectionParseException(e); } }  }
SelectionConverter implements Converter<String, Selection> { @Override public Selection convert(String source) { if (source.isEmpty()) { return Selection.FULL_SELECTION; } try { return new SelectionParser(source).parse(); } catch (ParseException e) { throw new SelectionParseException(e); } }  @Override Selection convert(String source); }
SelectionConverter implements Converter<String, Selection> { @Override public Selection convert(String source) { if (source.isEmpty()) { return Selection.FULL_SELECTION; } try { return new SelectionParser(source).parse(); } catch (ParseException e) { throw new SelectionParseException(e); } }  @Override Selection convert(String source);  }