@@ -220,6 +220,71 @@ void shouldReturnPackagesOnSearchByProviderIdAndAccessTypeWithPagination() {
220220 assertEquals (STUB_PACKAGE_NAME , packages .getFirst ().getAttributes ().getName ());
221221 }
222222
223+ @ Test
224+ void shouldReturnTagsAndAccessTypeOnSearchByProviderIdAndAccessTypeWhenIncludeParamPassed () {
225+ var accessTypes = insertAccessTypes (testData (configuration .getId ()), vertx );
226+ var expectedAccessTypeId = accessTypes .getFirst ().getId ();
227+ insertAccessTypeMapping (FULL_PACKAGE_ID , PACKAGE , expectedAccessTypeId , vertx );
228+ saveTag (vertx , FULL_PACKAGE_ID , PACKAGE , STUB_TAG_VALUE );
229+
230+ setUpPackage (vertx , configuration .getId (), STUB_PACKAGE_ID , STUB_VENDOR_ID , STUB_PACKAGE_NAME );
231+
232+ var endpoint = withAccessTypeFilters (PROVIDER_PACKAGES + "?include=accessType" , STUB_ACCESS_TYPE_NAME );
233+ var packageItem = getWithOk (endpoint ).as (PackageCollection .class ).getData ().getFirst ();
234+
235+ assertThat (packageItem .getAttributes ().getTags ().getTagList (), containsInAnyOrder (STUB_TAG_VALUE ));
236+ assertFalse (packageItem .getIncluded ().isEmpty ());
237+ assertEquals (expectedAccessTypeId , packageItem .getRelationships ().getAccessType ().getData ().getId ());
238+ }
239+
240+ @ Test
241+ void shouldReturnTagsButNoAccessTypeOnSearchByProviderIdAndAccessTypeWhenIncludeParamNotPassed () {
242+ var accessTypes = insertAccessTypes (testData (configuration .getId ()), vertx );
243+ insertAccessTypeMapping (FULL_PACKAGE_ID , PACKAGE , accessTypes .getFirst ().getId (), vertx );
244+ saveTag (vertx , FULL_PACKAGE_ID , PACKAGE , STUB_TAG_VALUE );
245+
246+ setUpPackage (vertx , configuration .getId (), STUB_PACKAGE_ID , STUB_VENDOR_ID , STUB_PACKAGE_NAME );
247+
248+ var endpoint = withAccessTypeFilters (PROVIDER_PACKAGES , STUB_ACCESS_TYPE_NAME );
249+ var packageItem = getWithOk (endpoint ).as (PackageCollection .class ).getData ().getFirst ();
250+
251+ assertThat (packageItem .getAttributes ().getTags ().getTagList (), containsInAnyOrder (STUB_TAG_VALUE ));
252+ assertTrue (packageItem .getIncluded ().isEmpty ());
253+ assertNull (packageItem .getRelationships ().getAccessType ());
254+ }
255+
256+ @ Test
257+ void shouldReturnAccessTypeOnSearchByProviderIdAndTagsWhenIncludeParamPassed () {
258+ var accessTypes = insertAccessTypes (testData (configuration .getId ()), vertx );
259+ var expectedAccessTypeId = accessTypes .getFirst ().getId ();
260+ insertAccessTypeMapping (FULL_PACKAGE_ID , PACKAGE , expectedAccessTypeId , vertx );
261+ saveTag (vertx , FULL_PACKAGE_ID , PACKAGE , STUB_TAG_VALUE );
262+
263+ setUpPackage (vertx , configuration .getId (), STUB_PACKAGE_ID , STUB_VENDOR_ID , STUB_PACKAGE_NAME );
264+
265+ var endpoint = withTagFilters (PROVIDER_PACKAGES + "?include=accessType" , STUB_TAG_VALUE );
266+ var packageItem = getWithOk (endpoint ).as (PackageCollection .class ).getData ().getFirst ();
267+
268+ assertThat (packageItem .getAttributes ().getTags ().getTagList (), containsInAnyOrder (STUB_TAG_VALUE ));
269+ assertFalse (packageItem .getIncluded ().isEmpty ());
270+ assertEquals (expectedAccessTypeId , packageItem .getRelationships ().getAccessType ().getData ().getId ());
271+ }
272+
273+ @ Test
274+ void shouldReturnTagsOnUnfilteredProviderPackagesList () {
275+ saveTag (vertx , FULL_PACKAGE_ID , PACKAGE , STUB_TAG_VALUE );
276+ saveTag (vertx , FULL_PACKAGE_ID , PACKAGE , STUB_TAG_VALUE_2 );
277+ setUpPackage (vertx , configuration .getId (), STUB_PACKAGE_ID , STUB_VENDOR_ID , STUB_PACKAGE_NAME );
278+ mockGet (matching (providerPackagesRmApi (STUB_VENDOR_ID ) + ".*" ),
279+ readFile ("responses/rmapi/packages/get-packages-by-provider-id.json" ));
280+
281+ var packages = getWithOk (PROVIDER_PACKAGES + "?include=accessType&page=1&count=100" )
282+ .as (PackageCollection .class ).getData ();
283+
284+ assertThat (packages .getFirst ().getAttributes ().getTags ().getTagList (),
285+ containsInAnyOrder (STUB_TAG_VALUE , STUB_TAG_VALUE_2 ));
286+ }
287+
223288 @ Test
224289 void shouldReturnEmptyResponseWhenPackagesReturnedWithErrorOnSearchByAccessType () {
225290 var accessTypes = insertAccessTypes (testData (configuration .getId ()), vertx );
0 commit comments