package com.vaessl.app.search; import static com.vaessl.app.Mockdata.*; import static org.assertj.core.api.Assertions.assertThat; import java.util.Map; import org.junit.jupiter.api.Test; import com.vaessl.app.shared.ServiceItem; class SearchResponseTest { @Test void shouldReturnNullWhenExtraDataIsNull() { ServiceItem response = new ServiceItem(MOCK_ID, MOCK_TITLE, MOCK_DESCRIPTION, null); assertThat(response.getExtra(null)).isNull(); } @Test void shouldReturnNullWhenExtraDataKeyIsMissing() { ServiceItem response = new ServiceItem(MOCK_ID, MOCK_TITLE, MOCK_DESCRIPTION, Map.of("key", Map.of("key", "value"))); assertThat(response.getExtra("missing")).isNull(); } @Test void shouldReturnExtraDataValue() { ServiceItem response = new ServiceItem(MOCK_ID, MOCK_TITLE, MOCK_DESCRIPTION, Map.of("key", Map.of("key", "value"))); assertThat(response.id()).isEqualTo(MOCK_ID); assertThat(response.getExtra("key")).contains("value"); } }