[ 
https://issues.apache.org/jira/browse/HBASE-19310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Elser updated HBASE-19310:
-------------------------------
      Resolution: Fixed
    Hadoop Flags: Reviewed
          Status: Resolved  (was: Patch Available)

Thanks Ted and Stack.

> Verify IntegrationTests don't rely on Rules outside of JUnit context
> --------------------------------------------------------------------
>
>                 Key: HBASE-19310
>                 URL: https://issues.apache.org/jira/browse/HBASE-19310
>             Project: HBase
>          Issue Type: Bug
>          Components: integration tests
>            Reporter: Romil Choksi
>            Assignee: Josh Elser
>            Priority: Critical
>             Fix For: 2.0.0-beta-1
>
>         Attachments: HBASE-19310.001.branch-2.patch, 
> HBASE-19310.002.branch-2.patch
>
>
> {noformat}
> 2017-11-16 00:43:41,204 INFO  [main] mapreduce.IntegrationTestImportTsv: 
> Running test testGenerateAndLoad.
> Exception in thread "main" java.lang.NullPointerException
>   at org.apache.hadoop.hbase.TableName.valueOf(TableName.java:461)
>   at 
> org.apache.hadoop.hbase.mapreduce.IntegrationTestImportTsv.testGenerateAndLoad(IntegrationTestImportTsv.java:189)
>   at 
> org.apache.hadoop.hbase.mapreduce.IntegrationTestImportTsv.run(IntegrationTestImportTsv.java:229)
>   at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
>   at 
> org.apache.hadoop.hbase.mapreduce.IntegrationTestImportTsv.main(IntegrationTestImportTsv.java:239)
> {noformat}
> (Potential line-number skew)
> {code}
>   @Test
>   public void testGenerateAndLoad() throws Exception {
>     LOG.info("Running test testGenerateAndLoad.");
>     final TableName table = TableName.valueOf(name.getMethodName());
> {code}
> The JUnit framework sets the test method name inside of the JUnit {{Rule}}. 
> When we invoke the test directly (ala {{hbase 
> org.apache.hadoop.hbase.mapreduce.IntegrationTestImportTsv}}), this 
> {{getMethodName()}} returns {{null}} and we get the above stacktrace.
> Should make a pass over the ITs with main methods and {{Rule}}'s to make sure 
> we don't have this lurking. Another alternative is to just remove the main 
> methods and just force use of {{IntegrationTestsDriver}} instead.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to