diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java index ec44bd09bf1d..38231037aac4 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java @@ -1155,21 +1155,25 @@ public void testSingleRowMultipleFamily() throws Exception { } } - @Test - public void testNull() throws Exception { - final TableName tableName = TableName.valueOf(name.getMethodName()); - + @Test(expected = IOException.class) + public void testNullTableName() throws IOException { // Null table name (should NOT work) - try { - TEST_UTIL.createTable((TableName)null, FAMILY); - fail("Creating a table with null name passed, should have failed"); - } catch(Exception e) {} + TEST_UTIL.createTable((TableName)null, FAMILY); + fail("Creating a table with null name passed, should have failed"); + } + + @Test(expected = IOException.class) + public void testNullFamilyName() throws IOException { + final TableName tableName = TableName.valueOf(name.getMethodName()); // Null family (should NOT work) - try { - TEST_UTIL.createTable(tableName, new byte[][]{null}); - fail("Creating a table with a null family passed, should fail"); - } catch(Exception e) {} + TEST_UTIL.createTable(tableName, new byte[][]{null}); + fail("Creating a table with a null family passed, should fail"); + } + + @Test + public void testNullRowAndQualifier() throws Exception { + final TableName tableName = TableName.valueOf(name.getMethodName()); try (Table ht = TEST_UTIL.createTable(tableName, FAMILY)) { @@ -1201,9 +1205,13 @@ public void testNull() throws Exception { assertEmptyResult(result); } } + } - // Use a new table - try (Table ht = TEST_UTIL.createTable(TableName.valueOf(name.getMethodName() + "2"), FAMILY)) { + @Test + public void testNullEmptyQualifier() throws Exception { + final TableName tableName = TableName.valueOf(name.getMethodName()); + + try (Table ht = TEST_UTIL.createTable(tableName, FAMILY)) { // Empty qualifier, byte[0] instead of null (should work) try { @@ -1232,9 +1240,16 @@ public void testNull() throws Exception { assertEmptyResult(result); } catch (Exception e) { - throw new IOException("Using a row with null qualifier threw exception, should "); + throw new IOException("Using a row with null qualifier should not throw exception"); } + } + } + + @Test + public void testNullValue() throws IOException { + final TableName tableName = TableName.valueOf(name.getMethodName()); + try (Table ht = TEST_UTIL.createTable(tableName, FAMILY)) { // Null value try { Put put = new Put(ROW); @@ -1550,6 +1565,7 @@ public void testVersions() throws Exception { } @Test + @SuppressWarnings("checkstyle:MethodLength") public void testVersionLimits() throws Exception { final TableName tableName = TableName.valueOf(name.getMethodName()); byte [][] FAMILIES = makeNAscii(FAMILY, 3); @@ -5965,6 +5981,7 @@ public void testNullWithReverseScan() throws Exception { } @Test + @SuppressWarnings("checkstyle:MethodLength") public void testDeletesWithReverseScan() throws Exception { final TableName tableName = TableName.valueOf(name.getMethodName()); byte[][] ROWS = makeNAscii(ROW, 6);