From 12005dff4f747b067159748d6d89740d9a4fcc0c Mon Sep 17 00:00:00 2001
From: Martin Weise <martin.weise@tuwien.ac.at>
Date: Tue, 29 Aug 2023 20:54:10 +0200
Subject: [PATCH] Fixed the test

---
 .../main/java/at/tuwien/api/user/UserAttributesDto.java   | 8 ++++++--
 .../api/src/main/java/at/tuwien/api/user/UserDto.java     | 1 +
 .../java/at/tuwien/config/IndexConfigComponentTest.java   | 8 +-------
 3 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserAttributesDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserAttributesDto.java
index 48f9662ef8..69a40539e3 100644
--- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserAttributesDto.java
+++ b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserAttributesDto.java
@@ -3,9 +3,10 @@ package at.tuwien.api.user;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
-import jakarta.validation.constraints.NotNull;
 import lombok.*;
 import lombok.extern.jackson.Jacksonized;
+import org.springframework.data.elasticsearch.annotations.Field;
+import org.springframework.data.elasticsearch.annotations.FieldType;
 
 @Getter
 @Setter
@@ -16,14 +17,17 @@ import lombok.extern.jackson.Jacksonized;
 @ToString
 public class UserAttributesDto {
 
-    @NotNull
+    @JsonIgnore
+    @org.springframework.data.annotation.Transient
     @JsonProperty("theme_dark")
     @Schema(example = "false")
     private Boolean themeDark;
 
+    @Field(name = "orcid", type = FieldType.Keyword)
     @Schema(example = "https://orcid.org/0000-0002-1825-0097")
     private String orcid;
 
+    @Field(name = "affiliation", type = FieldType.Keyword)
     @Schema(example = "Brown University")
     private String affiliation;
 
diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserDto.java
index de30923fd9..2796dcba78 100644
--- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserDto.java
+++ b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/user/UserDto.java
@@ -51,6 +51,7 @@ public class UserDto {
     private String lastname;
 
     @NotNull
+    @Field(name = "attributes", includeInParent = true, type = FieldType.Nested)
     private UserAttributesDto attributes;
 
     @NotNull
diff --git a/dbrepo-search-sync-agent/rest-service/src/test/java/at/tuwien/config/IndexConfigComponentTest.java b/dbrepo-search-sync-agent/rest-service/src/test/java/at/tuwien/config/IndexConfigComponentTest.java
index e6de4dba38..a9680a954e 100644
--- a/dbrepo-search-sync-agent/rest-service/src/test/java/at/tuwien/config/IndexConfigComponentTest.java
+++ b/dbrepo-search-sync-agent/rest-service/src/test/java/at/tuwien/config/IndexConfigComponentTest.java
@@ -29,7 +29,6 @@ import java.util.Map;
 
 import static org.junit.jupiter.api.Assertions.*;
 
-
 @Log4j2
 @Testcontainers
 @SpringBootTest
@@ -272,15 +271,10 @@ public class IndexConfigComponentTest extends BaseUnitTest {
         assertEquals("keyword", types.get("id"));
         assertEquals("keyword", types.get("username"));
         assertEquals("keyword", types.get("name"));
-        assertEquals("keyword", types.get("orcid"));
         assertEquals("keyword", types.get("firstname"));
         assertEquals("keyword", types.get("lastname"));
-        assertNull(types.get("attributes"));
-        assertNull(types.get("containers"));
-        assertNull(types.get("databases"));
-        assertNull(types.get("identifiers"));
+        assertEquals("nested", types.get("attributes"));
         assertNull(types.get("email"));
-        assertNull(types.get("email_verified"));
     }
 
     private Map<String, String> getTypes(String indexName, GetMappingsResponse data) {
-- 
GitLab