Sha256: 0b913e7cdd5078022e5f3ce3db0846e5876c11c6fcfb3aa00870718e2da1752e

Contents?: true

Size: 1.5 KB

Versions: 31

Compression:

Stored size: 1.5 KB

Contents

# frozen_string_literal: true

require 'test_helper'

module Vedeu

  module Input

    describe Keys do

      let(:described) { Vedeu::Input::Keys }
      let(:instance)  { described.new }

      it { described.superclass.must_equal(Vedeu::Repositories::Collection) }

      describe '#initialize' do
        it { instance.must_be_instance_of(described) }
      end

    end # Keys

    describe Key do

      let(:described) { Vedeu::Input::Key }
      let(:instance)  { described.new(input) { :output } }
      let(:input)     { 'a' }

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

        context 'when the required block is not given' do
          subject { described.new(input) }

          it { proc { subject }.must_raise(Vedeu::Error::RequiresBlock) }
        end
      end

      describe '#input' do
        subject { instance.input }

        it 'returns the key defined' do
          subject.must_equal('a')
        end
      end

      describe '#key' do
        it { instance.must_respond_to(:key) }
      end

      describe '#output' do
        subject { instance.output }

        it 'returns the result of calling the proc' do
          subject.must_equal(:output)
        end
      end

      describe '#press' do
        it { instance.must_respond_to(:press) }
      end

      describe '#action' do
        it { instance.must_respond_to(:action) }
      end

    end # Key

  end # Input

end # Vedeu

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
vedeu-0.8.32 test/lib/vedeu/input/key_test.rb
vedeu-0.8.31 test/lib/vedeu/input/key_test.rb
vedeu-0.8.30 test/lib/vedeu/input/key_test.rb
vedeu-0.8.29 test/lib/vedeu/input/key_test.rb
vedeu-0.8.28 test/lib/vedeu/input/key_test.rb
vedeu-0.8.27 test/lib/vedeu/input/key_test.rb
vedeu-0.8.26 test/lib/vedeu/input/key_test.rb
vedeu-0.8.25 test/lib/vedeu/input/key_test.rb
vedeu-0.8.24 test/lib/vedeu/input/key_test.rb
vedeu-0.8.23 test/lib/vedeu/input/key_test.rb
vedeu-0.8.22 test/lib/vedeu/input/key_test.rb
vedeu-0.8.21 test/lib/vedeu/input/key_test.rb
vedeu-0.8.20 test/lib/vedeu/input/key_test.rb
vedeu-0.8.19 test/lib/vedeu/input/key_test.rb
vedeu-0.8.18 test/lib/vedeu/input/key_test.rb
vedeu-0.8.17 test/lib/vedeu/input/key_test.rb
vedeu-0.8.16 test/lib/vedeu/input/key_test.rb
vedeu-0.8.15 test/lib/vedeu/input/key_test.rb
vedeu-0.8.14 test/lib/vedeu/input/key_test.rb
vedeu-0.8.13 test/lib/vedeu/input/key_test.rb