Sha256: 626171dc0f65350e666e1e4326020d4e14dbfbfb28b0aeb3e3aef9c046c8c9be

Contents?: true

Size: 1.66 KB

Versions: 39

Compression:

Stored size: 1.66 KB

Contents

require 'spec_helper'

feature 'Guide Reset Flow', organization_workspace: :test do
  let(:user) { create(:user) }

  let!(:problem) { build(:problem) }

  let!(:lesson) { create(:lesson, description: 'An awesome guide', exercises: [problem]) }

  let!(:chapter) { create(:chapter, lessons: [lesson]) }

  let(:exam_problem) { build(:problem) }
  let(:test_organization) { Organization.find_by_name('test') }
  let(:exam) { create(:exam, organization: test_organization, guide: guide) }
  let(:guide) { create(:guide, exercises: [exam_problem])}

  before { exam.index_usage! test_organization }

  before { reindex_current_organization! }

  let(:restart_xpath) { "//a[@title='#{I18n.t(:restart)}']" }

  context 'no logged in user' do
    scenario 'visit guide' do
      visit "/lessons/#{lesson.id}"

      expect(page).to have_text('An awesome guide')
      expect(page).to_not have_xpath(restart_xpath)
    end
  end

  context 'logged in user' do
    before { set_current_user! user }

    scenario 'visit guide with no solutions sent for it' do
      visit "/lessons/#{lesson.id}"

      expect(page).to have_text('An awesome guide')
      expect(page).to_not have_xpath(restart_xpath)
    end

    scenario 'visit guide with solutions sent for it', :xpath_no_matches do
      problem.submit_solution! user

      visit "/lessons/#{lesson.id}"

      expect(page).to have_text('An awesome guide')
      expect(page).to have_xpath(restart_xpath)
    end

    scenario 'visit exam guide with solutions sent for it' do
      exam_problem.submit_solution! user
      exam.authorize!(user)

      visit "/exams/#{exam.id}"

      expect(page).to_not have_xpath(restart_xpath)
    end
  end
end

Version data entries

39 entries across 39 versions & 1 rubygems

Version Path
mumuki-laboratory-9.23.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.22.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.21.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.20.1 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.20.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.19.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.18.1 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.18.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.17.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.16.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.15.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.14.1 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.14.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.13.2 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.13.1 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.13.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.12.1 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.12.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.11.0 spec/features/guide_reset_spec.rb
mumuki-laboratory-9.10.0 spec/features/guide_reset_spec.rb