Hey Frederick, Thank you very much. I just implemented the same way you have mentioned. As I added a test by test, I understood it well and could think of other possible cases also.
If we have to check for the internal portions, we do it by inspecting (raising the variable ) while developing. If we have to do the same job by tests, how can we do that? As you mentioned i changed my way of querying as you said. Special thanks for that. :) Thanks Sumanth On Thu, Nov 27, 2008 at 5:21 PM, Frederick Cheung < [EMAIL PROTECTED]> wrote: > > > > On Nov 27, 9:04 am, "sumanth tt" <[EMAIL PROTECTED]> > wrote: > > Hello, > > > > Can somebody help me writing a unit test for existing method of a model. > > > > I am using 2 tables like users, articles and > > > > Method is like > > > > def get_the_user_bought_item(user_id_list) > > users_list = User.find_by_sql(["SELECT * FROM users WHERE id IN (?)", > > user_id_list]) > > item_details=Article.find_by_sql(["SELECT * FROM users WHERE bought_by > IN > > (?)", user_id_list]) > > return user_list, item_details > > end > > > > So i need to write a unit test for this. How that unit test should look > > like? > > > pretty simple really. Setup some preconditions (fixtures, model > instances created as needed, mocks etc...), call the method and assert > that the results are as expected. Try the common case and some edge > cases (eg user_item_list is empty etc...). > > Your current implementation is rather low level. That could be > > users_list = User.find user_id_list > items = Article.find_all_by_bought_by user_id_list > return users_list, items > > Fred > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

