Sha256: 3909037f7e3f0505f3b025ebd1db7b5a35db5a16c6bb002280484a089e180def

Contents?: true

Size: 1.61 KB

Versions: 28

Compression:

Stored size: 1.61 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/../../../test_helper')

class Inch::CLI::Command::Output::Console
  def run_pry
    nil # instead of binding.pry
  end
end

describe ::Inch::CLI::Command::Console do
  before do
    Dir.chdir fixture_path(:ruby, :simple)
    @command = ::Inch::CLI::Command::Console
  end

  it 'should output info when run with --help' do
    out, err = capture_io do
      assert_raises(SystemExit) { @command.run('--help') }
    end
    refute out.empty?, 'there should be some output'
    assert_match(/\bUsage\b.+console/, out)
    assert err.empty?, 'there should be no errors'
  end

  it 'should run without args' do
    _out, _err = capture_io do
      @prompt = @command.new.run
    end
    assert @prompt.respond_to?(:all)
    assert @prompt.respond_to?(:ff)
    assert @prompt.respond_to?(:f)
    assert @prompt.respond_to?(:o)
    assert @prompt.o.nil?
    assert @prompt.objects.empty?
  end

  it 'should run with a definitive object name' do
    _out, _err = capture_io do
      @prompt = @command.new.run('Foo::Bar#method_with_full_doc')
    end
    assert !@prompt.all.empty?
    assert !@prompt.ff('Foo::Bar#').empty?
    assert !@prompt.f('Foo::Bar').nil?
    assert !@prompt.o.nil?
    refute @prompt.o.nil?
    assert_equal 1, @prompt.objects.size
  end

  it 'should run with a partial name' do
    _out, _err = capture_io do
      @prompt = @command.new.run('Foo::Bar#')
    end
    assert @prompt.respond_to?(:all)
    assert @prompt.respond_to?(:ff)
    assert @prompt.respond_to?(:f)
    assert @prompt.respond_to?(:o)
    refute @prompt.o.nil?
    assert @prompt.objects.size > 1
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
inch-0.5.1 test/integration/cli/command/console_test.rb
inch-0.5.0 test/integration/cli/command/console_test.rb
inch-0.5.0.rc11 test/integration/cli/command/console_test.rb
inch-0.5.0.rc10 test/integration/cli/command/console_test.rb
inch-0.5.0.rc9 test/integration/cli/command/console_test.rb
inch-0.5.0.rc8 test/integration/cli/command/console_test.rb
inch-0.5.0.rc7 test/integration/cli/command/console_test.rb
inch-0.5.0.rc6 test/integration/cli/command/console_test.rb