Ich habe folgende rspec Test, das funktioniert:Wie kann man mit FactoryGirl Parameter senden (im Gegensatz zum manuellen Senden der Parameter als Hash)?
it "redirects to the created api_key" do
post :create, :api_key => {:api_identifier => "asdfadsf", :verification_code =>
"12345"}
response.should redirect_to(ApiKey.last) #(or any other test function)
end
Aber ich benutze Fabrik Mädchen so ich nicht manuell api_key
s erstellen müssen.
Wie kann ich die obige Funktionalität replizieren, aber Fabrikmädchen verwenden?
Verwendung:
it "redirects to the created api_key" do
test = FactoryGirl.build(:api_key)
post :create, :api_key => test
response.should redirect_to(ApiKey.last) #(or any other test function)
end
oder:
it "redirects to the created api_key" do
post :create, FactoryGirl.build(:api_key)
response.should redirect_to(ApiKey.last) #(or any other test function)
end
Gibt mir Nullwerte für den :api_key
Wert, wenn ich an meinem Controller ankommen.
Als Referenz hier ist meine Aktion erstellen, dass dieser Test Test ist:
def create
@api_key = ApiKey.new(params[:api_key])
@api_key.user = current_user
pp @api_key
respond_to do |format|
if @api_key.save
format.html { redirect_to @api_key, notice: 'Api key was successfully created.' }
format.json { render json: @api_key, status: :created, location: @api_key }
else
format.html { render action: "new" }
format.json { render json: @api_key.errors, status: :unprocessable_entity }
end
end
end
Sie haben meinen Tag gemacht! Danke vielmals !! – Hito