3 # Licensed to the Apache Software Foundation (ASF) under one
4 # or more contributor license agreements. See the NOTICE file
5 # distributed with this work for additional information
6 # regarding copyright ownership. The ASF licenses this file
7 # to you under the Apache License, Version 2.0 (the
8 # "License"); you may not use this file except in compliance
9 # with the License. You may obtain a copy of the License at
11 # http://www.apache.org/licenses/LICENSE-2.0
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
20 require 'hbase_constants'
24 class ListProceduresTest < Test::Unit::TestCase
26 include HBaseConstants
31 @master = $TEST_CLUSTER.getHBaseClusterInterface.getMaster
32 @executor = @master.getMasterProcedureExecutor
34 @list_procedures = Shell::Commands::ListProcedures.new(@shell)
41 def create_procedure_regexp(table_name)
42 regexp_string = '[0-9]+ .*ShellTestProcedure SUCCESS.*' \
43 "\[{\"value\"=>\"#{table_name}\"}\]";
44 Regexp.new(regexp_string)
47 define_test 'list procedures' do
48 procedure = org.apache.hadoop.hbase.client.procedure.ShellTestProcedure.new
49 procedure.tableNameString = 'table1'
51 proc_id = @executor.submitProcedure(procedure)
52 sleep(0.1) until @executor.isFinished(proc_id)
54 output = capture_stdout { @list_procedures.command }
56 regexp = create_procedure_regexp('table1')
59 lines = output.split(/\n/)
66 assert_equal(1, matching_lines)