Ich versuche, den sust_create_taption Block zu testen. Hier ist der Code: appointments_controller_test.rbcontroller_test: NoMethodError: undefinierte Methode `Erlaubnis 'für # <Array: 0x98583f0>
.....
test "should create appointment" do
login_as(@heiko)
@heiko.confirmed_at = Time.now
assert_difference('Appointment.count') do
post appointments_url, params: { appointment: [@heikoAppointment.attributes, @heikoInvitation.user_id, @heikoInvitation.message] }
end
assert_redirected_to appointment_url(Appointment.last)
end
...
Controller/appointments_controller.rb
def appointment_params
params.require(:appointment).permit(:shopper_id, :status, :appointed, :processed, :shopping_list_id, invitation_attributes: [:user_id, :message ])
end
Jedoch, wenn ich den Test ausführen, bekomme ich diesen Fehler in should_create_appointment:
AppointmentsControllerTest#test_should_create_appointment:
NoMethodError: undefined method `permit' for #<Array:0x98583f0>
app/controllers/appointments_controller.rb:141:in `appointment_params'
test/controllers/appointments_controller_test.rb:31:in `block (2 levels) in <class:AppointmentsControllerTest>'
test/controllers/appointments_controller_test.rb:30:in `block in <class:AppointmentsControllerTest>'
Weiß jemand, was schief gelaufen ist? Hier sind die Armaturen:
appointments.yml
appointment_heiko:
user: user_heiko
appointed: <%= Time.now + 2.weeks %>
processed: <%= Time.now - 1.weeks %>
shopping_list: shopping_list_lebensmittel
shopper: user_shopper
status: <%= Appointment.statuses[:finished] %>
invitations.yml
invitation_heiko:
user: user_heiko
shopping_list: shopping_list_drogerie
appointment: appointment_heiko
accepted: true
responded: <%= Time.now - 3.weeks %>
message: 'Gerne akzeptiere ich die Einladung'
danke für erklärung, es funktioniert gut! Wissen Sie auch, wie Sie die Löschfunktion testen können? Ich benutze dies: delete termination_url (@heikoAppointment), aber dann erscheint der Fehler: Eine übergeordnete Zeile kann nicht gelöscht oder aktualisiert werden: Eine Fremdschlüsseleinschränkung schlägt fehl – Peter