
December 27th, 2006, 06:41 PM
|
|
Contributing User
|
|
Join Date: Mar 2003
Posts: 174
Time spent in forums: 14 h 27 m 11 sec
Reputation Power: 11
|
|
More on that test part:
so I have this record in my spaces.yml:
first_space:
id: 1
title: My first space
subdomain: first-space
domain: functionalalcoholism.org
home_page_id: 57
user_id: 1
owner_id: 1
created_at: 2005-05-21 00:00:00
updated_at: 2005-05-21 00:00:00
wikiwords_enabled: 1
country_code: US
timezone_identifier: US/Eastern
And here's my test:
Code:
def test_find
post :find, :space => {:title => 'My first space'}, :context => 'admin'
assert_response :success
assert_not_nil assigns(:spaces)
assert_not_nil assigns(:space_pages)
assert_equal 1, assigns(:spaces).size #1 because there's only one record
assert_nil flash[:error]
end
But I now get a "Expected response to be a <:success>, but was <302>" Error
Quote: | Originally Posted by CLEM_C_ROCK Hello,
I've encountered a strange problem w/ a find method in a big project I'm working on. One thing I must admit is I'm pretty new to ruby and coming from a PHP background.
Anyway here's the find method:
Code:
def find
if params.has_key? :space #*new* if request.post? #*old*
unless params[:space][:title].empty?
@space_pages, @spaces = paginate :space, :per_page => 30, :conditions => "title like '%#{params[:space][:title].gsub(/'+/, "\\\\'") }%'", :order => 'title asc'
if @spaces.size == 0
flash[:notice] = 'Space not found'
else
flash[:notice] = 'Space
redirect_to :action => 'index'
end
end
end
end
Here's the html code:
<input id="space_title" name="space[title]" size="30" type="text" />
Now the strange this w/ this function is I can type say: "test" and no record will be found and the text box will be empty. If I hit the submit button again the params[:space][:title] variable will still hold the value of 'test'.
Why is the params[:space][:title] holding the value of the text input box when there's nothing in it?
Also on a final note - I'm also trying to write a test for this method.
This method reports no errors or failures but seems to not be the most thorough test:
Code:
def test_find
post :find, :context => 'admin'
assert_response :success
end
Thanks for any help! |
|