Sha256: 6f04fe78a64d613858bc282187887d842b899b3fcfe2c0a3a861243d2bb48d68

Contents?: true

Size: 853 Bytes

Versions: 1

Compression:

Stored size: 853 Bytes

Contents

require 'spec_helper'

describe 'Veritas::Immutable.freeze_object' do
  subject { object.freeze_object(value) }

  let(:object) { Immutable }

  context 'with a numeric value' do
    let(:value) { 1 }

    it { should equal(value) }
  end

  context 'with a true value' do
    let(:value) { true }

    it { should equal(value) }
  end

  context 'with a false value' do
    let(:value) { false }

    it { should equal(value) }
  end

  context 'with a nil value' do
    let(:value) { nil }

    it { should equal(value) }
  end

  context 'with a frozen value' do
    let(:value) { String.new.freeze }

    it { should equal(value) }
  end

  context 'with an unfrozen value' do
    let(:value) { String.new }

    it { should_not equal(value) }

    it { should be_kind_of(String) }

    it { should == value }

    it { should be_frozen }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
veritas-0.0.2 spec/unit/veritas/immutable/class_methods/freeze_object_spec.rb