class Cloaca::CLI
Public Instance Methods
add_fixed_value_column()
click to toggle source
# File lib/cloaca/cli.rb, line 33 def add_fixed_value_column Operations::AddFixedValueColumn.new(parse_options).run! end
add_integer_index_column()
click to toggle source
# File lib/cloaca/cli.rb, line 12 def add_integer_index_column assert_integer(:"index-delta") assert_integer(:"index-seed") Operations::AddNumericIndexColumn.new(parse_options).run! end
add_numeric_index_column()
click to toggle source
# File lib/cloaca/cli.rb, line 24 def add_numeric_index_column Operations::AddNumericIndexColumn.new(parse_options).run! end
change_col_delimiter()
click to toggle source
# File lib/cloaca/cli.rb, line 41 def change_col_delimiter Operations::ChangeColumnDelimiter.new(parse_options).run! end
check_headers_unique()
click to toggle source
# File lib/cloaca/cli.rb, line 50 def check_headers_unique Operations::CheckRowValuesUnique.new(parse_options).run! end
extract_unique_col_values()
click to toggle source
# File lib/cloaca/cli.rb, line 59 def extract_unique_col_values assert_integer(:"row-offset") Operations::ExtractUniqueColumnValues.new(parse_options).run! end
generate_int()
click to toggle source
# File lib/cloaca/cli.rb, line 71 def generate_int assert_integer(:min) assert_integer(:max) assert_less_than(:min, :max) Operations::GenerateRandomIntegers.new(parse_options).run! end
remove_col_quotes()
click to toggle source
# File lib/cloaca/cli.rb, line 91 def remove_col_quotes Operations::RemoveColumnQuotes.new(parse_options).run! end
remove_column()
click to toggle source
# File lib/cloaca/cli.rb, line 83 def remove_column Operations::RemoveColumn.new(parse_options).run! end
remove_header_row()
click to toggle source
# File lib/cloaca/cli.rb, line 98 def remove_header_row assert_greater_than_zero(:count) Operations::RemoveSequentialRows.new(parse_options).run! end
Private Instance Methods
assert_greater_than_zero(key)
click to toggle source
# File lib/cloaca/cli.rb, line 111 def assert_greater_than_zero(key) if options[key] < 0 raise(Thor::MalformattedArgumentError.new("Expected #{jet} to be greater than 0 ; got \"#{options[key]}\" which is not > 0")) end end
assert_integer(key)
click to toggle source
# File lib/cloaca/cli.rb, line 105 def assert_integer(key) if options[key] != options[key].to_i raise(Thor::MalformattedArgumentError.new("Expected integer value for '--#{key}'; got \"#{options[key]}\"")) end end
assert_less_than(a, b)
click to toggle source
# File lib/cloaca/cli.rb, line 117 def assert_less_than(a, b) if options[a] > options[b] raise(Thor::MalformattedArgumentError.new("Expected #{a} to be less than or equal to #{b} ; got \"#{options[a]}\" which is not <= \"#{options[b]}\"")) end end
parse_options()
click to toggle source
# File lib/cloaca/cli.rb, line 123 def parse_options { case_sensitive: options[:"case-sensitive"], column_delimiter: options[:"col-delim"], column_header: options[:"col-header"], column_value: options[:"col-value"], count: options[:count], delay_in_ms: options[:delay_in_ms], ending_row_offset: options[:"ending-row-offset"] || options[:count], index_delta: options[:"index-delta"], index_header: options[:"index-header"], index_or_value: options[:"index-or-value"], index_seed: options[:"index-seed"], input: $stdin, max: options[:max], min: options[:min], new_column_delimiter: options[:"new-col-delim"], old_column_delimiter: options[:"old-col-delim"], row_offset: options[:"row-offset"], starting_row_offset: options[:"starting-row-offset"] || 0, output: $stdout, } end