Sha256: c74e3f9d15a7bb893c3dbbfd0f03c7c463198536841736f6f1a25842b6526abe

Contents?: true

Size: 1.04 KB

Versions: 1

Compression:

Stored size: 1.04 KB

Contents

require 'spec_helper'

# :nodoc:
class User
end

# :nodoc:
module ControllerResources
  RSpec.describe Resource do
    subject do
      Resource.new :user do |r|
        r.search :name
        r.modify :name, :password
      end
    end

    it 'has a name' do
      expect(subject.name).to eq('user')
    end

    it 'starts with given search params' do
      expect(subject.search_params).to include(:name)
    end

    it 'starts with given editing params' do
      expect(subject.edit_params).to include(:name)
      expect(subject.edit_params).to include(:password)
    end

    it 'configures search params' do
      subject.search :title
      expect(subject.search_params).to include(:title)
      expect(subject.search_params).to_not include(:name)
    end

    it 'configures editing params' do
      subject.modify :token
      expect(subject.edit_params).to include(:token)
      expect(subject.edit_params).to_not include(:password)
    end

    it 'provides the user class name' do
      expect(subject.model_class).to eq(User)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
controller_resources-0.0.6 spec/lib/controller_resources/resource_spec.rb