package com.netflix.staash.web.tests; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; import com.google.inject.Guice; import com.google.inject.Injector; import com.netflix.staash.json.JsonObject; import com.netflix.staash.service.PaasDataService; import com.netflix.staash.service.PaasMetaService; import com.netflix.staash.test.modules.TestStaashModule; import com.netflix.staash.test.core.CassandraRunner; //@RequiresKeyspace(ksName = "paasmetaks") //@RequiresColumnFamily(ksName = "paasmetaks", cfName = "metacf", comparator = "org.apache.cassandra.db.marshal.UTF8Type", keyValidator = "org.apache.cassandra.db.marshal.UTF8Type") //@SuppressWarnings({ "rawtypes", "unchecked" }) @RunWith(CassandraRunner.class) public class TimeSeriesTest { public static PaasMetaService metasvc; public static PaasDataService datasvc; public static final String db = "unitdb1"; public static final String timeseries = "testtimeseries1"; public static String timeseriespay = "{\"name\":\"timeseries1\",\"periodicity\":\"10000\",\"prefix\":\"server1\",\"storage\":\"cassandratest\"}"; @BeforeClass public static void setup() { TestStaashModule pmod = new TestStaashModule(); Injector inj = Guice.createInjector(pmod); metasvc = inj.getInstance(PaasMetaService.class); datasvc = inj.getInstance(PaasDataService.class); StaashTestHelper.createTestStorage(metasvc); StaashTestHelper.createTestDB(metasvc); StaashTestHelper.createTestTimeSeries(metasvc, timeseriespay); System.out.println("Done:"); } @Test public void testTimeseriesWriteRead() { String payload1="{\"timestamp\":11000,\"event\":\"hi 11k event\",\"prefix\":\"source1\"}"; String payload2="{\"timestamp\":21000,\"event\":\"hi 21k event\",\"prefix\":\"source1\"}"; String payload3="{\"timestamp\":121000,\"event\":\"hi 121k event\",\"prefix\":\"source2\"}"; StaashTestHelper.writeEvent(datasvc, new JsonObject(payload1)); StaashTestHelper.writeEvent(datasvc, new JsonObject(payload2)); StaashTestHelper.writeEvent(datasvc, new JsonObject(payload3)); readTimeSeries(); } private void readTimeSeries() { String db = "unitdb1"; String table = "timeseries1"; String out = ""; out = datasvc.readEvent(db, table, "source2","121000"); assert out.equals("{\"1 Jan 1970 00:02:01 GMT\":\"hi 121k event\"}"); System.out.println("out= "+out); out = datasvc.readEvent(db, table, "source1", "21000"); assert out.equals("{\"1 Jan 1970 00:00:21 GMT\":\"hi 21k event\"}"); System.out.println("out= "+out); out = datasvc.readEvent(db, table, "source1", "11000"); assert out.equals("{\"1 Jan 1970 00:00:11 GMT\":\"hi 11k event\"}"); System.out.println("out= "+out); } }