Sha256: 07e48b458a2b5e99edc151a29de5ad054ec2b70e07c854a8e58b0f96730e8d6d

Contents?: true

Size: 1.46 KB

Versions: 7

Compression:

Stored size: 1.46 KB

Contents

# frozen_string_literal: true
require "pry" unless ENV["CI"]
require "measured"
require "minitest/reporters"
require "minitest/autorun"
require "mocha/minitest"

ActiveSupport.test_order = :random

Minitest::Reporters.use! [Minitest::Reporters::ProgressReporter.new(color: true)]

require "support/subclasses"
require "support/fake_system"
require "support/always_true_cache"

class ActiveSupport::TestCase
  protected

  def assert_close_bigdecimal exp, act, delta = BigDecimal('0.000001')
    n = (exp - act).abs
    msg = message(msg) {
      "Expected #{act.inspect} to be\nclose to #{exp.inspect} within #{delta} but was within #{n}"
    }
    assert delta >= n, msg
  end

  def assert_conversion(klass, from, to)
    from_amount, from_unit = from.split(" ")
    to_amount, to_unit = to.split(" ")

    to_unit = klass.unit_system.unit_for!(to_unit)
    assert_close_bigdecimal BigDecimal(to_amount), klass.new(from_amount, from_unit).convert_to(to_unit).value
  end

  def assert_exact_conversion(klass, from, to)
    from_amount, from_unit = from.split(" ")
    to_amount, to_unit = to.split(" ")

    to_unit = klass.unit_system.unit_for!(to_unit)
    assert_equal BigDecimal(to_amount), klass.new(from_amount, from_unit).convert_to(to_unit).value
  end

  def assert_raises_with_message(exception, expected_message)
    error = assert_raise(exception) { yield }
    assert_equal expected_message, error.message, "Exception #{exception} raised but messages are not equal"
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
measured-2.8.2 test/test_helper.rb
measured-2.8.1 test/test_helper.rb
measured-2.8.0 test/test_helper.rb
measured-2.7.1 test/test_helper.rb
measured-2.7.0 test/test_helper.rb
measured-2.6.0 test/test_helper.rb
measured-2.5.2 test/test_helper.rb