Sha256: 17e489ebd6374c10887626bf7fcfc44cb641ff0d442358aa77375852513068f1

Contents?: true

Size: 763 Bytes

Versions: 2

Compression:

Stored size: 763 Bytes

Contents

shared_examples_for 'project' do |name|
  let(:obj){ send name }
  
  before(:each) do
    Cellect::Server.adapter.load_project obj.name
  end
  
  it 'should add singleton instances to the registry' do
    obj.class[:foo].should be_a_kind_of Cellect::Server::Project
    obj.class[:foo].object_id.should == obj.class[:foo].object_id
  end
  
  it 'should initialize empty' do
    obj.name.should be_a String
    obj.users.should be_a Hash
    
    set_klass = obj.prioritized? ? DiffSet::PrioritySet : DiffSet::RandomSet
    obj.subjects.should be_a set_klass
  end
  
  it 'should provide a user lookup' do
    obj.user(1).should be_a Cellect::Server::User
    obj.user(1).object_id.should == obj.user(1).object_id
    obj.users.keys.should include 1
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
cellect-client-0.0.1 spec/support/shared_examples_for_project.rb
cellect-server-0.0.1 spec/support/shared_examples_for_project.rb