Sha256: 4c9ad0701e6a0a551eef033c0d09ae887456c73a32e2778b08a37d2d213ba63e

Contents?: true

Size: 1.63 KB

Versions: 11

Compression:

Stored size: 1.63 KB

Contents

require File.join(File.dirname(__FILE__), "test_cli_helper.rb")
require 'rbkb/cli/hexify'

class TestCliHexify < Test::Unit::TestCase
  include CliTest

  def setup
    @cli_class = Rbkb::Cli::Hexify
    super()
  end

  def test_string_arg
    assert_equal 0, go_with_args(%w(foo))
    assert_equal("666f6f\n", @stdout_io.string)
  end

  def test_length_argument
    assert_equal 0, go_with_args(%w(-l 1 foo))
    assert_equal("66\n6f\n6f\n", @stdout_io.string)
  end

  def test_bad_length_arguments
    assert_equal 1, go_with_args(%w(-l 0 foo))
    assert_match(/must be greater than zero/, @stderr_io.string)
    assert_equal 1, go_with_args(%w(-l -1 foo))
    assert_match(/must be greater than zero/, @stderr_io.string)
  end

  def test_string_arg_with_plus
    assert_equal 0, go_with_args(%w(+ foo))
    assert_equal("66 6f 6f\n", @stdout_io.string)
  end

  def test_string_arg_with_delim
    assert_equal 0, go_with_args(%w(-d : foo))
    assert_equal("66:6f:6f\n", @stdout_io.string)
  end

  def test_string_arg_with_prefix
    assert_equal 0, go_with_args(%w(-p : foo))
    assert_equal(":66:6f:6f\n", @stdout_io.string)
  end

  def test_string_arg_with_suffix
    assert_equal 0, go_with_args(%w(-s : foo))
    assert_equal("66:6f:6f:\n", @stdout_io.string)
  end

  def test_stdin
    @stdin_io.write("foo") ; @stdin_io.rewind
    assert_equal 0, go_with_args
    assert_equal("666f6f\n", @stdout_io.string)
  end

  def test_file_input
    with_testfile do |fname, tf| 
      tf.write "hex_test_foo";  tf.close
      assert_equal 0, go_with_args(["-f", fname])
      assert_equal("6865785f746573745f666f6f\n", @stdout_io.string)
    end
  end

end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
emonti-rbkb-0.6.6 test/test_cli_hexify.rb
emonti-rbkb-0.6.7 test/test_cli_hexify.rb
emonti-rbkb-0.6.8 test/test_cli_hexify.rb
emonti-rbkb-0.6.9.1 test/test_cli_hexify.rb
emonti-rbkb-0.6.9 test/test_cli_hexify.rb
rbkb-0.7.2 test/test_cli_hexify.rb
rbkb-0.7.1 test/test_cli_hexify.rb
rbkb-0.7.0 test/test_cli_hexify.rb
rbkb-0.6.12 test/test_cli_hexify.rb
rbkb-0.6.11 test/test_cli_hexify.rb
rbkb-0.6.10 test/test_cli_hexify.rb