Sha256: 5430ac0615fcd0c96fd270918cd8dd3691094fbcb3e2659910ea485be8426ae7

Contents?: true

Size: 1.01 KB

Versions: 4

Compression:

Stored size: 1.01 KB

Contents

require 'spec_helper'

describe Danica::Wrapper::Variable do
  it_behaves_like 'an object that respond to basic_methods'

  it_behaves_like 'an object with basic operation' do
    subject { described_class.new(value: 100) }
  end

  it 'can be initialize from nil value' do
    expect do
      described_class.new(nil)
    end
  end

  it 'can be initialize from nil name' do
    expect do
      described_class.new(name: nil)
    end
  end

  describe '#to_f' do
    context 'when variable has no value' do
      it { expect { subject.to_f }.to raise_error(Danica::Exception::NotDefined) }
    end

    context 'when variable has value' do
      let(:value) { 100 }
      subject { described_class.new(value: value) }

      it 'returns the value' do
        expect(subject.to_f).to eq(value)
      end
    end
  end

  describe '#to_tex' do
    it_behaves_like 'a variable method to formated string', :to_tex, :latex
  end

  describe '#to_gnu' do
    it_behaves_like 'a variable method to formated string', :to_gnu, :gnuplot
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
danica-2.7.4 spec/lib/danica/wrapper/variable_spec.rb
danica-2.7.3 spec/lib/danica/wrapper/variable_spec.rb
danica-2.7.2 spec/lib/danica/wrapper/variable_spec.rb
danica-2.7.1 spec/lib/danica/wrapper/variable_spec.rb