Sha256: 36f13ca6fd07dd8879db415e1456ca174c210bad55dd06e902917dc69f39d304

Contents?: true

Size: 1.32 KB

Versions: 4

Compression:

Stored size: 1.32 KB

Contents

require File.expand_path('spec/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('a'*20+'b', :lines => 5, :columns => 20)
    bar = Ruco::StatusBar.new(editor, :columns => 20)
    bar.view.should == "Ruco #{Ruco::VERSION} -- aa 1:1"
    bar.view.size.should == 20
  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

4 entries across 4 versions & 1 rubygems

Version Path
ruco-0.1.9 spec/ruco/status_bar_spec.rb
ruco-0.1.8 spec/ruco/status_bar_spec.rb
ruco-0.1.7 spec/ruco/status_bar_spec.rb
ruco-0.1.6 spec/ruco/status_bar_spec.rb