Sha256: 6531da5d7b94d731e44217afdbb0a2bcd7dac328580087b756848b4208df63bb

Contents?: true

Size: 1.52 KB

Versions: 22

Compression:

Stored size: 1.52 KB

Contents

require 'rspec'
require 'cantango'

require 'cantango/configuration/shared/hash_registry_ex'

describe CanTango::Configuration::Categories::Category do
  subject { CanTango::Configuration::Categories::Category.new }
    specify { subject.has_any?(:x).should_not be_true }

  subject { CanTango::Configuration::Categories::Category.new :a, :b }
    specify { subject.has_any?(:a).should be_true }
end

describe CanTango::Configuration::Categories do
  subject { CanTango.config.categories }

  describe 'API' do
    before(:each) do
      categories = {:a => ['B', 'C'], 'x' => ['Y', 'Z'], 'v' => ['B', 'Z']}
      
      subject.clean!
      subject.register categories
    end

    describe 'get index []' do
      specify {
        subject.register(:w => 'something non-array!')
        lambda { subject.category('w') }.should raise_error
      }
    end

    describe 'category_has_subject?' do
      specify {
        subject.category('a').has_any?('B').should be_true 
      }
    end

    describe 'has_subject?' do
      specify { subject.has_any?('Y').should be_true }
    end

    describe 'category_names_of_subject' do
      specify { subject.category_names_of_subject('B').last.should == 'v' }

      specify { subject.category_names_of_subject('c').first.should == nil }
    end

    describe 'categories_of_subject' do
      specify do
        subject.categories_of_subject('B').should == {'a' => ['B', 'C'], 'v' => ['B', 'Z'],}
      end

      specify do
        subject.categories_of_subject('blip').should == {}
      end
    end
  end
end


Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
cantango-0.9.4.7 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4.6 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4.5 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4.3 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4.2 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4.1 spec/cantango/configuration/categories_spec.rb
cantango-0.9.4 spec/cantango/configuration/categories_spec.rb
cantango-0.9.3.2 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9.5 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9.4 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9.3 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9.2 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9.1 spec/cantango/configuration/categories_spec.rb
cantango-0.8.9 spec/cantango/configuration/categories_spec.rb
cantango-0.8.8.1 spec/cantango/configuration/categories_spec.rb
cantango-0.8.8 spec/cantango/configuration/categories_spec.rb
cantango-0.8.7 spec/cantango/configuration/categories_spec.rb
cantango-0.8.6.2 spec/cantango/configuration/categories_spec.rb
cantango-0.8.6.1 spec/cantango/configuration/categories_spec.rb
cantango-0.8.6 spec/cantango/configuration/categories_spec.rb