Sha256: 552f223874f54ed98a599f0425f02c1647486157ed0ffa41a62edf9e1d6e33fc

Contents?: true

Size: 1.37 KB

Versions: 13

Compression:

Stored size: 1.37 KB

Contents

require 'spec_helper'

describe Query do
  let!(:exercise) { create(:problem) }
  let(:student) { create(:user) }

  describe '#submit_question!' do
    let(:assignment) { exercise.assignment_for student }

    context 'when just a question on an empty assignment is sent' do
      before { exercise.submit_question!(student, content: 'Please help!') }

      it { expect(assignment.status).to eq :pending }
      it { expect(assignment.result).to be nil }

      it { expect(assignment.solution).to be nil }
      it { expect(exercise.assigned_to? student).to be true }
      it { expect(assignment.messages.count).to eq 1 }
      it { expect(assignment.submission_id).to_not be nil }
    end

    context 'when a question on a previous submission is sent' do
      before do
        assignment = exercise.submit_solution!(student, content: 'x = 1')
        assignment.failed!
        @original_submission_id = assignment.submission_id
      end

      before { exercise.submit_question!(student, content: 'Please help!') }

      it { expect(exercise.assigned_to? student).to be true }
      it { expect(assignment.status).to eq :failed }
      it { expect(assignment.result).to eq 'noop result' }
      it { expect(assignment.solution).to eq 'x = 1' }
      it { expect(assignment.messages.count).to eq 1 }
      it { expect(assignment.submission_id).to eq @original_submission_id }
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
mumuki-laboratory-5.0.12 spec/models/question_spec.rb
mumuki-laboratory-5.0.11 spec/models/question_spec.rb
mumuki-laboratory-5.0.10 spec/models/question_spec.rb
mumuki-laboratory-5.0.9 spec/models/question_spec.rb
mumuki-laboratory-5.0.8 spec/models/question_spec.rb
mumuki-laboratory-5.0.7 spec/models/question_spec.rb
mumuki-laboratory-5.0.6 spec/models/question_spec.rb
mumuki-laboratory-5.0.5 spec/models/question_spec.rb
mumuki-laboratory-5.0.4 spec/models/question_spec.rb
mumuki-laboratory-5.0.3 spec/models/question_spec.rb
mumuki-laboratory-5.0.2 spec/models/question_spec.rb
mumuki-laboratory-5.0.1 spec/models/question_spec.rb
mumuki-laboratory-5.0.0 spec/models/question_spec.rb