Sha256: bb4bc9c9b6860570891e8844b706dd3e3171dd0cfb660a0c2c880076e5abbb48

Contents?: true

Size: 1.18 KB

Versions: 51

Compression:

Stored size: 1.18 KB

Contents

require 'spec_helper'

describe RightSupport::Data::UUID do
  subject { RightSupport::Data::UUID }

  VALID_UUID = /[0-9a-f-]+/ #we're not too picky here...

  context :generate do
    context 'when no implementation is available' do
      it 'raises Unavailable' do
        flexmock(subject).should_receive(:implementation).and_return(nil)
        lambda {
          subject.generate
        }.should raise_error(subject::Unavailable)
      end
    end

    context 'when SimpleUUID is available' do
      it 'generates UUIDs' do
        subject.implementation = subject::SimpleUUID
        subject.generate.should =~ VALID_UUID
      end
    end

    context 'when UUIDTools v1 is available' do
      it 'generates UUIDs' do
        pending #need to rework tests to test 2 versions of 1 gem!
      end
    end

    context 'when UUIDTools v2 is available' do
      it 'generates UUIDs' do
        subject.implementation = subject::UUIDTools2
        subject.generate.should =~ VALID_UUID
      end
    end

    context 'when UUID gem is available' do
      it 'generates UUIDs' do
        subject.implementation = subject::UUIDGem
        subject.generate.should =~ VALID_UUID
      end
    end
  end
end

Version data entries

51 entries across 51 versions & 1 rubygems

Version Path
right_support-2.11.3 spec/data/uuid_spec.rb
right_support-2.11.2 spec/data/uuid_spec.rb
right_support-2.10.1 spec/data/uuid_spec.rb
right_support-2.9.6 spec/data/uuid_spec.rb
right_support-2.9.5 spec/data/uuid_spec.rb
right_support-2.9.4 spec/data/uuid_spec.rb
right_support-2.9.3 spec/data/uuid_spec.rb
right_support-2.9.2 spec/data/uuid_spec.rb
right_support-2.9.1 spec/data/uuid_spec.rb
right_support-2.8.46 spec/data/uuid_spec.rb
right_support-2.8.45 spec/data/uuid_spec.rb
right_support-2.8.44 spec/data/uuid_spec.rb
right_support-2.8.43 spec/data/uuid_spec.rb
right_support-2.8.42 spec/data/uuid_spec.rb
right_support-2.8.41 spec/data/uuid_spec.rb
right_support-2.8.40 spec/data/uuid_spec.rb
right_support-2.8.39 spec/data/uuid_spec.rb
right_support-2.8.38 spec/data/uuid_spec.rb
right_support-2.8.37 spec/data/uuid_spec.rb
right_support-2.8.36 spec/data/uuid_spec.rb