Sha256: 16d2b08225100894ff60e39c01788a54374160424e35e015c65ee81c8251dae1

Contents?: true

Size: 1.21 KB

Versions: 25

Compression:

Stored size: 1.21 KB

Contents

require 'spec_helper'
require 'bigdecimal'
describe V8::Conversion do

  let(:cxt) { V8::Context.new }

  it "can embed BigDecimal values" do
    cxt['big'] = BigDecimal.new('1.1')
    cxt['big'].should eql BigDecimal.new('1.1')
  end

  it "doesn't try to use V8::Conversion::Class::* as root objects" do
    klass = Class.new do
      class << self
        def test
          Set.new
        end
      end
    end

    klass.test.should be_instance_of(::Set)
  end

  context "::Fixnum" do
    context "for 32-bit numbers" do
      it "should convert positive integer" do
        cxt['fixnum_a'] = 123
        cxt['fixnum_a'].should == 123
        cxt['fixnum_a'].should be_instance_of(Fixnum)
      end

      it "should convert negative integer" do
        cxt['fixnum_b'] = -123
        cxt['fixnum_b'].should == -123
        cxt['fixnum_b'].should be_instance_of(Fixnum)
      end
    end

    context "for 64-bit numbers" do
      it "should convert positive integer" do
        cxt['fixnum_c'] = 0x100000000
        cxt['fixnum_c'].should == 0x100000000
      end

      it "should convert negative integer" do
        cxt['fixnum_d'] = -0x100000000
        cxt['fixnum_d'].should == -0x100000000
      end
    end

  end
end

Version data entries

25 entries across 25 versions & 8 rubygems

Version Path
arcabouco-0.2.13 vendor/bundle/gems/therubyracer-0.12.2/spec/v8/conversion_spec.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/therubyracer-0.11.4/spec/v8/conversion_spec.rb
therubyracer-xcode-0.12.3 spec/v8/conversion_spec.rb
therubyracer-xcode-0.12.2 spec/v8/conversion_spec.rb
therubyracer-tmpfork-0.12.2 spec/v8/conversion_spec.rb
sc_core-0.0.7 test/dummy/vendor/bundle/ruby/2.2.0/gems/therubyracer-0.12.2/spec/v8/conversion_spec.rb
therubyracer-0.12.2 spec/v8/conversion_spec.rb
therubyracer-0.12.1 spec/v8/conversion_spec.rb
therubyracer-discourse-0.12.0 spec/v8/conversion_spec.rb
therubyracer-0.12.0 spec/v8/conversion_spec.rb
therubyracer-0.11.4 spec/v8/conversion_spec.rb
therubyracer-0.11.3 spec/v8/conversion_spec.rb
therubyracer-0.11.2 spec/v8/conversion_spec.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/therubyracer-0.11.0/spec/v8/conversion_spec.rb
therubyracer-0.11.1 spec/v8/conversion_spec.rb
therubyracer-0.11.1beta1 spec/v8/conversion_spec.rb
therubyracer-0.11.0 spec/v8/conversion_spec.rb
therubyracer-0.11.0beta8-x86-freebsd-9 spec/v8/conversion_spec.rb
therubyracer-0.11.0beta8-x86_64-linux spec/v8/conversion_spec.rb
therubyracer-0.11.0beta8-x86-linux spec/v8/conversion_spec.rb