Sha256: a0c356f11e9ee5d47c2b5d429e44328f86c57a17925ef38c05a50c90cb351533

Contents?: true

Size: 1.4 KB

Versions: 3

Compression:

Stored size: 1.4 KB

Contents

require 'spec_helper'

describe 'Student Address' do

  let(:student) { create(:student) }
  let(:student_with_address) { create(:student, :with_address) }
  let(:student_with_addresses) { create(:student, :with_addresses) }

  let!(:country) { create(:country, name: 'Japan', iso: 'JP') }

  before(:all) { set_resource 'student-address' }
  before { as :admin }

  context 'new', js: true, type: 'address' do
    before do
      @resource = student
      visit gaku.edit_student_path(@resource)
    end

    it_behaves_like 'new address'
  end

  context 'state dropdown', js: true, type: 'address' do

    before do
      @resource = student_with_address
      visit gaku.edit_student_path(@resource)
    end

    it_behaves_like 'dynamic state dropdown'
  end

  context 'existing', type: 'address' do

    context 'one address' do
      before(:each) do
        @resource = student_with_address
        visit gaku.edit_student_path(@resource)
        click tab_link
        wait_until { has_content? 'Addresses list' }
      end

      it_behaves_like 'edit address'
      it_behaves_like 'delete address'
    end

    context 'two addresses' do

      before(:each) do
        @resource = student_with_addresses
        visit gaku.edit_student_path(@resource)
        click tab_link
        wait_until { page.has_content? 'Addresses list' }
        sleep 5
      end

      it_behaves_like 'primary addresses'
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
gaku-0.0.3 core/spec/requests/students/addresses_spec.rb
gaku-0.0.2 core/spec/requests/students/addresses_spec.rb
gaku-0.0.1 core/spec/requests/students/addresses_spec.rb