Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: opal/opal
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 14f50df6ba90
Choose a base ref
...
head repository: opal/opal
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 12f7e1159df7
Choose a head ref
  • 3 commits
  • 2 files changed
  • 2 contributors

Commits on Jun 7, 2015

  1. Copy the full SHA
    91483f7 View commit details
  2. Add a few passing Float specs

    eregon committed Jun 7, 2015
    Copy the full SHA
    5ba1aa8 View commit details
  3. Merge pull request #919 from eregon/specs

    Add a few passing numeric specs
    vais committed Jun 7, 2015
    Copy the full SHA
    12f7e11 View commit details
Showing with 35 additions and 2 deletions.
  1. +5 −1 opal/corelib/numeric.rb
  2. +30 −1 spec/rubyspecs
6 changes: 5 additions & 1 deletion opal/corelib/numeric.rb
Original file line number Diff line number Diff line change
@@ -86,6 +86,8 @@ def /(other)
}
end

alias fdiv /

def %(other)
%x{
if (other.$$is_number) {
@@ -493,7 +495,7 @@ def nan?
end

def finite?
`self != Infinity && self != -Infinity`
`self != Infinity && self != -Infinity && !isNaN(self)`
end

def infinite?
@@ -539,6 +541,8 @@ def self.===(other)
end

INFINITY = `Infinity`
MAX = `Number.MAX_VALUE`
MIN = `Number.MIN_VALUE`
NAN = `NaN`

if defined?(`Number.EPSILON`)
31 changes: 30 additions & 1 deletion spec/rubyspecs
Original file line number Diff line number Diff line change
@@ -17,19 +17,48 @@ corelib/core/fixnum/comparison_spec
corelib/core/fixnum/equal_value_spec
corelib/core/fixnum/element_reference_spec
corelib/core/fixnum/even_spec
corelib/core/fixnum/fdiv_spec
corelib/core/fixnum/fixnum_spec
corelib/core/fixnum/gt_spec
corelib/core/fixnum/gte_spec
corelib/core/fixnum/left_shift_spec
corelib/core/fixnum/right_shift_spec
corelib/core/fixnum/lt_spec
corelib/core/fixnum/lte_spec
corelib/core/fixnum/magnitude_spec
corelib/core/fixnum/minus_spec
corelib/core/fixnum/odd_spec
corelib/core/fixnum/plus_spec
corelib/core/fixnum/right_shift_spec
corelib/core/fixnum/succ_spec
corelib/core/fixnum/to_f_spec
corelib/core/fixnum/to_s_spec
corelib/core/fixnum/uminus_spec
corelib/core/fixnum/zero_spec

corelib/core/float/abs_spec
corelib/core/float/case_compare_spec
corelib/core/float/ceil_spec
corelib/core/float/divide_spec
corelib/core/float/equal_value_spec
corelib/core/float/finite_spec
corelib/core/float/float_spec
corelib/core/float/floor_spec
corelib/core/float/gt_spec
corelib/core/float/gte_spec
corelib/core/float/hash_spec
corelib/core/float/infinite_spec
corelib/core/float/lt_spec
corelib/core/float/lte_spec
corelib/core/float/magnitude_spec
corelib/core/float/minus_spec
corelib/core/float/multiply_spec
corelib/core/float/nan_spec
corelib/core/float/plus_spec
corelib/core/float/to_f_spec
corelib/core/float/uminus_spec
corelib/core/float/uplus_spec
corelib/core/float/zero_spec

corelib/core/integer/downto_spec
corelib/core/integer/even_spec
corelib/core/integer/upto_spec