Skip to content

Commit d0301ae

Browse files
committed
Fix Grounding e2e test
1 parent 7404e07 commit d0301ae

File tree

2 files changed

+28
-3
lines changed

2 files changed

+28
-3
lines changed

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/GroundingController.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.sap.ai.sdk.grounding.client.RetrievalApi;
1010
import com.sap.ai.sdk.grounding.client.VectorApi;
1111
import com.sap.ai.sdk.grounding.model.BaseDocument;
12+
import com.sap.ai.sdk.grounding.model.Chunk;
1213
import com.sap.ai.sdk.grounding.model.Collection;
1314
import com.sap.ai.sdk.grounding.model.CollectionRequest;
1415
import com.sap.ai.sdk.grounding.model.DataRepository;
@@ -19,7 +20,6 @@
1920
import com.sap.ai.sdk.grounding.model.EmbeddingConfig;
2021
import com.sap.ai.sdk.grounding.model.KeyValueListPair;
2122
import com.sap.ai.sdk.grounding.model.Pipeline;
22-
import com.sap.ai.sdk.grounding.model.ResultsInner1;
2323
import com.sap.ai.sdk.grounding.model.RetrievalSearchFilter;
2424
import com.sap.ai.sdk.grounding.model.RetrievalSearchInput;
2525
import com.sap.ai.sdk.grounding.model.SearchConfiguration;
@@ -95,7 +95,13 @@ Object searchInDocuments(
9595
if ("json".equals(format)) {
9696
return results;
9797
}
98-
final var messages = results.getResults().stream().map(ResultsInner1::getMessage).toList();
98+
final var messages =
99+
results.getResults().stream()
100+
.flatMap(resultsInner1 -> resultsInner1.getResults().stream())
101+
.flatMap(result -> result.getDataRepository().getDocuments().stream())
102+
.flatMap(dataRepositorySearchResult -> dataRepositorySearchResult.getChunks().stream())
103+
.map(Chunk::getContent)
104+
.toList();
99105
return "Found the following response(s): " + messages;
100106
}
101107

sample-code/spring-app/src/test/java/com/sap/ai/sdk/app/controllers/GroundingTest.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,9 @@ void testRepositoriesGetAll() {
5757
void testCreateDeleteCollection() {
5858
final var controller = new GroundingController();
5959

60+
// (0) DELETE OLD DOCUMENTS
61+
this.deleteOldDocuments();
62+
6063
// (1) CREATE COLLECTION
6164
final var collectionId = controller.createCollection(JSON_FORMAT);
6265
final var collectionUuid = UUID.fromString(collectionId);
@@ -65,7 +68,7 @@ void testCreateDeleteCollection() {
6568
// (1.1) TEST COLLECTION LOOKUP
6669
this.testCollectionsGetAll();
6770

68-
// (2) SANITY CHECK: NO DOCUMENTS
71+
// (2) SANITY CHECK: NO DOCUMENTS IN COLLECTION
6972
final var documentsEmpty = controller.getDocumentsByCollectionId(collectionUuid, JSON_FORMAT);
7073
assertThat(documentsEmpty).isInstanceOf(Documents.class);
7174
assertThat(((Documents) documentsEmpty).getCount()).isEqualTo(0);
@@ -143,4 +146,20 @@ void testGetDocumentById(UUID collectionId, UUID documentId) {
143146
assertThat(chunk.getMetadata()).isNotNull().isNotEmpty();
144147
}
145148
}
149+
150+
void deleteOldDocuments() {
151+
final var controller = new GroundingController();
152+
153+
final var result = controller.getAllCollections(JSON_FORMAT);
154+
assertThat(result).isInstanceOf(CollectionsListResponse.class);
155+
final var collectionsList = ((CollectionsListResponse) result).getResources();
156+
157+
for (final var collection : collectionsList) {
158+
if ("e2e".equals(collection.getTitle())) {
159+
final var deletion = controller.deleteDocuments(collection.getId(), JSON_FORMAT);
160+
assertThat(deletion).isInstanceOf(OpenApiResponse.class);
161+
assertThat(((OpenApiResponse) deletion).getStatusCode()).isEqualTo(202);
162+
}
163+
}
164+
}
146165
}

0 commit comments

Comments
 (0)