public
Description: El Dorado is a full-stack community web application written in Ruby/Rails.
Homepage: http://almosteffortless.com/eldorado/
Clone URL: git://github.com/trevorturk/el-dorado.git
adding search to avatars, adding basic tests for all search types

git-svn-id: http://eldorado.googlecode.com/svn/trunk@439 
9c008b19-a030-0410-9975-d76d301b4276
trevorturk (author)
Sun Sep 02 12:50:41 -0700 2007
commit  f69ddd4dfcece81a7351156c8096aee68ed162ce
tree    79cee3a38cb3380b1c8e41493566a5f59f6472a4
parent  47df4d6fb291a4fa61ba1bc2711325d72cabf2a8
...
5
6
7
 
 
 
8
9
10
...
5
6
7
8
9
10
11
12
13
0
@@ -5,6 +5,9 @@ class SearchController < ApplicationController
0
   def index
0
     if params[:type].blank? || params[:query].blank?
0
       render :template => "search/index"
0
+ elsif params[:type] == 'avatars'
0
+ @avatars = Avatar.paginate(:page => params[:page], :per_page => Topic::PER_PAGE, :include => :user, :order => 'avatars.created_at desc', :conditions => ["filename LIKE ?", '%' + params[:query] + '%'])
0
+ render :template => "avatars/index"
0
     elsif params[:type] == 'events'
0
       @events = Event.paginate(:page => params[:page], :per_page => Topic::PER_PAGE, :include => :user, :order => 'events.created_at desc', :conditions => ["title LIKE ?", '%' + params[:query] + '%'])
0
       render :template => "events/index"
...
3
4
5
 
6
7
8
...
3
4
5
6
7
8
9
0
@@ -3,6 +3,7 @@
0
     <span class="top">Search</span>
0
     <p>
0
       <select id="type" name="type">
0
+ <option<%= ' selected="selected"' if params[:type] == 'avatars' || current_controller == 'avatars' %> value='avatars'>Avatars</option>
0
         <option<%= ' selected="selected"' if params[:type] == 'events' || current_controller == 'events' %> value='events'>Events</option>
0
         <option<%= ' selected="selected"' if params[:type] == 'files' || current_controller == 'uploads' %> value='files'>Files</option>
0
         <option<%= ' selected="selected"' if params[:type] == 'headers' || current_controller == 'headers' %> value='headers'>Headers</option>
...
19
20
21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
...
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
0
@@ -19,4 +19,23 @@ class SearchControllerTest < Test::Unit::TestCase
0
     get :index
0
     assert_response :success
0
   end
0
+
0
+ def test_should_accept_searches
0
+ login_as :trevor
0
+ get :index, :type => 'avatars', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'events', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'files', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'headers', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'posts', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'topics', :query => 'test'
0
+ assert_response :success
0
+ get :index, :type => 'users', :query => 'test'
0
+ assert_response :success
0
+ end
0
+
0
 end

Comments

    No one has commented yet.