@Test(expected = IllegalArgumentException.class) public void testWrongSignatureNamedMethod() { AbstractTestComponent delegate = new AbstractTestComponent() { @SuppressWarnings("unused") public void aMethod(Integer item) { executed = true; } }; factoryBean.setDelegate(delegate); Map<String, String> metaDataMap = new HashMap<>(); metaDataMap.put(AFTER_JOB.getPropertyName(), "aMethod"); factoryBean.setMetaDataMap(metaDataMap); factoryBean.getObject(); }
@Test public void testEmptySignatureNamedMethod() { AbstractTestComponent delegate = new AbstractTestComponent() { @SuppressWarnings("unused") public void aMethod() { executed = true; } }; factoryBean.setDelegate(delegate); Map<String, String> metaDataMap = new HashMap<>(); metaDataMap.put(AFTER_JOB.getPropertyName(), "aMethod"); factoryBean.setMetaDataMap(metaDataMap); JobExecutionListener listener = (JobExecutionListener) factoryBean.getObject(); listener.afterJob(new JobExecution(1L)); assertTrue(delegate.isExecuted()); }
@Test public void testRightSignatureNamedMethod() { AbstractTestComponent delegate = new AbstractTestComponent() { @SuppressWarnings("unused") public void aMethod(JobExecution jobExecution) { executed = true; assertEquals(new Long(25), jobExecution.getId()); } }; factoryBean.setDelegate(delegate); Map<String, String> metaDataMap = new HashMap<>(); metaDataMap.put(AFTER_JOB.getPropertyName(), "aMethod"); factoryBean.setMetaDataMap(metaDataMap); JobExecutionListener listener = (JobExecutionListener) factoryBean.getObject(); listener.afterJob(new JobExecution(25L)); assertTrue(delegate.isExecuted()); }