refactor: Splitted `ChatRoomInfo` and `ChatRoomData` - Aligned Code
[demos/kafka/chat] / src / test / java / de / juplo / kafka / chat / backend / api / MessageToTest.java
1 package de.juplo.kafka.chat.backend.api;
2
3 import com.fasterxml.jackson.databind.ObjectMapper;
4 import com.fasterxml.jackson.databind.SerializationFeature;
5 import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
6 import org.junit.jupiter.api.BeforeEach;
7 import org.junit.jupiter.api.Test;
8
9 import static org.assertj.core.api.AssertionsForInterfaceTypes.assertThat;
10
11
12 public class MessageToTest
13 {
14   final String json = """
15   {
16     "id": 1,
17     "serial": 0,
18     "text": "Hallo, ich heiße Peter!",
19     "time": "2023-01-08T00:10:13.625190635",
20     "user": "Peter"
21   }""";
22
23   ObjectMapper mapper;
24
25   @BeforeEach
26   public void setUp()
27   {
28     mapper = new ObjectMapper();
29     mapper.registerModule(new JavaTimeModule());
30     mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
31   }
32
33   @Test
34   public void testDeserialization() throws Exception
35   {
36     MessageTo message = mapper.readValue(json, MessageTo.class);
37     assertThat(message.getId()).isEqualTo(1l);
38     assertThat(message.getSerial()).isEqualTo(0l);
39     assertThat(message.getText()).isEqualTo("Hallo, ich heiße Peter!");
40     assertThat(message.getTime()).isEqualTo("2023-01-08T00:10:13.625190635");
41     assertThat(message.getUser()).isEqualTo("Peter");
42   }
43 }