diff --git a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/MarkdownToTextConverter.java b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/MarkdownToTextConverter.java index a222a5b44..65b7e4b49 100644 --- a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/MarkdownToTextConverter.java +++ b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/MarkdownToTextConverter.java @@ -15,17 +15,16 @@ import com.vladsch.flexmark.html.HtmlRenderer; import com.vladsch.flexmark.parser.Parser; -import com.vladsch.flexmark.util.ast.Node; import com.vladsch.flexmark.util.data.MutableDataSet; import org.jsoup.Jsoup; public class MarkdownToTextConverter { - String extractText(String markdown) { + public String extractText(String markdown) { var options = new MutableDataSet(); - Parser parser = Parser.builder(options).build(); - HtmlRenderer renderer = HtmlRenderer.builder(options).build(); - Node document = parser.parse(markdown); - String html = renderer.render(document); + var parser = Parser.builder(options).build(); + var renderer = HtmlRenderer.builder(options).build(); + var document = parser.parse(markdown); + var html = renderer.render(document); return Jsoup.parse(html).text(); } } diff --git a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtils.java b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtils.java index 6b9f6c94e..5de523e29 100644 --- a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtils.java +++ b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtils.java @@ -14,7 +14,7 @@ package de.sovity.edc.ext.wrapper.api.common.mappers.utils; public class TextUtils { - String abbreviate(String text, int maxCharacters) { + public String abbreviate(String text, int maxCharacters) { if (text == null) { return null; } diff --git a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/UiAssetMapper.java b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/UiAssetMapper.java index e28f1f6df..5634c5703 100644 --- a/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/UiAssetMapper.java +++ b/extensions/wrapper/wrapper-common-mappers/src/main/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/UiAssetMapper.java @@ -272,9 +272,11 @@ private JsonObject getPrivateProperties(JsonObject assetJsonLd) { } private String buildShortDescription(String description) { - if (description != null) { - return textUtils.abbreviate(markdownToTextConverter.extractText(description), 300); + if (description == null) { + return null; } - return null; + + var text = markdownToTextConverter.extractText(description); + return textUtils.abbreviate(text, 300); } } diff --git a/extensions/wrapper/wrapper-common-mappers/src/test/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtilsTest.java b/extensions/wrapper/wrapper-common-mappers/src/test/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtilsTest.java index 164786e76..92ffe3c80 100644 --- a/extensions/wrapper/wrapper-common-mappers/src/test/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtilsTest.java +++ b/extensions/wrapper/wrapper-common-mappers/src/test/java/de/sovity/edc/ext/wrapper/api/common/mappers/utils/TextUtilsTest.java @@ -19,7 +19,7 @@ void test_abbreviate_null() { String text = null; // act - var actual = textUtils.abbreviate(text, 300); + var actual = textUtils.abbreviate(text, 1); // assert assertThat(actual).isEqualTo(null); @@ -28,10 +28,10 @@ void test_abbreviate_null() { @Test void test_abbreviate_emptyString() { // arrange - String text = ""; + var text = ""; // act - var actual = textUtils.abbreviate(text, 300); + var actual = textUtils.abbreviate(text, 1); // assert assertThat(actual).isEqualTo(""); @@ -40,26 +40,24 @@ void test_abbreviate_emptyString() { @Test void test_abbreviate_lengthLessThanMaxCharacters() { // arrange - String text = "Hello"; + var text = "a"; // act - var actual = textUtils.abbreviate(text, 300); + var actual = textUtils.abbreviate(text, 2); // assert - assertThat(actual).isEqualTo("Hello"); + assertThat(actual).isEqualTo("a"); } @Test void test_abbreviate_lengthLongerThanMaxCharacters() { // arrange - var tmp = "0123456789"; - var text = tmp.repeat(40); // 400 length String - var expected = tmp.repeat(30); + var text = "aa"; // act - var actual = textUtils.abbreviate(text, 300); + var actual = textUtils.abbreviate(text, 1); // assert - assertThat(actual).isEqualTo(expected); + assertThat(actual).isEqualTo("a"); } }