@Test
	public void testFileJdbcJobMultipleInvocations() {
		List<String> data = new ArrayList<>();
		String curData = UUID.randomUUID().toString();
		data.add(curData);
		final String FILE_NAME = DEFAULT_FILE_NAME+"_MULTIPLE";
		jdbcSink.getJdbcTemplate().getDataSource();
		FileJdbcJob job = new FileJdbcJob(DEFAULT_DIRECTORY, FILE_NAME+"*",
				FileJdbcJob.DEFAULT_TABLE_NAME, FileJdbcJob.DEFAULT_NAMES, true);

		job(jobName, job.toDSL(), true);

		// Setup data files to be used for test
		assertTrue(setupDataFiles(getContainerHostForJob(jobName), DEFAULT_DIRECTORY,
				FILE_NAME + "1.out", curData));

		jobLaunch(jobName);
		String query = String.format("SELECT data FROM %s", tableName);

		waitForTablePopulation(query, jdbcSink.getJdbcTemplate(), 1);

		List<String> results = jdbcSink.getJdbcTemplate().queryForList(query, String.class);

		assertEquals(1, results.size());

		for (String result : results) {
			assertTrue(data.contains(result));
		}

		assertTrue(!fileExistsOnXDInstance(getContainerHostForJob(jobName), DEFAULT_DIRECTORY + File.separator + FILE_NAME + "1.out"));

		curData = UUID.randomUUID().toString();
		data.add(curData);

		assertTrue(setupDataFiles(getContainerHostForJob(jobName), DEFAULT_DIRECTORY,
				FILE_NAME + "2.out", curData));

		jobLaunch(jobName);

		waitForTablePopulation(query, jdbcSink.getJdbcTemplate(), 2);

		results = jdbcSink.getJdbcTemplate().queryForList(query, String.class);

		assertEquals(2, results.size());

		for (String result : results) {
			assertTrue(data.contains(result));
		}

		assertTrue(!fileExistsOnXDInstance(getContainerHostForJob(jobName), DEFAULT_DIRECTORY + File.separator + FILE_NAME + "2.out"));
	}
Asserts that fileJdbcJob has written the test data from a file to the table.
spring-xd-integration-test/src/test/java/org/springframework/xd/integration/test/FileJdbcTest.java