acts_as_wild_searchable 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -5,7 +5,7 @@ The default behavior is to chain the search parameters using "or" and wild cards
5
5
  This behavior can be changed by adding the :clause=>"and" and the :left=>true or :right=>true parameters
6
6
 
7
7
  == GEM Location
8
- gem 'act_as_wild_searchable', :git => 'http://github.com/canimus/act_as_wild_searchable.git'
8
+ gem 'act_as_wild_searchable', :git => 'http://github.com/canimus/acts_as_wild_searchable-0.0.1.gem'
9
9
 
10
10
  == Installation
11
11
  bundle install
@@ -1,3 +1,3 @@
1
1
  module ActsAsWildSearchable
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -31,7 +31,11 @@ module ActsAsWildSearchable
31
31
  def method_missing(method_name, *args)
32
32
  # Verify that method start with attribute name followed by like?
33
33
  if match = method_name.to_s.match(/^([a-zA-Z]\w*)_like\?$/)
34
- apply_filter(match.captures.first, args)
34
+ if args.empty?
35
+ all
36
+ else
37
+ apply_filter(match.captures.first, args)
38
+ end
35
39
  else
36
40
  super
37
41
  end
@@ -52,6 +52,12 @@ class ActsAsWildSearchableTest < ActiveSupport::TestCase
52
52
  assert query.explain.include?("name like 'Herminio%' and name like 'Kalli%'")
53
53
  assert_kind_of ActiveRecord::Relation, query
54
54
  end
55
+
56
+ test "query_nil_args" do
57
+ query = User.name_like?
58
+ #assert query.explain.include?("S")
59
+ assert_kind_of Array, query
60
+ end
55
61
 
56
62
 
57
63
  end
@@ -984,3 +984,222 @@
984
984
  User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
985
985
  EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
986
986
   (0.0ms) rollback transaction
987
+  (0.5ms) begin transaction
988
+  (0.0ms) rollback transaction
989
+  (0.0ms) begin transaction
990
+ User Load (11.9ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
991
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
992
+  (0.0ms) rollback transaction
993
+  (0.0ms) begin transaction
994
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
995
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
996
+  (0.0ms) rollback transaction
997
+  (0.0ms) begin transaction
998
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
999
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1000
+  (0.0ms) rollback transaction
1001
+  (0.0ms) begin transaction
1002
+  (0.0ms) rollback transaction
1003
+  (0.0ms) begin transaction
1004
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1005
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1006
+  (0.0ms) rollback transaction
1007
+  (0.0ms) begin transaction
1008
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1009
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1010
+  (0.0ms) rollback transaction
1011
+  (0.0ms) begin transaction
1012
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1013
+ EXPLAIN (0.0ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1014
+  (0.0ms) rollback transaction
1015
+  (0.0ms) begin transaction
1016
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1017
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1018
+  (0.0ms) rollback transaction
1019
+  (0.0ms) begin transaction
1020
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1021
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1022
+  (0.0ms) rollback transaction
1023
+  (0.5ms) begin transaction
1024
+  (0.0ms) rollback transaction
1025
+  (0.0ms) begin transaction
1026
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1027
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1028
+  (0.0ms) rollback transaction
1029
+  (0.0ms) begin transaction
1030
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1031
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1032
+  (0.0ms) rollback transaction
1033
+  (0.0ms) begin transaction
1034
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1035
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1036
+  (0.0ms) rollback transaction
1037
+  (0.0ms) begin transaction
1038
+  (0.0ms) rollback transaction
1039
+  (0.0ms) begin transaction
1040
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1041
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1042
+  (0.0ms) rollback transaction
1043
+  (0.0ms) begin transaction
1044
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1045
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1046
+  (0.0ms) rollback transaction
1047
+  (0.0ms) begin transaction
1048
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1049
+ EXPLAIN (0.0ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1050
+  (0.0ms) rollback transaction
1051
+  (0.0ms) begin transaction
1052
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1053
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1054
+  (0.0ms) rollback transaction
1055
+  (0.0ms) begin transaction
1056
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1057
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1058
+  (0.0ms) rollback transaction
1059
+  (0.5ms) begin transaction
1060
+  (0.0ms) rollback transaction
1061
+  (0.0ms) begin transaction
1062
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1063
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1064
+  (0.0ms) rollback transaction
1065
+  (0.0ms) begin transaction
1066
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1067
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1068
+  (0.0ms) rollback transaction
1069
+  (0.0ms) begin transaction
1070
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1071
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1072
+  (0.0ms) rollback transaction
1073
+  (0.0ms) begin transaction
1074
+  (0.0ms) rollback transaction
1075
+  (0.0ms) begin transaction
1076
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1077
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1078
+  (0.0ms) rollback transaction
1079
+  (0.0ms) begin transaction
1080
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1081
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1082
+  (0.0ms) rollback transaction
1083
+  (0.0ms) begin transaction
1084
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1085
+ EXPLAIN (0.0ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1086
+  (0.0ms) rollback transaction
1087
+  (0.0ms) begin transaction
1088
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1089
+ EXPLAIN (0.0ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1090
+  (0.0ms) rollback transaction
1091
+  (0.0ms) begin transaction
1092
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1093
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1094
+  (0.0ms) rollback transaction
1095
+  (0.5ms) begin transaction
1096
+  (0.0ms) rollback transaction
1097
+  (0.0ms) begin transaction
1098
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1099
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1100
+  (0.0ms) rollback transaction
1101
+  (0.0ms) begin transaction
1102
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1103
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1104
+  (0.0ms) rollback transaction
1105
+  (0.0ms) begin transaction
1106
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1107
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1108
+  (0.0ms) rollback transaction
1109
+  (0.0ms) begin transaction
1110
+ User Load (0.1ms) SELECT "users".* FROM "users"
1111
+  (0.0ms) rollback transaction
1112
+  (0.0ms) begin transaction
1113
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1114
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1115
+  (0.0ms) rollback transaction
1116
+  (0.0ms) begin transaction
1117
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1118
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1119
+  (0.0ms) rollback transaction
1120
+  (0.0ms) begin transaction
1121
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1122
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1123
+  (0.0ms) rollback transaction
1124
+  (0.0ms) begin transaction
1125
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1126
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1127
+  (0.0ms) rollback transaction
1128
+  (0.0ms) begin transaction
1129
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1130
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1131
+  (0.0ms) rollback transaction
1132
+  (0.5ms) begin transaction
1133
+  (0.0ms) rollback transaction
1134
+  (0.0ms) begin transaction
1135
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1136
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1137
+  (0.0ms) rollback transaction
1138
+  (0.0ms) begin transaction
1139
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1140
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1141
+  (0.0ms) rollback transaction
1142
+  (0.0ms) begin transaction
1143
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1144
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1145
+  (0.0ms) rollback transaction
1146
+  (0.0ms) begin transaction
1147
+ User Load (0.1ms) SELECT "users".* FROM "users"
1148
+  (0.0ms) rollback transaction
1149
+  (0.0ms) begin transaction
1150
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1151
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1152
+  (0.0ms) rollback transaction
1153
+  (0.0ms) begin transaction
1154
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1155
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1156
+  (0.0ms) rollback transaction
1157
+  (0.0ms) begin transaction
1158
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1159
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1160
+  (0.0ms) rollback transaction
1161
+  (0.0ms) begin transaction
1162
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1163
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1164
+  (0.0ms) rollback transaction
1165
+  (0.0ms) begin transaction
1166
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1167
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1168
+  (0.0ms) rollback transaction
1169
+  (0.5ms) begin transaction
1170
+  (0.0ms) rollback transaction
1171
+  (0.0ms) begin transaction
1172
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1173
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' and name like '%Kalli')
1174
+  (0.0ms) rollback transaction
1175
+  (0.0ms) begin transaction
1176
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1177
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' and name like 'Kalli%')
1178
+  (0.0ms) rollback transaction
1179
+  (0.0ms) begin transaction
1180
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1181
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%' or name like '%Kalli%')
1182
+  (0.0ms) rollback transaction
1183
+  (0.0ms) begin transaction
1184
+ User Load (0.1ms) SELECT "users".* FROM "users"
1185
+  (0.0ms) rollback transaction
1186
+  (0.0ms) begin transaction
1187
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1188
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio' or name like '%Kalli')
1189
+  (0.0ms) rollback transaction
1190
+  (0.0ms) begin transaction
1191
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1192
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%' or name like 'Kalli%')
1193
+  (0.0ms) rollback transaction
1194
+  (0.0ms) begin transaction
1195
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1196
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio%')
1197
+  (0.0ms) rollback transaction
1198
+  (0.0ms) begin transaction
1199
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1200
+ EXPLAIN (0.0ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like '%Herminio')
1201
+  (0.0ms) rollback transaction
1202
+  (0.0ms) begin transaction
1203
+ User Load (0.1ms) SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1204
+ EXPLAIN (0.1ms) EXPLAIN QUERY PLAN SELECT "users".* FROM "users" WHERE (name like 'Herminio%')
1205
+  (0.0ms) rollback transaction
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_wild_searchable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-09 00:00:00.000000000Z
12
+ date: 2012-04-10 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &70145723068500 !ruby/object:Gem::Requirement
16
+ requirement: &70200945228140 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 3.2.3
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70145723068500
24
+ version_requirements: *70200945228140
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sqlite3
27
- requirement: &70145723068060 !ruby/object:Gem::Requirement
27
+ requirement: &70200945227720 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70145723068060
35
+ version_requirements: *70200945227720
36
36
  description: This gem allows you to use the acts_as_wild_searchable tag to your models
37
37
  and make methods for each attribute to search using wild cards and like
38
38
  email: