Sha256: dd5af1e86828f2f21bf14cc4f051381627a79c05a691454511357bae2097430e

Contents?: true

Size: 1.24 KB

Versions: 2

Compression:

Stored size: 1.24 KB

Contents

require 'test_helper'

module Vedeu

  class VedeuCommonClass

    include Vedeu::Common

    def defined_value_test(variable)
      defined_value?(variable)
    end

  end # VedeuCommonClass

  describe Common do

    let(:described) { Vedeu::VedeuCommonClass.new }

    describe '#defined_value?' do
      subject { described.defined_value_test(value) }

      context 'when the variable is a Fixnum' do
        let(:value) { 17 }

        it { subject.must_equal(true) }
      end

      context 'when the variable is not nil or empty' do
        let(:value) { 'not empty' }

        it { subject.must_equal(true) }
      end

      context 'when the variable is nil or empty' do
        let(:value) { [] }

        it { subject.must_equal(false) }
      end

      context 'when dealing with keys which may not exist or have a value' do
        let(:attributes) { {} }
        let(:value)      { attributes[:not_found] }

        it { subject.must_equal(false) }
      end
    end

    describe '#to_sentence' do
      let(:array) { ['hydrogen', 'helium', 'lithium'] }

      subject { described.to_sentence(array) }

      it { subject.must_be_instance_of(String) }
      it { subject.must_equal('hydrogen, helium and lithium') }
    end

  end # Common

end # Vedeu

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vedeu-0.4.13 test/lib/vedeu/support/common_test.rb
vedeu-0.4.12 test/lib/vedeu/support/common_test.rb