Sha256: 6995ec91ef2b6dc5894074c1942d68d84c070779e7b26368e7e0f32771fc6ef2

Contents?: true

Size: 1.32 KB

Versions: 6

Compression:

Stored size: 1.32 KB

Contents

require "spec_helper"

describe Ruco::StatusBar do
  let(:file){ 'spec/temp.txt' }
  let(:editor){ Ruco::Editor.new(file, :lines => 5, :columns => 35) }
  let(:bar){ Ruco::StatusBar.new(editor, :columns => 35) }

  it "shows name and version" do
    bar.view.should include("Ruco #{Ruco::VERSION}")
  end

  it "shows the file" do
    bar.view.should include(file)
  end

  it "can show to long files" do
    editor = Ruco::Editor.new('123456789abcdefghijklmnop', :lines => 5, :columns => 20)
    bar = Ruco::StatusBar.new(editor, :columns => 30)
    bar.view.should == "Ruco #{Ruco::VERSION} -- 1234...nop   1:1"
    bar.view.size.should == 30
  end

  it "indicates modified" do
    bar.view.should_not include('*')
    editor.insert('x')
    bar.view.should include('*')
  end

  it "indicates writable" do
    bar.view.should_not include('!')
  end

  it "indicates writable if file is missing" do
    editor.stub!(:file).and_return '/gradasadadsds'
    bar.view.should_not include('!')
  end

  it "indicates not writable" do
    # this test will always fail on Windows with cygwin because of how cygwin sets up permissions
    unless RUBY_PLATFORM =~ /mingw/
      editor.stub!(:file).and_return '/etc/sudoers'
      bar.view.should include('!')
    end
  end

  it "shows line and column and right side" do
    bar.view.should =~ /1:1$/
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
ruco-0.2.18 spec/ruco/status_bar_spec.rb
ruco-0.2.17 spec/ruco/status_bar_spec.rb
ruco-0.2.16 spec/ruco/status_bar_spec.rb
ruco-0.2.15 spec/ruco/status_bar_spec.rb
ruco-0.2.14 spec/ruco/status_bar_spec.rb
ruco-0.2.13 spec/ruco/status_bar_spec.rb