You don't test private methods. You test your public interface, and by testing your public interface your implementation is also tested. As far as testing controllers I wrote a somewhat lenghty post on it
http://mark-story.com/posts/view/testing-cakephp-controllers-the-hard-way As for testing email component, I almost always do this with a Mock object so that I can avoid any potential emails being sent by running the test suite, and to allow for better unit separation. Using mocks is just a good practice to get into as well. -Mark On Jan 18, 8:28 am, Fran Iglesias <fran...@buabua.com> wrote: > Hi, > > I'm trying to write a test case for a private method in a controller. > This controller uses the Email component. > > The method purpose is to send notifications via email to users. > > http://code.assembla.com/milhojas/subversion/nodes/dev/app/controller... > > I want to test if the message contains all data in the proper format. > > The test case, tries to send the email in debug delivery mode and > compares the expected message to the Message.Email.messsage session > variable. > > http://code.assembla.com/milhojas/subversion/nodes/dev/app/tests/case... > > The problem is that the Email component fails when trying to set a > flash message (EmailComponent line 767) beacause Email->Session > component is not an object. This only happens in the test context. > > So, my question is: what preparations have I to do in order to run > this test? > > Thank you. > -- > Fran Iglesias > fran...@buabua.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "CakePHP" group. To post to this group, send email to cake-php@googlegroups.com To unsubscribe from this group, send email to cake-php+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/cake-php?hl=en -~----------~----~----~----~------~----~------~--~---