Sha256: fef02bcde1e632905faeb6f06b114e2c33fbe662873828ca3f8d20ec933e5cfe

Contents?: true

Size: 1.04 KB

Versions: 1

Compression:

Stored size: 1.04 KB

Contents

require 'spec_helper'

describe TentD::Model::Group do
  let(:group) { Fabricate(:group) }

  it 'should set random_uid for public_id' do
    expect(group.public_id).to be_a(String)
  end

  # TODO: Debug DataMapper, catching exception and updating public_id fails to save
  xit 'should never set duplicate public_id' do
    first_group = Fabricate(:group)
    group = Fabricate(:group, :public_id => first_group.public_id)
    expect(group).to be_saved
    expect(group.public_id).to_not eq(first_group.public_id)
  end

  describe '#as_json' do
    let(:public_attributes) do
      {
        :id => group.public_id,
        :name => group.name
      }
    end

    it 'should return public attributes' do
      expect(group.as_json).to eq(public_attributes)
    end

    context 'with options[:app]' do
      it 'should expose timestamps' do
        expect(group.as_json(:app => true)).to eq(public_attributes.merge(
          :created_at => group.created_at.to_time.to_i,
          :updated_at => group.updated_at.to_time.to_i
        ))
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tentd-0.0.1 spec/integration/model/group_spec.rb