use of com.axway.ats.rbv.Monitor in project ats-framework by Axway.
the class Test_SimpleMonitorListener method verifyNoMatch_ButHasAMatch.
@Test
public void verifyNoMatch_ButHasAMatch() throws RbvException {
DbFieldsRule dbRule = new DbStringFieldRule("", "key1", "value00", MatchRelation.EQUALS, "verifyNoMatch_ButHasAMatch", true);
Monitor monitor = new Monitor("monitor1", matchable, dbRule, pollingParams, false, true, false);
List<Monitor> monitors = new ArrayList<Monitor>();
monitors.add(monitor);
SimpleMonitorListener listener = new SimpleMonitorListener(monitors);
long before = System.currentTimeMillis();
assertFalse(listener.evaluateMonitors(TIME_END_POLL));
long after = System.currentTimeMillis();
assertTrue(after - before >= TIME_BEFORE_END_POLL);
}
use of com.axway.ats.rbv.Monitor in project ats-framework by Axway.
the class Test_SimpleMonitorListener method evaluateMonitorsOneMonitorPositiveRunTwice.
@Test
public void evaluateMonitorsOneMonitorPositiveRunTwice() throws RbvException {
DbFieldsRule dbRule = new DbStringFieldRule("", "key1", "value10", MatchRelation.EQUALS, "evaluateMonitorsOneMonitorPositiveRunTwice", true);
Monitor monitor = new Monitor("monitor1", matchable, dbRule, pollingParams, true, false, false);
List<Monitor> monitors = new ArrayList<Monitor>();
monitors.add(monitor);
SimpleMonitorListener listener = new SimpleMonitorListener(monitors);
assertTrue(listener.evaluateMonitors(TIME_END_POLL));
assertTrue(listener.evaluateMonitors(TIME_END_POLL));
}
use of com.axway.ats.rbv.Monitor in project ats-framework by Axway.
the class VerificationSkeleton method verify.
/**
* Verify that all rules match using the given expected result
*
* @param expectedResult the expected result
* @param endOnFirstMatch end on first match or keep testing until all polling attempts are exhausted
* @param endOnFirstFailure end or first failure or keep testing until all polling attempts are exhausted
*
* @return the matched meta data
* @throws RbvException on error doing the verifications
*/
protected List<MetaData> verify(boolean expectedResult, boolean endOnFirstMatch, boolean endOnFirstFailure) throws RbvException {
try {
this.executor.setRootRule(this.rootRule);
applyConfigurationSettings();
Monitor monitor = new Monitor(getMonitorName(), this.folder, this.executor, new PollingParameters(pollingInitialDelay, pollingInterval, pollingAttempts), expectedResult, endOnFirstMatch, endOnFirstFailure);
ArrayList<Monitor> monitors = new ArrayList<Monitor>();
monitors.add(monitor);
SimpleMonitorListener monitorListener = new SimpleMonitorListener(monitors);
boolean evaluationPassed = monitorListener.evaluateMonitors(pollingTimeout);
String lastRuleName = monitor.getLastRuleName();
String classSimpleName = getClass().getSimpleName();
if ("FileSystemVerification".equals(classSimpleName) && !expectedResult) {
lastRuleName = "File do exist!";
} else if (lastRuleName != null) {
lastRuleName = "Rule failed '" + lastRuleName + "'!";
} else {
if ("DbVerification".equals(classSimpleName)) {
lastRuleName = "Database connection problem!";
} else if ("FileSystemVerification".equals(classSimpleName) && expectedResult) {
lastRuleName = "File does not exist!";
} else {
lastRuleName = "Server connection problem!";
}
}
if (evaluationPassed == false) {
throw new RbvVerificationException("Verification failed. " + lastRuleName);
}
return monitor.getAllMatchedMetaData();
} catch (ConfigurationException ce) {
throw new RbvException("RBV configuration error", ce);
}
}
use of com.axway.ats.rbv.Monitor in project ats-framework by Axway.
the class Test_SimpleMonitorListener method evaluateMonitorsMultipleMonitorsEndOnFirstMatchPositive.
@Test
public void evaluateMonitorsMultipleMonitorsEndOnFirstMatchPositive() throws RbvException {
DbStorage storage = new DbStorage(new MockDbProvider());
Matchable matchable1 = storage.getFolder(new DbSearchTerm(""));
Matchable matchable2 = storage.getFolder(new DbSearchTerm(""));
Matchable matchable3 = storage.getFolder(new DbSearchTerm(""));
DbFieldsRule dbRule = new DbStringFieldRule("", "key1", "value10", MatchRelation.EQUALS, "evaluateMonitorsMultipleMonitorsEndOnFirstMatchPositive", true);
Monitor monitor1 = new Monitor("monitor1", matchable1, dbRule, pollingParams, true, true, false);
Monitor monitor2 = new Monitor("monitor2", matchable2, dbRule, pollingParams, true, true, false);
Monitor monitor3 = new Monitor("monitor3", matchable3, dbRule, pollingParams, true, true, false);
List<Monitor> monitors = new ArrayList<Monitor>();
monitors.add(monitor1);
monitors.add(monitor2);
monitors.add(monitor3);
SimpleMonitorListener listener = new SimpleMonitorListener(monitors);
assertTrue(listener.evaluateMonitors(TIME_END_POLL));
}
use of com.axway.ats.rbv.Monitor in project ats-framework by Axway.
the class Test_SimpleMonitorListener method monitorGetFirstMachingMetaData.
@Test
public void monitorGetFirstMachingMetaData() throws RbvException {
DbFieldsRule dbRule = new DbStringFieldRule("", "key1", "value10", MatchRelation.EQUALS, "monitorGetFirstMachingMetaData", true);
Monitor monitor = new Monitor("monitor1", matchable, dbRule, pollingParams, true, true, false);
List<Monitor> monitors = new ArrayList<Monitor>();
monitors.add(monitor);
SimpleMonitorListener listener = new SimpleMonitorListener(monitors);
listener.evaluateMonitors(TIME_END_POLL);
assertEquals("value10", monitor.getFirstMatchedMetaData().getProperty("key1"));
}
Aggregations