Sha256: 8c5148a1d82eda45313f1db9cb87644c04ac092120c67e62dff7f030c8397b28

Contents?: true

Size: 1.59 KB

Versions: 3

Compression:

Stored size: 1.59 KB

Contents

require 'helper'

describe Bearcat::Client::Quizzes do
  before do
    @client = Bearcat::Client.new(prefix: "http://canvas.instructure.com", token: "test_token")
  end

  it "returns a courses quizzes" do
    stub_get(@client, "/api/v1/courses/1/quizzes").to_return(json_response("quizzes/course_quizzes.json"))
    course_quizzes = @client.list_course_quizzes('1')
    course_quizzes.class.should eq(Bearcat::ApiArray)
    course_quizzes.count.should == 2
    course_quizzes.first['id'].should == 37
    course_quizzes.last['id'].should == 38
  end

  it "returns a single quiz" do
    stub_get(@client, "/api/v1/courses/1/quizzes/38").to_return(json_response("quizzes/course_quiz.json"))
    course_quiz = @client.quiz('1', '38')
    course_quiz.class.should eq(Hash)
    course_quiz['id'].should == 38
  end

  it 'sets extensions on a quiz' do
    stub_post(@client, "/api/v1/courses/1/quizzes/1/extensions").to_return(json_response("quizzes/quiz_extension.json"))
    quiz_extension = @client.quiz_extensions('1', '1', {quiz_extensions: [{user_id: 1}, {extra_time: 30}]})
    quiz_extension.class.should eq(Hash)
    quiz_extension['quiz_extensions'].first['extra_time'].should eq(30)
  end

  it 'returns a quiz assignment override' do
    stub_post(@client, "/api/v1/courses/1/quizzes/assignment_overrides"h.first).to_return(json_response("quizzes/quiz_assignment_override.json"))
    quiz_overrides = @client.quiz_extensions('1',{:quiz_assignment_overrides => [{ :quiz_ids => 13 }] })
    quiz_overrides.class.should eq(Hash)
    quiz_overrides['quiz_assignment_overrides'].first['quiz_id'].should eq(1014)
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
bearcat-1.2.5 spec/bearcat/client/quizzes_spec.rb
bearcat-1.2.4 spec/bearcat/client/quizzes_spec.rb
bearcat-1.2.3 spec/bearcat/client/quizzes_spec.rb