Changeset 439 for EcnlProtoTool/trunk/mruby-2.1.1/test/t/float.rb
- Timestamp:
- Jul 9, 2020, 8:51:43 AM (4 years ago)
- Location:
- EcnlProtoTool/trunk/mruby-2.1.1
- Files:
-
- 1 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/mruby-2.1.1/test/t/float.rb
r331 r439 1 1 ## 2 2 # Float ISO Test 3 4 if Object.const_defined?(:Float) 3 5 4 6 assert('Float', '15.2.9') do … … 81 83 82 84 assert('Float#finite?', '15.2.9.3.9') do 83 assert_ true 3.123456789.finite?84 assert_ false (1.0 / 0.0).finite?85 assert_predicate 3.123456789, :finite? 86 assert_not_predicate 1.0 / 0.0, :finite? 85 87 end 86 88 … … 138 140 assert_raise(FloatDomainError){ nan.round } 139 141 assert_raise(FloatDomainError){ nan.round(-1) } 140 assert_ true(nan.round(1).nan?)142 assert_predicate(nan.round(1), :nan?) 141 143 end 142 144 … … 177 179 178 180 assert('Float#nan?') do 179 assert_ true (0.0/0.0).nan?180 assert_ false 0.0.nan?181 assert_ false (1.0/0.0).nan?182 assert_ false (-1.0/0.0).nan?181 assert_predicate(0.0/0.0, :nan?) 182 assert_not_predicate(0.0, :nan?) 183 assert_not_predicate(1.0/0.0, :nan?) 184 assert_not_predicate(-1.0/0.0, :nan?) 183 185 end 184 186 … … 204 206 assert_equal(-1, -23.0 >> 128) 205 207 end 208 209 assert('Float#to_s') do 210 uses_float = 4e38.infinite? # enable MRB_USE_FLOAT? 211 212 assert_equal("Infinity", Float::INFINITY.to_s) 213 assert_equal("-Infinity", (-Float::INFINITY).to_s) 214 assert_equal("NaN", Float::NAN.to_s) 215 assert_equal("0", 0.0.to_s) 216 assert_equal("-0", -0.0.to_s) 217 assert_equal("-3.25", -3.25.to_s) 218 assert_equal("50", 50.0.to_s) 219 assert_equal("0.0125", 0.0125.to_s) 220 assert_equal("-0.0125", -0.0125.to_s) 221 assert_equal("1.0e-10", 0.0000000001.to_s) 222 assert_equal("-1.0e-10", -0.0000000001.to_s) 223 assert_equal("1.0e+20", 1e20.to_s) 224 assert_equal("-1.0e+20", -1e20.to_s) 225 assert_equal("1.0e+16", 10000000000000000.0.to_s) 226 assert_equal("-1.0e+16", -10000000000000000.0.to_s) 227 assert_equal("100000", 100000.0.to_s) 228 assert_equal("-100000", -100000.0.to_s) 229 if uses_float 230 assert_equal("1.0e+08", 100000000.0.to_s) 231 assert_equal("-1.0e+08", -100000000.0.to_s) 232 assert_equal("1.0e+07", 10000000.0.to_s) 233 assert_equal("-1.0e+07", -10000000.0.to_s) 234 else 235 assert_equal("1.0e+15", 1000000000000000.0.to_s) 236 assert_equal("-1.0e+15", -1000000000000000.0.to_s) 237 assert_equal("100000000000000", 100000000000000.0.to_s) 238 assert_equal("-100000000000000", -100000000000000.0.to_s) 239 end 240 end 241 242 assert('Float#eql?') do 243 assert_operator(5.0, :eql?, 5.0) 244 assert_not_operator(5.0, :eql?, 5) 245 assert_not_operator(5.0, :eql?, "5.0") 246 end 247 248 end # const_defined?(:Float)
Note:
See TracChangeset
for help on using the changeset viewer.