HBASE-12885 Unit test for RAW / VERSIONS scanner specifications (Amit Kabra)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/1c1a306b Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/1c1a306b Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/1c1a306b Branch: refs/heads/master Commit: 1c1a306b2e4bdd5a4ff877634c5064097637e2f2 Parents: 45fdc0e Author: Andrew Purtell <[email protected]> Authored: Sun Jan 25 17:32:49 2015 -0800 Committer: Andrew Purtell <[email protected]> Committed: Sun Jan 25 17:32:49 2015 -0800 ---------------------------------------------------------------------- hbase-shell/src/test/ruby/hbase/table_test.rb | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/1c1a306b/hbase-shell/src/test/ruby/hbase/table_test.rb ---------------------------------------------------------------------- diff --git a/hbase-shell/src/test/ruby/hbase/table_test.rb b/hbase-shell/src/test/ruby/hbase/table_test.rb index 7697a2a..dc4dc0d 100644 --- a/hbase-shell/src/test/ruby/hbase/table_test.rb +++ b/hbase-shell/src/test/ruby/hbase/table_test.rb @@ -516,6 +516,36 @@ module Hbase assert_nil(res['2']['x:b']) end + define_test "scan should work with raw and version parameter" do + # Create test table if it does not exist + @test_name_raw = "hbase_shell_tests_raw_scan" + create_test_table(@test_name_raw) + @test_table = table(@test_name_raw) + + # Instert test data + @test_table.put(1, "x:a", 1) + @test_table.put(2, "x:raw1", 11) + @test_table.put(2, "x:raw1", 11) + @test_table.put(2, "x:raw1", 11) + @test_table.put(2, "x:raw1", 11) + + args = {} + numRows = 0 + count = @test_table._scan_internal(args) do |row, cells| # Normal Scan + numRows += 1 + end + assert_equal(numRows, 2, "Num rows scanned without RAW/VERSIONS are not 2") + + args = {VERSIONS=>10,RAW=>true} # Since 4 versions of row with rowkey 2 is been added, we can use any number >= 4 for VERSIONS to scan all 4 versions. + numRows = 0 + count = @test_table._scan_internal(args) do |row, cells| # Raw Scan + numRows += 1 + end + assert_equal(numRows, 5, "Num rows scanned without RAW/VERSIONS are not 5") # 5 since , 1 from row key '1' and other 4 from row key '4' + end + + + define_test "scan should fail on invalid COLUMNS parameter types" do assert_raise(ArgumentError) do @test_table._scan_internal COLUMNS => {}
