acts_as_wild_searchable 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: