BATCH-1126: Invalid

This commit is contained in:
dsyer
2009-03-07 10:15:15 +00:00
parent b4375aae21
commit deb667ee23
4 changed files with 58 additions and 22 deletions

View File

@@ -19,19 +19,22 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@ContextConfiguration
@RunWith(SpringJUnit4ClassRunner.class)
public class StepScopeIntegrationTests {
@Autowired
@Qualifier("vanilla")
private Step vanilla;
@Autowired
@Qualifier("proxied")
private Step proxied;
@Autowired
@Qualifier("nested")
private Step nested;
@Autowired
@Qualifier("enhanced")
private Step enhanced;
@@ -46,31 +49,47 @@ public class StepScopeIntegrationTests {
StepSynchronizationManager.close();
TestStep.reset();
}
@Test
public void testScopeCreation() throws Exception {
vanilla.execute(new StepExecution("foo",new JobExecution(11L),12L));
vanilla.execute(new StepExecution("foo", new JobExecution(11L), 12L));
assertNotNull(TestStep.getContext());
assertNull(StepSynchronizationManager.getContext());
}
@Test
public void testScopedProxy() throws Exception {
proxied.execute(new StepExecution("foo",new JobExecution(11L),31L));
assertTrue(TestStep.getContext().attributeNames().length>0);
proxied.execute(new StepExecution("foo", new JobExecution(11L), 31L));
assertTrue(TestStep.getContext().attributeNames().length > 0);
String collaborator = (String) TestStep.getContext().getAttribute("collaborator");
assertNotNull(collaborator);
assertEquals("bar", collaborator);
assertTrue("Scoped proxy not created", ((String) TestStep.getContext().getAttribute("collaborator.class"))
.startsWith("class $Proxy"));
}
@Test
public void testNestedScopedProxy() throws Exception {
nested.execute(new StepExecution("foo", new JobExecution(11L), 31L));
assertTrue(TestStep.getContext().attributeNames().length > 0);
String collaborator = (String) TestStep.getContext().getAttribute("collaborator");
assertNotNull(collaborator);
assertEquals("foo", collaborator);
String parent = (String) TestStep.getContext().getAttribute("parent");
assertNotNull(parent);
assertEquals("bar", parent);
assertTrue("Scoped proxy not created", ((String) TestStep.getContext().getAttribute("parent.class"))
.startsWith("class $Proxy"));
}
@Test
public void testExecutionContext() throws Exception {
StepExecution stepExecution = new StepExecution("foo",new JobExecution(11L), 1L);
StepExecution stepExecution = new StepExecution("foo", new JobExecution(11L), 1L);
ExecutionContext executionContext = new ExecutionContext();
executionContext.put("name", "spam");
stepExecution.setExecutionContext(executionContext);
proxied.execute(stepExecution);
assertTrue(TestStep.getContext().attributeNames().length>0);
assertTrue(TestStep.getContext().attributeNames().length > 0);
String collaborator = (String) TestStep.getContext().getAttribute("collaborator");
assertNotNull(collaborator);
assertEquals("bar", collaborator);
@@ -78,8 +97,8 @@ public class StepScopeIntegrationTests {
@Test
public void testScopedProxyForReference() throws Exception {
enhanced.execute(new StepExecution("foo",new JobExecution(11L),123L));
assertTrue(TestStep.getContext().attributeNames().length>0);
enhanced.execute(new StepExecution("foo", new JobExecution(11L), 123L));
assertTrue(TestStep.getContext().attributeNames().length > 0);
String collaborator = (String) TestStep.getContext().getAttribute("collaborator");
assertNotNull(collaborator);
assertEquals("bar", collaborator);
@@ -87,8 +106,8 @@ public class StepScopeIntegrationTests {
@Test
public void testScopedProxyForSecondReference() throws Exception {
doubleEnhanced.execute(new StepExecution("foo",new JobExecution(11L),321L));
assertTrue(TestStep.getContext().attributeNames().length>0);
doubleEnhanced.execute(new StepExecution("foo", new JobExecution(11L), 321L));
assertTrue(TestStep.getContext().attributeNames().length > 0);
String collaborator = (String) TestStep.getContext().getAttribute("collaborator");
assertNotNull(collaborator);
assertEquals("bar", collaborator);

View File

@@ -33,8 +33,12 @@ public class TestStep implements Step {
private void setContextFromCollaborator() {
if (context != null) {
String name = collaborator.getName();
context.setAttribute("collaborator", name);
context.setAttribute("collaborator", collaborator.getName());
context.setAttribute("collaborator.class", collaborator.getClass().toString());
if (collaborator.getParent()!=null) {
context.setAttribute("parent", collaborator.getParent().getName());
context.setAttribute("parent.class", collaborator.getParent().getClass().toString());
}
}
}