Étant donné le code du Complex Form part III, comment voulez-vous tester l'attribut virtuel?Comment simulez-vous les params lors du test du setter d'un modèle Rails?
def new_task_attributes=(task_attributes)
task_attributes.each do |attributes|
tasks.build(attributes)
end
end
Je suis actuellement en train de le tester comme ceci:
def test_adding_task_to_project
p = Project.new
params = {"new_tasks_attributes" => [{ "name" => "paint fence"}]}
p.new_tasks_attributes=(params)
p.save
assert p.tasks.length == 1
end
Mais je reçois l'erreur suivante:
NoMethodError: undefined method `stringify_keys!' for "new_tasks_attributes":String
Toutes les suggestions sur l'amélioration de ce test seraient grandement appréciés.