HBase-4555: TestShell seems passed, but actually errors are seen in test output file
Review Request #2351 - Created Oct. 11, 2011 and updated
HBase shell unit cases are in ruby. Ruby unit test runner Test::Unit::AutoRunner.run only prints unit tests assertion failures to console by default. So it actually swallows all the assertion errors from ruby, and junit cannot notice any shell test failure. Fixed the test_runner.rb to chech the return value and throw a runtime exception, so that TestShell can get to know there is something wrong by test errors. Also fixed 7 previously existing failed test cases. In addition, after HBase-1730, there's no need to disable a table before altering a table. Changed the test cases accordingly.
TestShell passed locally.