From e41b6537f94805d778d9420a66fe15dd34d8d319 Mon Sep 17 00:00:00 2001 From: Mike Moore Date: Thu, 7 Feb 2013 05:59:25 -0500 Subject: [PATCH] Remove expectation of term case --- app/controllers/users_controller.rb | 2 +- app/models/user_search.rb | 2 +- spec/controllers/users_controller/search_users_spec.rb | 10 ++++++++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 646473862..24d2fe99e 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -288,7 +288,7 @@ class UsersController < ApplicationController end def search_users - term = (params[:term] || "").strip.downcase + term = params[:term].to_s.strip topic_id = params[:topic_id] topic_id = topic_id.to_i if topic_id diff --git a/app/models/user_search.rb b/app/models/user_search.rb index 3795bee6c..b8ccb91e2 100644 --- a/app/models/user_search.rb +++ b/app/models/user_search.rb @@ -14,7 +14,7 @@ class UserSearch end if term.length > 0 - sql << "where username_lower like :term_like or + sql << "where username ilike :term_like or to_tsvector('simple', name) @@ to_tsquery('simple', regexp_replace( diff --git a/spec/controllers/users_controller/search_users_spec.rb b/spec/controllers/users_controller/search_users_spec.rb index 0b23545ba..732c7bba4 100644 --- a/spec/controllers/users_controller/search_users_spec.rb +++ b/spec/controllers/users_controller/search_users_spec.rb @@ -59,6 +59,16 @@ describe UsersController, :search_users do json = JSON.parse(response.body) json["users"].size.should == 3 end + + it "searches the user's username substring upper case" do + xhr :post, :search_users, term: "MR" + json = JSON.parse(response.body) + json["users"].size.should == 6 + + xhr :post, :search_users, term: "MRB" + json = JSON.parse(response.body) + json["users"].size.should == 3 + end end context "sort order respects users with posts on the topic" do