ATEST-472

This commit is contained in:
Fabian Märki
2016-06-07 16:35:54 +02:00
parent 907637ad32
commit c62b44be0e
16 changed files with 602 additions and 309 deletions
@@ -32,12 +32,12 @@ import ch.psi.daq.domain.query.operation.Aggregation;
import ch.psi.daq.domain.query.operation.AggregationType;
import ch.psi.daq.domain.query.operation.Compression;
import ch.psi.daq.domain.query.operation.QueryField;
import ch.psi.daq.domain.query.operation.ResponseFormat;
import ch.psi.daq.domain.request.range.RequestRangeDate;
import ch.psi.daq.domain.request.range.RequestRangePulseId;
import ch.psi.daq.domain.request.range.RequestRangeTime;
import ch.psi.daq.domain.test.TestTimeUtils;
import ch.psi.daq.queryrest.controller.QueryRestController;
import ch.psi.daq.queryrest.response.csv.CSVResponse;
import ch.psi.daq.queryrest.response.csv.CSVResponseStreamWriter;
import ch.psi.daq.test.queryrest.AbstractDaqRestTest;
@@ -62,7 +62,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
0,
1),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -155,7 +155,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
-1,
-1),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -245,7 +245,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
-1,
-1),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -332,7 +332,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
0,
1),
testChannel3));
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
channels = Arrays.asList(TEST_CHANNEL_01, TEST_CHANNEL_02, testChannel3);
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
@@ -418,7 +418,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
0,
1),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -502,7 +502,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
TimeUtils.getTimeFromMillis(0, 0),
TimeUtils.getTimeFromMillis(10, 0)),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -587,7 +587,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
startDate,
endDate),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -675,7 +675,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
Ordering.asc,
AggregationType.extrema,
TEST_CHANNEL_NAMES[0]);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
String content = mapper.writeValueAsString(request);
@@ -705,7 +705,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
Ordering.asc,
AggregationType.index,
TEST_CHANNEL_NAMES[0]);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
String content = mapper.writeValueAsString(request);
@@ -739,7 +739,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
endDate),
channels);
request.setNrOfBins(2);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -839,7 +839,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
endDate),
channels);
request.setBinSize(100);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -934,7 +934,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
0,
1),
channels);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
LinkedHashSet<QueryField> queryFields = new LinkedHashSet<>();
queryFields.add(QueryField.channel);
@@ -995,8 +995,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
10,
11),
TEST_CHANNEL_NAMES);
request.setResponseFormat(ResponseFormat.CSV);
request.setCompression(Compression.GZIP);
request.setResponse(new CSVResponse(Compression.GZIP));
String content = mapper.writeValueAsString(request);
@@ -1018,7 +1017,7 @@ public class QueryRestControllerCsvTest extends AbstractDaqRestTest {
10,
11),
TEST_CHANNEL_NAMES);
request.setResponseFormat(ResponseFormat.CSV);
request.setResponse(new CSVResponse());
String content = mapper.writeValueAsString(request);
@@ -24,6 +24,7 @@ import ch.psi.daq.domain.request.range.RequestRangePulseId;
import ch.psi.daq.domain.request.range.RequestRangeTime;
import ch.psi.daq.domain.test.TestTimeUtils;
import ch.psi.daq.queryrest.controller.QueryRestController;
import ch.psi.daq.queryrest.response.json.JSONResponse;
import ch.psi.daq.test.queryrest.AbstractDaqRestTest;
/**
@@ -664,7 +665,7 @@ public class QueryRestControllerJsonTest extends AbstractDaqRestTest {
10,
11),
TEST_CHANNEL_NAMES);
request.setCompression(Compression.GZIP);
request.setResponse(new JSONResponse(Compression.GZIP));
String content = mapper.writeValueAsString(request);
System.out.println(content);
@@ -0,0 +1,106 @@
package ch.psi.daq.test.queryrest.response;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import java.io.IOException;
import javax.annotation.Resource;
import org.junit.Test;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import ch.psi.daq.domain.query.DAQQuery;
import ch.psi.daq.domain.query.operation.Compression;
import ch.psi.daq.domain.query.operation.Response;
import ch.psi.daq.domain.request.range.RequestRangePulseId;
import ch.psi.daq.queryrest.response.csv.CSVResponse;
import ch.psi.daq.queryrest.response.json.JSONResponse;
import ch.psi.daq.test.queryrest.AbstractDaqRestTest;
public class ResponseQueryTest extends AbstractDaqRestTest{
@Resource
private ObjectMapper mapper;
@Test
public void test_JSON_01() throws JsonParseException, JsonMappingException, IOException {
Response respose = new CSVResponse();
String value = mapper.writeValueAsString(respose);
Response deserial = mapper.readValue(value, Response.class);
assertEquals(respose.getClass(), deserial.getClass());
assertEquals(respose.getFormat(), deserial.getFormat());
assertEquals(respose.getCompression(), deserial.getCompression());
}
@Test
public void test_JSON_02() throws JsonParseException, JsonMappingException, IOException {
DAQQuery query = new DAQQuery(
new RequestRangePulseId(
0,
100),
"TestChannel_01");
query.setResponse(new CSVResponse(Compression.GZIP));
String value = mapper.writeValueAsString(query);
DAQQuery deserial = mapper.readValue(value, DAQQuery.class);
assertNotNull(deserial.getResponse());
assertEquals(query.getResponse().getClass(), deserial.getResponse().getClass());
assertEquals(query.getResponse().getFormat(), deserial.getResponse().getFormat());
assertEquals(query.getResponse().getCompression(), deserial.getResponse().getCompression());
assertEquals(query.getResponse().getCompression().getFileSuffix(), deserial.getResponse().getFileSuffix());
}
@Test
public void test_JSON_03() throws JsonParseException, JsonMappingException, IOException {
DAQQuery query = new DAQQuery(
new RequestRangePulseId(
0,
100),
"TestChannel_01");
query.setResponse(new JSONResponse(Compression.NONE));
String value = mapper.writeValueAsString(query);
int index = value.indexOf("format");
assertTrue(index >= 0);
index = value.indexOf("format", index + 1);
// ensure string contains identifier only once
assertEquals(-1, index);
DAQQuery deserial = mapper.readValue(value, DAQQuery.class);
assertNotNull(deserial.getResponse());
assertEquals(query.getResponse().getClass(), deserial.getResponse().getClass());
assertEquals(query.getResponse().getFormat(), deserial.getResponse().getFormat());
assertEquals(query.getResponse().getCompression(), deserial.getResponse().getCompression());
assertEquals(query.getResponse().getFormat().getFileSuffix(), deserial.getResponse().getFileSuffix());
}
@Test
public void test_JSON_04() throws JsonParseException, JsonMappingException, IOException {
DAQQuery query = new DAQQuery(
new RequestRangePulseId(
0,
100),
"TestChannel_01");
String value = mapper.writeValueAsString(query);
DAQQuery deserial = mapper.readValue(value, DAQQuery.class);
assertNull(deserial.getResponse());
}
}