package com.spotify.heroic.aggregation; import com.fasterxml.jackson.databind.ObjectMapper; import com.spotify.heroic.HeroicMappers; import com.spotify.heroic.common.Duration; import com.spotify.heroic.grammar.QueryParser; import org.junit.Test; import org.mockito.Mockito; import java.io.InputStream; import java.util.Optional; import java.util.concurrent.TimeUnit; import static com.spotify.heroic.test.Resources.openResource; import static org.junit.Assert.assertEquals; public class SamplingQueryDeserializationTest { private final ObjectMapper m = HeroicMappers.json(Mockito.mock(QueryParser.class)); @Test public void deserializationTest() throws Exception { final Duration d = Duration.of(10, TimeUnit.MINUTES); try (final InputStream in = openResource(getClass(), "SamplingQuery.1.json")) { assertEquals(new SamplingQuery(Optional.of(d), Optional.empty()), m.readValue(in, SamplingQuery.class)); } try (final InputStream in = openResource(getClass(), "SamplingQuery.2.json")) { assertEquals(new SamplingQuery(Optional.empty(), Optional.of(d)), m.readValue(in, SamplingQuery.class)); } } }