Sha256: ede0a7cfe60f9a6bac048692ef32b295437c2cd842fb1f26fd5cc30fdf9f7e0e

Contents?: true

Size: 1.14 KB

Versions: 1

Compression:

Stored size: 1.14 KB

Contents

#!/usr/bin/env ruby
# Business::TestPrice -- ch.oddb.org -- 24.07.2009 -- hwyss@ywesee.com

$: << File.expand_path('../../lib', File.dirname(__FILE__))

require 'test/unit'
require 'oddb/business/price'
require 'oddb/util/money'

module ODDB
  module Business
class TestPrice < Test::Unit::TestCase
  def setup
    @price = Price.new
  end
  def test_empty
    assert_nil @price.current
    assert_equal 0.0, @price.to_f
    assert_equal true, @price.is_for?(nil, nil)
    assert_equal false, @price.is_for?(nil, 'CH')
    assert_equal false, @price.is_for?(:public, nil)
  end
  def test_values
    @price.value = Util::Money.new 12.5
    assert_equal 12.5, @price
    older = Util::Money.new 10.5
    time = Time.now - 3600
    older.valid_from = time
    @price.value = older
    assert_equal 12.5, @price
    assert_equal 10.5, @price.at(time)
    @price.value = 15
    assert_equal 15, @price
    assert_instance_of Util::Money, @price.current
    time = Time.now - 1800
    @price.value = 11, time
    assert_equal 11, @price.at(time)
  end
  def test_argument_error
    assert_raises(ArgumentError) do
      @price.value = "foobar"
    end
  end
end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ramaze.ch.oddb.org-1.0.0 test/business/test_price.rb