Sha256: e8a3685b01732f1ccf9f2edadead8977655baa2dd63016205804b472b17d876e

Contents?: true

Size: 638 Bytes

Versions: 13

Compression:

Stored size: 638 Bytes

Contents

require 'dentaku'

describe Dentaku do
  it 'evaulates an expression' do
    expect(Dentaku('5+3')).to eql(8)
  end

  it 'binds values to variables' do
    expect(Dentaku('oranges > 7', oranges: 10)).to be_truthy
  end

  it 'evaulates a nested function' do
    expect(Dentaku('roundup(roundup(3 * cherries) + raspberries)', cherries: 1.5, raspberries: 0.9)).to eql(6)
  end

  it 'treats variables as case-insensitive' do
    expect(Dentaku('40 + N', 'n' => 2)).to eql(42)
    expect(Dentaku('40 + N', 'N' => 2)).to eql(42)
    expect(Dentaku('40 + n', 'N' => 2)).to eql(42)
    expect(Dentaku('40 + n', 'n' => 2)).to eql(42)
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
dentaku-2.0.10 spec/dentaku_spec.rb
dentaku-2.0.9 spec/dentaku_spec.rb
dentaku-2.0.8 spec/dentaku_spec.rb
dentaku-2.0.7 spec/dentaku_spec.rb
dentaku-2.0.6 spec/dentaku_spec.rb
dentaku-2.0.5 spec/dentaku_spec.rb
dentaku-2.0.4 spec/dentaku_spec.rb
dentaku-2.0.3 spec/dentaku_spec.rb
dentaku-2.0.2 spec/dentaku_spec.rb
dentaku-2.0.1 spec/dentaku_spec.rb
dentaku-2.0.0 spec/dentaku_spec.rb
dentaku-1.2.6 spec/dentaku_spec.rb
dentaku-1.2.5 spec/dentaku_spec.rb