【发布时间】:2020-07-22 05:07:06
【问题描述】:
如何使用 shoulda-matchers 测试这些操作,响应 JSON 成功 200 和失败 422 以及如何使用普通 RSpec 进行测试:如果可以的话,两种情况:
我认为它的存储库中缺少一些关于应该匹配的信息。 如果您能提供帮助,非常感谢。
module V1
class MeasurementsController < ApplicationController
protect_from_forgery with: :null_session
before_action :set_measurement, only: %i[destroy]
def index
measurement = Measurement.all
render json: MeasurementSerializer.new(measurement).serialized_json
end
def create
measurement = Measurement.new(measurement_params)
if measurement.save
render json: MeasurementSerializer.new(measurement).serialized_json
else
render json: { error: measurement.errors.messages }, status: 422
end
end
def destroy
if @measurement.destroy
head :no_content
else
render json: { error: measurement.errors.messages }, status: 422
end
end
private
def set_measurement
@measurement = Measurement.find(params[:id])
end
def measurement_params
params.require(:measurement).permit(:time, :date, :sport_id)
end
end
end
end```
【问题讨论】:
标签: unit-testing rspec rspec-rails fastjsonapi shoulda-matchers