1919import jakarta .json .JsonObject ;
2020import org .eclipse .edc .heleade .provider .extension .content .based .api .asset .AssetJsonObjectToCbmJsonObjectTransformer ;
2121import org .eclipse .edc .heleade .provider .extension .content .based .api .asset .CbmJsonObjectToAssetJsonObjectTransformer ;
22+ import org .eclipse .edc .jsonld .JsonLdExtension ;
2223import org .eclipse .edc .jsonld .spi .JsonLd ;
24+ import org .eclipse .edc .junit .extensions .TestServiceExtensionContext ;
2325import org .eclipse .edc .junit .testfixtures .TestUtils ;
2426import org .eclipse .edc .validator .spi .Validator ;
2527import org .junit .jupiter .api .Assertions ;
3335import java .nio .file .Paths ;
3436
3537import static org .eclipse .edc .heleade .provider .extension .validation .AssetJsonSchemaValidatorTest .getJsonSchema ;
36- import static org .eclipse .edc .heleade . provider . extension . validation . AssetJsonSchemaValidatorTest . initializeJsonLd ;
38+ import static org .eclipse .edc .jsonld . spi . JsonLdKeywords . VOCAB ;
3739import static org .eclipse .edc .junit .assertions .AbstractResultAssert .assertThat ;
40+ import static org .eclipse .edc .spi .constants .CoreConstants .EDC_NAMESPACE ;
3841
3942public class AssetJsonTransformerTest {
40- private static final JsonLd JSON_LD = initializeJsonLd ();
43+ private static final JsonLd JSON_LD_EMPTY = new JsonLdExtension ().createJsonLdService (TestServiceExtensionContext .testServiceExtensionContext ());
44+ private static final JsonLd JSON_LD_EDC = new JsonLdExtension ().createJsonLdService (TestServiceExtensionContext .testServiceExtensionContext ());
4145 private static final String ASSET_SCHEMA_PATH = "providers/provider/src/main/resources/asset-schema-cbm.json" ;
4246 private static final String DATASET_SCHEMA_PATH = "providers/provider/src/main/resources/dataset-schema-cbm.json" ;
4347 private static final String RESOURCES_PATH = "providers/provider/" ;
4448 private static final String MINIMAL_ASSET_PATH = RESOURCES_PATH + "src/test/resources/minimal-edc-asset.json" ;
4549 private static final String MINIMAL_CBM_PATH = RESOURCES_PATH + "src/test/resources/minimal-cbm-dataset.json" ;
4650 private static final String MINIMAL_ID = "datasetMandatory" ;
47- private static String minimalAssetString ;
48- private static String minimalCbmString ;
51+ private static final String FULL_ASSET_PATH = RESOURCES_PATH + "src/test/resources/full-edc-asset.json" ;
52+ private static final String FULL_CBM_PATH = RESOURCES_PATH + "src/test/resources/full-cbm-dataset.json" ;
53+ private static final String FULL_ID = "datasetFull" ;
4954 private static Validator <JsonObject > assetValidator ;
5055 private static Validator <JsonObject > datasetValidator ;
5156
5257 @ BeforeAll
5358 static void beforeAll () {
54- minimalAssetString = getFileContentFromRelativePath ( MINIMAL_ASSET_PATH );
55- minimalCbmString = getFileContentFromRelativePath ( MINIMAL_CBM_PATH );
59+
60+ JSON_LD_EDC . registerNamespace ( VOCAB , EDC_NAMESPACE );
5661
5762 JsonSchema schemaAsset = getJsonSchema (getFileContentFromRelativePath (ASSET_SCHEMA_PATH ));
58- assetValidator = new AssetJsonSchemaValidator ().getValidator (schemaAsset , JSON_LD );
63+ assetValidator = new AssetJsonSchemaValidator ().getValidator (schemaAsset , JSON_LD_EDC );
5964
6065 JsonSchema schemaDataset = getJsonSchema (getFileContentFromRelativePath (DATASET_SCHEMA_PATH ));
61- datasetValidator = new DatasetJsonSchemaValidator ().getValidator (schemaDataset , JSON_LD );
66+ datasetValidator = new DatasetJsonSchemaValidator ().getValidator (schemaDataset , JSON_LD_EDC );
6267 }
6368
6469 @ Test
6570 void transformCbmToAsset () {
71+ String minimalCbmString = getFileContentFromRelativePath (MINIMAL_CBM_PATH );
6672 JsonObject cbmJsonObject = Json .createReader (new StringReader (minimalCbmString )).readObject ();
6773
68- JsonObject cbmExpandedJsonObject = JSON_LD .expand (cbmJsonObject ).getContent ();
74+ JsonObject cbmExpandedJsonObject = JSON_LD_EMPTY .expand (cbmJsonObject ).getContent ();
75+ JsonObject assetTransformedJsonObject = CbmJsonObjectToAssetJsonObjectTransformer .transformCbmToAssetJsonObject (MINIMAL_ID , cbmExpandedJsonObject );
76+ Assertions .assertNotNull (assetTransformedJsonObject );
77+
78+ JsonObject assetTransformedCompactedJsonObject = JSON_LD_EMPTY .compact (assetTransformedJsonObject ).getContent ();
79+ String assetJsonTransformedString = assetTransformedCompactedJsonObject .toString ();
80+ Assertions .assertNotNull (assetJsonTransformedString );
81+
82+ var result = assetValidator .validate (assetTransformedJsonObject );
83+ assertThat (result ).isSucceeded ();
84+ }
85+
86+ @ Test
87+ void transformFullCbmToAsset () {
88+ String fullCbmString = getFileContentFromRelativePath (FULL_CBM_PATH );
89+ JsonObject cbmJsonObject = Json .createReader (new StringReader (fullCbmString )).readObject ();
90+
91+ JsonObject cbmExpandedJsonObject = JSON_LD_EMPTY .expand (cbmJsonObject ).getContent ();
6992 JsonObject assetTransformedJsonObject = CbmJsonObjectToAssetJsonObjectTransformer .transformCbmToAssetJsonObject (MINIMAL_ID , cbmExpandedJsonObject );
7093 Assertions .assertNotNull (assetTransformedJsonObject );
7194
72- JsonObject assetTransformedCompactedJsonObject = JSON_LD .compact (assetTransformedJsonObject ).getContent ();
95+ JsonObject assetTransformedCompactedJsonObject = JSON_LD_EMPTY .compact (assetTransformedJsonObject ).getContent ();
7396 String assetJsonTransformedString = assetTransformedCompactedJsonObject .toString ();
7497 Assertions .assertNotNull (assetJsonTransformedString );
7598
@@ -79,17 +102,39 @@ void transformCbmToAsset() {
79102
80103 @ Test
81104 void transformAssetToCbm () {
105+ String minimalAssetString = getFileContentFromRelativePath (MINIMAL_ASSET_PATH );
106+
82107 JsonObject assetJsonObject = Json .createReader (new StringReader (minimalAssetString )).readObject ();
108+ JsonObject assetExpandedJsonObject = JSON_LD_EMPTY .expand (assetJsonObject ).getContent ();
109+
110+ JsonObject assetCompactedJsonObject = JSON_LD_EMPTY .compact (assetExpandedJsonObject ).getContent ();
111+ JsonObject cbmTransformedJsonObject = AssetJsonObjectToCbmJsonObjectTransformer .transformAssetToCbmJsonObject (MINIMAL_ID , assetCompactedJsonObject );
112+ Assertions .assertNotNull (cbmTransformedJsonObject );
113+
114+ String cbmJsonTransformedString = cbmTransformedJsonObject .toString ();
115+ Assertions .assertNotNull (cbmJsonTransformedString );
116+
117+ JsonObject cbmTransformedCompactedJsonObject = JSON_LD_EDC .compact (cbmTransformedJsonObject ).getContent ();
118+ var result = datasetValidator .validate (cbmTransformedCompactedJsonObject );
119+ assertThat (result ).isSucceeded ();
120+ }
121+
122+ @ Test
123+ void transformFullAssetToCbm () {
124+ String fullAssetString = getFileContentFromRelativePath (FULL_ASSET_PATH );
125+
126+ JsonObject assetJsonObject = Json .createReader (new StringReader (fullAssetString )).readObject ();
127+ JsonObject assetExpandedJsonObject = JSON_LD_EMPTY .expand (assetJsonObject ).getContent ();
83128
84- JsonObject assetExpandedJsonObject = JSON_LD . expand ( assetJsonObject ).getContent ();
85- JsonObject cbmTransformedJsonObject = AssetJsonObjectToCbmJsonObjectTransformer .transformAssetToCbmJsonObject (MINIMAL_ID , assetExpandedJsonObject );
129+ JsonObject assetCompactedJsonObject = JSON_LD_EMPTY . compact ( assetExpandedJsonObject ).getContent ();
130+ JsonObject cbmTransformedJsonObject = AssetJsonObjectToCbmJsonObjectTransformer .transformAssetToCbmJsonObject (MINIMAL_ID , assetCompactedJsonObject );
86131 Assertions .assertNotNull (cbmTransformedJsonObject );
87132
88- JsonObject cbmTransformedCompactedJsonObject = JSON_LD .compact (cbmTransformedJsonObject ).getContent ();
89- String cbmJsonTransformedString = cbmTransformedCompactedJsonObject .toString ();
133+ String cbmJsonTransformedString = cbmTransformedJsonObject .toString ();
90134 Assertions .assertNotNull (cbmJsonTransformedString );
91135
92- var result = datasetValidator .validate (cbmTransformedJsonObject );
136+ JsonObject cbmTransformedCompactedJsonObject = JSON_LD_EDC .compact (cbmTransformedJsonObject ).getContent ();
137+ var result = datasetValidator .validate (cbmTransformedCompactedJsonObject );
93138 assertThat (result ).isSucceeded ();
94139 }
95140
0 commit comments