Search in sources :

Example 1 with DummyStatRetriever

use of com.emc.storageos.api.service.utils.DummyStatRetriever in project coprhd-controller by CoprHD.

the class MeteringServiceTest method meteringServiceTestXML.

@Test
public void meteringServiceTestXML() throws WebApplicationException, IOException, JAXBException {
    deleteIfExists(XmlTestOutputFile);
    DummyStatRetriever dbStatRetriever = new DummyStatRetriever();
    MeteringService statResource = new MeteringService();
    statResource.setStatRetriever(dbStatRetriever);
    DummyHttpHeaders header = new DummyHttpHeaders(MediaType.APPLICATION_XML_TYPE);
    Response r = statResource.getStats("2012-08-08T00:00", header);
    Assert.assertNotNull(r);
    Assert.assertEquals(Status.OK.getStatusCode(), r.getStatus());
    Assert.assertTrue(r.getEntity() instanceof StreamingOutput);
    StreamingOutput so = (StreamingOutput) r.getEntity();
    File of = new File(XmlTestOutputFile);
    OutputStream os = new FileOutputStream(of);
    so.write(os);
    os.close();
    JAXBContext context = null;
    Unmarshaller unmarshaller = null;
    context = JAXBContext.newInstance(Stats.class);
    unmarshaller = context.createUnmarshaller();
    Object o = unmarshaller.unmarshal(new File(XmlTestOutputFile));
    Assert.assertTrue(o instanceof Stats);
    Stats stats = (Stats) o;
    // expected number of stats unmarshaled
    Assert.assertEquals(100, stats.stats.size());
    deleteIfExists(XmlTestOutputFile);
}
Also used : Response(javax.ws.rs.core.Response) DummyHttpHeaders(com.emc.storageos.api.service.utils.DummyHttpHeaders) MeteringService(com.emc.storageos.api.service.impl.resource.MeteringService) DummyStatRetriever(com.emc.storageos.api.service.utils.DummyStatRetriever) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) Stats(com.emc.storageos.api.service.utils.Stats) StreamingOutput(javax.ws.rs.core.StreamingOutput) JAXBContext(javax.xml.bind.JAXBContext) Unmarshaller(javax.xml.bind.Unmarshaller) File(java.io.File) Test(org.junit.Test)

Example 2 with DummyStatRetriever

use of com.emc.storageos.api.service.utils.DummyStatRetriever in project coprhd-controller by CoprHD.

the class MeteringServiceTest method testMeteringServiceJSON.

@Test
public void testMeteringServiceJSON() throws WebApplicationException, IOException, JsonParseException {
    deleteIfExists(JsonTestOutputFile);
    DummyStatRetriever dbStatRetriever = new DummyStatRetriever();
    MeteringService statResource = new MeteringService();
    statResource.setStatRetriever(dbStatRetriever);
    DummyHttpHeaders header = new DummyHttpHeaders(MediaType.APPLICATION_JSON_TYPE);
    Response r = statResource.getStats("2012-08-08T00", header);
    Assert.assertNotNull(r);
    Assert.assertEquals(Status.OK.getStatusCode(), r.getStatus());
    Assert.assertTrue(r.getEntity() instanceof StreamingOutput);
    StreamingOutput so = (StreamingOutput) r.getEntity();
    File of = new File(JsonTestOutputFile);
    OutputStream os = new FileOutputStream(of);
    try {
        so.write(os);
    } finally {
        os.close();
    }
    ObjectMapper mapper = null;
    mapper = new ObjectMapper();
    AnnotationIntrospector introspector = new JaxbAnnotationIntrospector();
    mapper.getDeserializationConfig().withAnnotationIntrospector(introspector);
    Stats stats = mapper.readValue(new File(JsonTestOutputFile), Stats.class);
    Assert.assertEquals(100, stats.stats.size());
    deleteIfExists(JsonTestOutputFile);
}
Also used : Response(javax.ws.rs.core.Response) DummyHttpHeaders(com.emc.storageos.api.service.utils.DummyHttpHeaders) MeteringService(com.emc.storageos.api.service.impl.resource.MeteringService) DummyStatRetriever(com.emc.storageos.api.service.utils.DummyStatRetriever) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) JaxbAnnotationIntrospector(org.codehaus.jackson.xc.JaxbAnnotationIntrospector) AnnotationIntrospector(org.codehaus.jackson.map.AnnotationIntrospector) Stats(com.emc.storageos.api.service.utils.Stats) StreamingOutput(javax.ws.rs.core.StreamingOutput) File(java.io.File) ObjectMapper(org.codehaus.jackson.map.ObjectMapper) JaxbAnnotationIntrospector(org.codehaus.jackson.xc.JaxbAnnotationIntrospector) Test(org.junit.Test)

Aggregations

MeteringService (com.emc.storageos.api.service.impl.resource.MeteringService)2 DummyHttpHeaders (com.emc.storageos.api.service.utils.DummyHttpHeaders)2 DummyStatRetriever (com.emc.storageos.api.service.utils.DummyStatRetriever)2 Stats (com.emc.storageos.api.service.utils.Stats)2 File (java.io.File)2 FileOutputStream (java.io.FileOutputStream)2 OutputStream (java.io.OutputStream)2 Response (javax.ws.rs.core.Response)2 StreamingOutput (javax.ws.rs.core.StreamingOutput)2 Test (org.junit.Test)2 JAXBContext (javax.xml.bind.JAXBContext)1 Unmarshaller (javax.xml.bind.Unmarshaller)1 AnnotationIntrospector (org.codehaus.jackson.map.AnnotationIntrospector)1 ObjectMapper (org.codehaus.jackson.map.ObjectMapper)1 JaxbAnnotationIntrospector (org.codehaus.jackson.xc.JaxbAnnotationIntrospector)1