29 lines
899 B
Ruby
29 lines
899 B
Ruby
require 'rails_helper'
|
|
|
|
RSpec.describe Api::SolutionsController, :type => :request do
|
|
|
|
before :each do
|
|
Question.delete_all
|
|
@question = Question.create!(title: 'title', content: 'content', input: %W(1 2 3), output: %W(4 5 6))
|
|
end
|
|
let(:out) {JSON.parse(response.body)}
|
|
context '参数正确,成功提交答题' do
|
|
before do
|
|
post "/api/questions/#{@question.id}/solutions.json", src: 'src', student_work_id: 1, language: 2
|
|
end
|
|
it {expect(response).to have_http_status(:success)}
|
|
it {expect(out["status"]).to eq(0)}
|
|
it {expect(out["id"]).to be > 0}
|
|
end
|
|
|
|
context '参数不正确,返回错误信息' do
|
|
before do
|
|
post "/api/questions/#{@question.id}/solutions.json", src: ''
|
|
end
|
|
it {expect(response).to have_http_status(:success)}
|
|
it {expect(out["status"]).not_to eq(0)}
|
|
it {expect(out["message"]).not_to be_empty}
|
|
end
|
|
|
|
end
|