Sha256: 4ddc6133ff91c4228d8fcea87c4555f9374412627d87ed9196af06efbe5ec391

Contents?: true

Size: 1.37 KB

Versions: 43

Compression:

Stored size: 1.37 KB

Contents

require 'test_helper'

module Vedeu

  describe RefreshCursor do

    let(:described) { Vedeu::RefreshCursor }
    let(:instance)  { described.new(_name) }
    let(:_name)     { 'refresh_cursor' }
    let(:expected)  {}
    let(:ox)        { 0 }
    let(:oy)        { 0 }

    before do
      Vedeu.geometry 'refresh_cursor' do
        x  1
        xn 3
        y  1
        yn 3
      end
      Vedeu::Cursor.new({ name: 'refresh_cursor', ox: ox, oy: oy }).store

      Vedeu::Terminal.stubs(:output).returns(expected)
    end

    describe '#initialize' do
      it { instance.must_be_instance_of(described) }
      it { instance.instance_variable_get('@name').must_equal(_name) }
    end

    describe '.render' do
      subject { described.render(_name) }

      it 'renders the cursor in the terminal' do
        Vedeu::Terminal.expects(:output).with("\e[1;1H\e[?25l")
        subject
      end

      context 'when the cursors offset position is outside the viewable area' do
        let(:ox) { 3 }
        let(:oy) { 3 }

        it 'refreshes the view' do
          Vedeu::Refresh.expects(:by_name)
          subject
        end
      end

      context 'when the cursors offset position is inside the viewable area' do
        it 'does not refresh the view' do
          Vedeu::Refresh.expects(:by_name).never
          subject
        end
      end
    end

  end # RefreshCursor

end # Vedeu

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
vedeu-0.4.61 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.60 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.59 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.58 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.57 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.56 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.55 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.54 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.53 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.52 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.51 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.50 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.49 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.48 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.47 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.46 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.45 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.44 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.43 test/lib/vedeu/cursor/refresh_cursor_test.rb
vedeu-0.4.42 test/lib/vedeu/cursor/refresh_cursor_test.rb