use of org.ff4j.audit.EventQueryDefinition in project ff4j by ff4j.
the class EventRepositoryTestSupport method testSaveCheckOff.
/**
* TDD.
*/
@Test
public void testSaveCheckOff() throws InterruptedException {
long start = System.currentTimeMillis();
// Given
Event evt1 = new Event(SOURCE_JAVA, TARGET_FEATURE, "f1", ACTION_CHECK_OFF);
// When
Assert.assertTrue(repo.saveEvent(evt1));
Thread.sleep(100);
// Then
Assert.assertEquals(0, repo.getFeatureUsageTotalHitCount(new EventQueryDefinition(start, System.currentTimeMillis())));
Assert.assertEquals(0, repo.getAuditTrail(new EventQueryDefinition(start, System.currentTimeMillis())).size());
}
use of org.ff4j.audit.EventQueryDefinition in project ff4j by ff4j.
the class EventRepositoryTestSupport method testSourceHitCount.
/**
* TDD.
*/
@Test
public void testSourceHitCount() throws InterruptedException {
long start = System.currentTimeMillis();
// When
for (int i = 0; i < 8; i++) {
Thread.sleep(100);
repo.saveEvent(new Event(SOURCE_JAVA, TARGET_FEATURE, "f1", ACTION_CHECK_OK));
repo.saveEvent(new Event(SOURCE_WEB, TARGET_FEATURE, "f2", ACTION_CHECK_OK));
}
Thread.sleep(200);
repo.saveEvent(new Event(SOURCE_WEBAPI, TARGET_FEATURE, "f1", ACTION_CHECK_OK));
Thread.sleep(200);
// Then
EventQueryDefinition testQuery = new EventQueryDefinition(start - 20, System.currentTimeMillis());
Map<String, MutableHitCount> mapOfHit = repo.getSourceHitCount(testQuery);
Assert.assertEquals(3, mapOfHit.size());
Assert.assertTrue(mapOfHit.containsKey(SOURCE_JAVA));
Assert.assertTrue(mapOfHit.containsKey(SOURCE_WEB));
Assert.assertEquals(1, mapOfHit.get(SOURCE_WEBAPI).get());
}
use of org.ff4j.audit.EventQueryDefinition in project ff4j by ff4j.
the class EventRepositoryTestSupport method testPurgeEvents.
/**
* TDD.
*/
@Test
public void testPurgeEvents() throws InterruptedException {
// Given, 2 events in the repo
long topStart = System.currentTimeMillis();
Event evtAudit = new Event(SOURCE_JAVA, TARGET_FEATURE, "f1", ACTION_CREATE);
evtAudit.setUuid("1234-5678-9012-3456");
Event evtFeatureUsage = new Event(SOURCE_JAVA, TARGET_FEATURE, "f2", ACTION_CHECK_OK);
evtFeatureUsage.setUuid("1234-5678-9012-3457");
repo.saveEvent(evtAudit);
repo.saveEvent(evtFeatureUsage);
Thread.sleep(100);
Assert.assertNotNull(repo.getEventByUUID(evtAudit.getUuid(), System.currentTimeMillis()));
Assert.assertNotNull(repo.getEventByUUID(evtFeatureUsage.getUuid(), System.currentTimeMillis()));
// When
EventQueryDefinition testQuery = new EventQueryDefinition(topStart - 100, System.currentTimeMillis());
repo.purgeAuditTrail(testQuery);
// Then
Assert.assertNull(repo.getEventByUUID(evtAudit.getUuid(), System.currentTimeMillis()));
repo.purgeFeatureUsage(testQuery);
Thread.sleep(100);
Assert.assertNull(repo.getEventByUUID(evtFeatureUsage.getUuid(), System.currentTimeMillis()));
}
use of org.ff4j.audit.EventQueryDefinition in project ff4j by ff4j.
the class EventRepositoryTestSupport method testUserHitCount.
/**
* TDD.
*/
@Test
public void testUserHitCount() throws InterruptedException {
long start = System.currentTimeMillis();
// When
for (int i = 0; i < 8; i++) {
Event e1 = new Event(SOURCE_JAVA, TARGET_FEATURE, "f1", ACTION_CHECK_OK);
e1.setUser("JOHN");
repo.saveEvent(e1);
Thread.sleep(100);
Event e2 = new Event(SOURCE_JAVA, TARGET_FEATURE, "f1", ACTION_CHECK_OK);
e2.setUser("BOB");
repo.saveEvent(e2);
Thread.sleep(100);
}
Thread.sleep(200);
// Then
EventQueryDefinition testQuery = new EventQueryDefinition(start - 20, System.currentTimeMillis());
Map<String, MutableHitCount> mapOfHit = repo.getUserHitCount(testQuery);
Assert.assertEquals(2, mapOfHit.size());
Assert.assertTrue(mapOfHit.containsKey("JOHN"));
Assert.assertTrue(mapOfHit.containsKey("BOB"));
Assert.assertEquals(8, mapOfHit.get("BOB").get());
}
use of org.ff4j.audit.EventQueryDefinition in project ff4j by ff4j.
the class EventRepositoryTestSupport method testSaveEventUnit.
/**
* TDD.
*/
@Test
public void testSaveEventUnit() throws InterruptedException {
long start = System.currentTimeMillis();
// Given
EventQueryDefinition eqd = new EventQueryDefinition(start, System.currentTimeMillis());
Assert.assertEquals(0, repo.getFeatureUsageTotalHitCount(eqd));
// When
repo.saveEvent(generateFeatureUsageEvent("f1"));
// Wait for the event to be effectively store
Thread.sleep(100);
// Then
EventQueryDefinition eqd2 = new EventQueryDefinition(start - 20, System.currentTimeMillis());
Assert.assertEquals(1, repo.getFeatureUsageTotalHitCount(eqd2));
}
Aggregations