Sha256: 2dd9ce3c36b587957a9242f70e88eb725f5334b4d020a5929887a597b75102db

Contents?: true

Size: 1.21 KB

Versions: 4

Compression:

Stored size: 1.21 KB

Contents

require 'spec_helper'

describe FamilyGallery::GroupsController do
  let(:group) { create :group, user_owner: user }
  let(:user) { create :user }
  let(:valid_params) do
    {
      name: Forgery::LoremIpsum.words(2)
    }
  end

  render_views

  routes { FamilyGallery::Engine.routes }

  before do
    sign_in user
  end

  it '#index' do
    group
    get :index
    expect(assigns(:groups)).to eq [group]
  end

  it '#show' do
    get :show, id: group.id
    expect(response).to be_success
  end

  it '#new' do
    get :new
    expect(response).to be_success
  end

  it '#create' do
    post :create, group: valid_params

    created_group = assigns(:group)
    expect(created_group).to be_valid

    expect(response).to redirect_to created_group
  end

  it '#edit' do
    get :edit, id: group.id
    expect(response).to be_success
  end

  it '#update' do
    put :update, id: group.id, group: valid_params

    updated_group = assigns(:group)
    expect(updated_group).to be_valid

    expect(response).to redirect_to updated_group
  end

  it '#destroy' do
    delete :destroy, id: group.id

    expect { group.reload }.to raise_error(ActiveRecord::RecordNotFound)

    expect(response).to redirect_to groups_url
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
family_gallery-0.0.8 spec/controllers/family_gallery/groups_controller_spec.rb
family_gallery-0.0.7 spec/controllers/family_gallery/groups_controller_spec.rb
family_gallery-0.0.6 spec/controllers/family_gallery/groups_controller_spec.rb
family_gallery-0.0.5 spec/controllers/family_gallery/groups_controller_spec.rb