Sha256: 27521baae15ef6faadba8532c285128e59b6998d5134af11f81397758e7db0de

Contents?: true

Size: 1.6 KB

Versions: 8

Compression:

Stored size: 1.6 KB

Contents

require 'test_helper'

module Schemacop
  class ValidatorFloatTest < Minitest::Test
    def test_basic
      s = Schema.new do
        type :float
      end
      assert_nothing_raised { s.validate!(-3.0) }
      assert_nothing_raised { s.validate!(-3.123) }
      assert_nothing_raised { s.validate!(0.0) }
      assert_nothing_raised { s.validate!(15.0) }
      assert_nothing_raised { s.validate!(15.13) }
      assert_verr { s.validate!(-3) }
      assert_verr { s.validate!(0) }
      assert_verr { s.validate!(15) }
    end

    def test_option_min
      s = Schema.new do
        type :float, min: -2
      end

      assert_nothing_raised { s.validate!(-2.0) }
      assert_nothing_raised { s.validate!(-1.99999) }
      assert_nothing_raised { s.validate!(1.2) }
      assert_verr { s.validate!(-5.2) }
      assert_verr { s.validate!(-2.00001) }
    end

    def test_option_max
      s = Schema.new do
        type :float, max: 5.2
      end

      assert_nothing_raised { s.validate!(-2.0) }
      assert_nothing_raised { s.validate!(5.2) }
      assert_verr { s.validate!(5.200001) }
    end

    def test_options_min_max
      s = Schema.new do
        type :float, min: -2, max: 5.2
      end

      assert_nothing_raised { s.validate!(-2.0) }
      assert_nothing_raised { s.validate!(-1.99999) }
      assert_nothing_raised { s.validate!(0.0) }
      assert_nothing_raised { s.validate!(1.2) }
      assert_nothing_raised { s.validate!(5.2) }
      assert_verr { s.validate!(-2.00001) }
      assert_verr { s.validate!(5.200001) }
      assert_verr { s.validate!(6) }
      assert_verr { s.validate!(0) }
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
schemacop-2.4.7 test/validator_float_test.rb
schemacop-2.4.6 test/validator_float_test.rb
schemacop-2.4.5 test/validator_float_test.rb
schemacop-2.4.4 test/validator_float_test.rb
schemacop-2.4.3 test/validator_float_test.rb
schemacop-2.4.2 test/validator_float_test.rb
schemacop-2.4.1 test/validator_float_test.rb
schemacop-2.4.0 test/validator_float_test.rb