INT-1684 added tests for time-unit attribute on teh poller

This commit is contained in:
Oleg Zhurakousky
2010-12-13 15:11:35 -05:00
parent 55d0f965d4
commit 38af0cd2e3
3 changed files with 28 additions and 7 deletions

View File

@@ -20,6 +20,8 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import java.util.concurrent.TimeUnit;
import org.junit.Test;
import org.springframework.beans.factory.parsing.BeanDefinitionParsingException;
@@ -28,6 +30,8 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.integration.config.TestTrigger;
import org.springframework.integration.context.IntegrationContextUtils;
import org.springframework.integration.scheduling.PollerMetadata;
import org.springframework.integration.test.util.TestUtils;
import org.springframework.scheduling.support.PeriodicTrigger;
/**
* @author Mark Fisher
@@ -81,13 +85,15 @@ public class PollerParserTests {
}
@Test
public void pollerWithReceiveTimeout() {
public void pollerWithReceiveTimeoutAndTimeunit() {
ApplicationContext context = new ClassPathXmlApplicationContext(
"pollerWithReceiveTimeout.xml", PollerParserTests.class);
Object poller = context.getBean("poller");
assertNotNull(poller);
PollerMetadata metadata = (PollerMetadata) poller;
assertEquals(1234, metadata.getReceiveTimeout());
PeriodicTrigger trigger = (PeriodicTrigger) metadata.getTrigger();
assertEquals(TimeUnit.SECONDS.toString(), TestUtils.getPropertyValue(trigger, "timeUnit").toString());
}
@Test
@@ -99,5 +105,10 @@ public class PollerParserTests {
PollerMetadata metadata = (PollerMetadata) poller;
assertTrue(metadata.getTrigger() instanceof TestTrigger);
}
@Test(expected=BeanDefinitionParsingException.class)
public void pollerWithCronTriggerAndTimeUnit() {
new ClassPathXmlApplicationContext(
"cronTriggerWithTimeUnit-fail.xml", PollerParserTests.class);
}
}

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/integration"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration-2.0.xsd">
<poller id="pollerWithAttribute" cron="*/10 * 9-17 * * MON-FRI" receive-timeout="1234" time-unit="MILLISECONDS"/>
</beans:beans>

View File

@@ -5,10 +5,8 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration.xsd">
<poller id="poller" receive-timeout="1234">
<interval-trigger interval="5" time-unit="SECONDS"/>
</poller>
http://www.springframework.org/schema/integration/spring-integration-2.0.xsd">
<poller id="poller" receive-timeout="1234" fixed-rate="5" time-unit="SECONDS"/>
</beans:beans>