[
https://issues.apache.org/jira/browse/SQOOP-3090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15770129#comment-15770129
]
Boglarka Egyed commented on SQOOP-3090:
---------------------------------------
Hi [~maugli],
I would run the tests with JUnit4 and the following JUnit Rule would be added
to verify if a specific exception has been thrown:
{code:java}
@Rule
public ExpectedException exception = ExpectedException.none();
{code}
In this way the logic described above could be replaced with this simpler one:
{code:java}
Exception expectedException = new Exception();
exception.expect(sameInstance(expectedException));
<do something>
{code}
Based on my research around 14 test classes would be effected:
* TestAvroExport
* TestCodecMap
* TestConnFactory
* TestExportUpdate
* TestExportUsingProcedure
* TestHCatalogBasic
* TestHiveImport
* TestLobFile
* TestParquetExport
* TextSplitterHadoopConfIntegrationTest
* TestSqoopOptions
* TestTableDefWriter
* TestTargetDir
* TestTextSplitter
These could be divided into subgroups to reduce the impact of the change on a
test set. What do you think?
I would like to start to work on this as soon as possible, even today.
Thanks for your thoughts in advance!
Cheers,
Bogi
> Normalize test cases where expect an exception
> ----------------------------------------------
>
> Key: SQOOP-3090
> URL: https://issues.apache.org/jira/browse/SQOOP-3090
> Project: Sqoop
> Issue Type: Improvement
> Affects Versions: 1.4.6
> Reporter: Boglarka Egyed
> Assignee: Boglarka Egyed
> Priority: Minor
>
> Many test cases uses the following logic to test if an exception has been
> thrown:
> {code:java}
> try {
> <do something>
> fail("Expected exception");
> } catch (someException e) {
> // expected
> }
> }
> {code}
> This form is not self-explanatory enough and could be replaced by a one line
> ExpectedException check which would be more clean.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)