Sha256: b03d5e24d8f50af1a55aa90cab7e2eac96a27d98db37143a97dcd5da333d45ff

Contents?: true

Size: 849 Bytes

Versions: 83

Compression:

Stored size: 849 Bytes

Contents

require File.dirname(File.join(__rhoGetCurrentDir(), __FILE__)) + '/../../spec_helper'
require File.dirname(File.join(__rhoGetCurrentDir(), __FILE__)) + '/fixtures/classes'

# Array#nitems was removed from Ruby 1.9.
ruby_version_is '' ... '1.9' do
  describe "Array#nitems" do
    it "returns the number of non-nil elements" do
      [nil].nitems.should == 0
      [].nitems.should == 0    
      [1, 2, 3, nil].nitems.should == 3
      [1, 2, 3].nitems.should == 3
      [1, nil, 2, 3, nil, nil, 4].nitems.should == 4
      [1, nil, 2, false, 3, nil, nil, 4].nitems.should == 5
    end

    it "properly handles recursive arrays" do
      empty = ArraySpecs.empty_recursive_array
      empty.nitems.should == 1

      array = ArraySpecs.recursive_array
      array.nitems.should == 8

      [nil, empty, array].nitems.should == 2
    end
  end
end

Version data entries

83 entries across 83 versions & 1 rubygems

Version Path
rhodes-3.1.1 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.1.beta spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0.beta.5 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0.beta.4 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0.beta.3 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0.beta.2 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.1.0.beta.1 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.2 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.2.beta.1 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.8 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.7 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.6 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.5 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.4 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.3 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.1.beta.2 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.0 spec/framework_spec/app/spec/core/array/nitems_spec.rb
rhodes-3.0.0.beta.7 spec/framework_spec/app/spec/core/array/nitems_spec.rb