@Test public void specifyingTheSamePath_WithDifferentWildcards() throws Exception { final String fileExtensionTxt = ".txt"; final String fileExtensionXml = ".xml"; String[] args = new String[] { PATH_TO_FILE, PATH_TO_FILE }; jobEntry.setArguments( args ); jobEntry.setFilemasks( new String[] { fileExtensionTxt, fileExtensionXml } ); jobEntry.setArgFromPrevious( false ); jobEntry.execute( new Result(), 0 ); verify( jobEntry ).processFile( eq( PATH_TO_FILE ), eq( fileExtensionTxt ), any( Job.class ) ); verify( jobEntry ).processFile( eq( PATH_TO_FILE ), eq( fileExtensionXml ), any( Job.class ) ); }
@Test public void filesWithNoPath_AreNotProcessed_ArgsOfCurrentJob() throws Exception { jobEntry.setArguments( new String[] { Const.EMPTY_STRING, STRING_SPACES_ONLY } ); jobEntry.setFilemasks( new String[] { null, null } ); jobEntry.setArgFromPrevious( false ); jobEntry.execute( new Result(), 0 ); verify( jobEntry, never() ).processFile( anyString(), anyString(), any( Job.class ) ); }
@Test public void filesWithPath_AreProcessed_ArgsOfCurrentJob() throws Exception { String[] args = new String[] { PATH_TO_FILE }; jobEntry.setArguments( args ); jobEntry.setFilemasks( new String[] { null, null } ); jobEntry.setArgFromPrevious( false ); jobEntry.execute( new Result(), 0 ); verify( jobEntry, times( args.length ) ).processFile( anyString(), anyString(), any( Job.class ) ); verify( mockNamedClusterEmbedManager ).passEmbeddedMetastoreKey( anyObject(), anyString() ); }
@Test public void filesPathVariables_AreProcessed_OnlyIfValueIsNotBlank() throws Exception { final String pathToFileBlankValue = "pathToFileBlankValue"; final String pathToFileValidValue = "pathToFileValidValue"; jobEntry.setVariable( pathToFileBlankValue, Const.EMPTY_STRING ); jobEntry.setVariable( pathToFileValidValue, PATH_TO_FILE ); jobEntry.setArguments( new String[] { asVariable( pathToFileBlankValue ), asVariable( pathToFileValidValue ) } ); jobEntry.setFilemasks( new String[] { null, null } ); jobEntry.setArgFromPrevious( false ); jobEntry.execute( new Result(), 0 ); verify( jobEntry ).processFile( eq( PATH_TO_FILE ), anyString(), any( Job.class ) ); }
jobEntry.setArguments( arguments );