Sha256: e56a049b5cd352d674149a160f031437341db612fd691d4cf1382a11375917cb

Contents?: true

Size: 1.19 KB

Versions: 1

Compression:

Stored size: 1.19 KB

Contents

require 'test_helper'

describe 'apples admin pages' do
  include AcceptanceHelper

  describe 'edit' do
    before do
      @apple = Apple.create(name: 'Granny Smith')
      admin_page "/apples/#{@apple.id}/edit"
    end

    it 'should load the page' do
      assert_equal 200, page.status_code
    end

    it 'should edit apples' do
      apple_attrs = @apple.attributes

      apple_name = 'Red Delicious'
      fill_in 'apple[name]', with: apple_name
      click_button 'Update Apple'
      assert_equal 200, page.status_code

      new_apple = Apple.find(@apple.id).attributes
      refute_equal new_apple, apple_attrs
      assert_equal apple_name, new_apple['name']
    end
  end

  describe 'validation errors' do
    before do
      @banana = Banana.create(name: 'Dennis')
      visit "/admin/bananas/#{@banana.id}/edit"
    end

    it 'should error when validation is nil' do
      fill_in 'banana[name]', with: nil
      click_button 'Update Banana'

      assert page.has_css?('.field_with_errors')
    end

    it 'should error when validation is empty' do
      fill_in 'banana[name]', with: ''
      click_button 'Update Banana'

      assert page.has_css?('.field_with_errors')
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ceo-0.2.0 test/ceo/edit_apple_test.rb