@Test @SuppressWarnings({ "deprecation" }) public void shouldCreateAndRunSubmittableJob() throws Exception { RowCounter rCounter = new RowCounter(); rCounter.setConf(HBaseConfiguration.create()); String[] args = new String[] { "\temp", "tableA", "column1", "column2", "column3" }; JobConf jobConfig = rCounter.createSubmittableJob(args); assertNotNull(jobConfig); assertEquals(0, jobConfig.getNumReduceTasks()); assertEquals("rowcounter", jobConfig.getJobName()); assertEquals(jobConfig.getMapOutputValueClass(), Result.class); assertEquals(jobConfig.getMapperClass(), RowCounterMapper.class); assertEquals(jobConfig.get(TableInputFormat.COLUMN_LIST), Joiner.on(' ') .join("column1", "column2", "column3")); assertEquals(jobConfig.getMapOutputKeyClass(), ImmutableBytesWritable.class); }
@Test @SuppressWarnings({ "deprecation", "unchecked" }) public void shouldRegInReportEveryIncomingRow() throws IOException { int iterationNumber = 999; RowCounter.RowCounterMapper mapper = new RowCounter.RowCounterMapper(); Reporter reporter = mock(Reporter.class); for (int i = 0; i < iterationNumber; i++) mapper.map(mock(ImmutableBytesWritable.class), mock(Result.class), mock(OutputCollector.class), reporter); Mockito.verify(reporter, times(iterationNumber)).incrCounter( any(Enum.class), anyInt()); }
@Test @SuppressWarnings({ "deprecation", "unchecked" }) public void shouldRegInReportEveryIncomingRow() throws IOException { int iterationNumber = 999; RowCounter.RowCounterMapper mapper = new RowCounter.RowCounterMapper(); Reporter reporter = mock(Reporter.class); for (int i = 0; i < iterationNumber; i++) mapper.map(mock(ImmutableBytesWritable.class), mock(Result.class), mock(OutputCollector.class), reporter); Mockito.verify(reporter, times(iterationNumber)).incrCounter( any(), anyLong()); }