@RunWith(CassandraRunner.class)
public class CounterDataStoreTest {
@Test
public void getCounters() throws InterruptedException {
final CassandraCounterDataStore store = new CassandraCounterDataStore() {
protected void initMarkerIfNotAlreadyDone() {
marker = "test";
}
@Override
protected int getPeriod(final String prefix) {
return 100;
}
};
assertEquals(0, store.getCounters().size());
final Counter counter = store.getOrCreateCounter(new Counter.Key(Role.FAILURES, "oops"));
counter.add(150);
counter.updateConcurrency(5);
Thread.sleep(250);
final Collection<Counter> counters = store.getCounters();
assertEquals(1, counters.size());
final Counter c = counters.iterator().next();
assertEquals(counter, c); // compare only key
assertEquals(5, c.getMaxConcurrency());