Hallo Michael, was bringt er Dir denn für einen Fehler?
Das das Product mehr als null Autoren hat? Das Product kann ja vorher schon einen Autor haben! In deinem Test addest du einen Autor und löschst Ihn wieder und dann prüfst Du auf die Anzahl null. def test_add_delete_author product = products(:buchtitelxy) ich_habe_so_viel_autoren = product .authors.size author_id = authors(:autorxy).id product.author_id= author_id product.save # hier solltest Du checken ob wirklich einer dazugekommen ist assert_equal ich_habe_so_viel_autoren+1, product.authors.size # wieder löschen get :delete_author, :id => product.id, :assoc_id => author_id # hier noch ein assert_response einbauen # hier sollten es wieder soviele wie vorher sein! assert_equal ich_habe_so_viel_autoren, product.authors.size end Herzliche Grüße, Michael Am 20.05.2007 20:02 Uhr schrieb "Michael Kastner" unter <[EMAIL PROTECTED]>: > Hallo Urban, > > vielen Dank für Deine Antwort. Ich stehe vor folgendem Problem: > > Egal welchen Methodennamen ich dem "get" übergebe, es wird keine Exception > geworfen. > > D.h. egal ob ich nun > > get :delete_bla > > oder > > get :delete_nonsense > > oder > > get :delete_author > > hinschreibe, der Befehl wird schlicht ignoriert. > > Ich würde zumindest eine Exception erwarten, wenn ich im Test per get eine > action aufrufe, die überhaupt nicht existiert. > > Viele Grüße > > Michael Kastner > > > > > Urban Hafner schrieb: >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> >> On May 20, 2007, at 15:08 , Michael Kastner wrote: >> >>> Hallo, >>> >>> ich habe hier wieder mal den klassischen Fall: Programm funktioniert, >>> aber der Test nicht. >>> >>> Ich habe diese Methode in meinem Controller/Functional-Test: >>> >>> def test_add_delete_author >>> # erstmal Autor als Assoziation hinzufügen, damit >>> # auch etwas zum löschen da ist >>> product = products(:buchtitelxy) >>> author_id = authors(:autorxy).id >>> product.author_id= author_id >> >> Hier hast du nur einen Author unten aber authors. Ist das richtig? >> Ausserdem ist das mit author_id nicht noetig. Mach doch einfach >> product.author = author. >> >>> product.save >>> # jetzt möchte ich die Assoziation >>> # wieder löschen >>> get :delete_author, :id => product.id, :assoc_id => author_id >>> assert_equal 0, product.authors.size >> >> Kann sein, dass du hier ein product.authors(:refresh).size machen musst, >> damit die Daten erneut aus der DB geladen werden. >> >>> end >> >> Urban >> - -- >> http://bettong.net >> >> >> >> -----BEGIN PGP SIGNATURE----- >> Version: GnuPG v1.4.6 (Darwin) >> >> iD8DBQFGUH29ggNuVCIrEyURAgL4AJ95674RUNV07j9WTeitkWiEBKQZ4ACgpn1t >> 7gy279Xs2p5EVuzKb7zp1R4= >> =ZShK >> -----END PGP SIGNATURE----- >> _______________________________________________ >> rubyonrails-ug mailing list >> [email protected] >> http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug >> >> _______________________________________________ rubyonrails-ug mailing list [email protected] http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
