Sha256: d2caaf43f53fc62114b3fca01df521b3740075fce10e383573ff5f6e0c292b4b

Contents?: true

Size: 769 Bytes

Versions: 3

Compression:

Stored size: 769 Bytes

Contents

require 'spec_helper'

require 'hamster/vector'

describe Hamster::Vector do

  describe "#each_with_index" do

    describe "with no block" do

      before do
        @vector = Hamster.vector("A", "B", "C")
        @result = @vector.each_with_index
      end

      it "returns self" do
        @result.should equal(@vector)
      end

    end

    describe "with a block" do

      before do
        @vector = Hamster.vector(*(1..1025))
        @pairs = []
        @result = @vector.each_with_index { |item, index| @pairs << [item, index] }
      end

      it "returns nil" do
        @result.should be_nil
      end

      it "iterates over the items in order" do
        @pairs.should == (1..@vector.size).zip(0..@vector.size.pred)
      end

    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
hamster-0.4.3 spec/hamster/vector/each_with_index_spec.rb
hamster-0.4.2 spec/hamster/vector/each_with_index_spec.rb
hamster-0.4.0 spec/hamster/vector/each_with_index_spec.rb