searchgasm 1.2.2 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +8 -0
- data/Manifest +42 -3
- data/README.rdoc +101 -82
- data/TODO.rdoc +1 -3
- data/lib/searchgasm/active_record/connection_adapters/mysql_adapter.rb +143 -6
- data/lib/searchgasm/active_record/connection_adapters/postgresql_adapter.rb +148 -0
- data/lib/searchgasm/active_record/connection_adapters/sqlite_adapter.rb +54 -0
- data/lib/searchgasm/condition/base.rb +59 -86
- data/lib/searchgasm/condition/begins_with.rb +3 -8
- data/lib/searchgasm/condition/blank.rb +5 -5
- data/lib/searchgasm/condition/ends_with.rb +3 -8
- data/lib/searchgasm/condition/equals.rb +4 -3
- data/lib/searchgasm/condition/greater_than.rb +3 -14
- data/lib/searchgasm/condition/greater_than_or_equal_to.rb +3 -14
- data/lib/searchgasm/condition/keywords.rb +3 -8
- data/lib/searchgasm/condition/less_than.rb +3 -14
- data/lib/searchgasm/condition/less_than_or_equal_to.rb +3 -14
- data/lib/searchgasm/condition/like.rb +15 -0
- data/lib/searchgasm/condition/nil.rb +5 -5
- data/lib/searchgasm/condition/not_begin_with.rb +17 -0
- data/lib/searchgasm/condition/not_end_with.rb +17 -0
- data/lib/searchgasm/condition/{does_not_equal.rb → not_equal.rb} +5 -4
- data/lib/searchgasm/condition/not_have_keywords.rb +17 -0
- data/lib/searchgasm/condition/not_like.rb +17 -0
- data/lib/searchgasm/condition/tree.rb +4 -5
- data/lib/searchgasm/conditions/base.rb +218 -72
- data/lib/searchgasm/modifiers/absolute.rb +15 -0
- data/lib/searchgasm/modifiers/acos.rb +11 -0
- data/lib/searchgasm/modifiers/asin.rb +11 -0
- data/lib/searchgasm/modifiers/atan.rb +11 -0
- data/lib/searchgasm/modifiers/base.rb +27 -0
- data/lib/searchgasm/modifiers/ceil.rb +15 -0
- data/lib/searchgasm/modifiers/char_length.rb +15 -0
- data/lib/searchgasm/modifiers/cos.rb +15 -0
- data/lib/searchgasm/modifiers/cot.rb +15 -0
- data/lib/searchgasm/modifiers/day_of_month.rb +15 -0
- data/lib/searchgasm/modifiers/day_of_week.rb +15 -0
- data/lib/searchgasm/modifiers/day_of_year.rb +15 -0
- data/lib/searchgasm/modifiers/degrees.rb +11 -0
- data/lib/searchgasm/modifiers/exp.rb +15 -0
- data/lib/searchgasm/modifiers/floor.rb +15 -0
- data/lib/searchgasm/modifiers/hex.rb +11 -0
- data/lib/searchgasm/modifiers/hour.rb +11 -0
- data/lib/searchgasm/modifiers/log.rb +15 -0
- data/lib/searchgasm/modifiers/log10.rb +11 -0
- data/lib/searchgasm/modifiers/log2.rb +11 -0
- data/lib/searchgasm/modifiers/md5.rb +11 -0
- data/lib/searchgasm/modifiers/microseconds.rb +11 -0
- data/lib/searchgasm/modifiers/milliseconds.rb +11 -0
- data/lib/searchgasm/modifiers/minute.rb +15 -0
- data/lib/searchgasm/modifiers/month.rb +15 -0
- data/lib/searchgasm/modifiers/octal.rb +15 -0
- data/lib/searchgasm/modifiers/radians.rb +11 -0
- data/lib/searchgasm/modifiers/round.rb +11 -0
- data/lib/searchgasm/modifiers/second.rb +15 -0
- data/lib/searchgasm/modifiers/sign.rb +11 -0
- data/lib/searchgasm/modifiers/sin.rb +11 -0
- data/lib/searchgasm/modifiers/square_root.rb +15 -0
- data/lib/searchgasm/modifiers/tan.rb +15 -0
- data/lib/searchgasm/modifiers/week.rb +11 -0
- data/lib/searchgasm/modifiers/year.rb +11 -0
- data/lib/searchgasm/shared/utilities.rb +0 -10
- data/lib/searchgasm/version.rb +2 -2
- data/lib/searchgasm.rb +15 -19
- data/searchgasm.gemspec +86 -9
- data/test/libs/ordered_hash.rb +9 -0
- data/test/test_condition_base.rb +21 -47
- data/test/test_condition_types.rb +44 -44
- data/test/test_conditions_base.rb +34 -21
- data/test/test_helper.rb +1 -0
- data/test/test_search_conditions.rb +1 -1
- metadata +85 -8
- data/lib/searchgasm/condition/contains.rb +0 -20
- data/lib/searchgasm/condition/during_evening.rb +0 -32
@@ -45,16 +45,6 @@ module Searchgasm
|
|
45
45
|
|
46
46
|
new_joins.compact.uniq
|
47
47
|
end
|
48
|
-
|
49
|
-
# "meaningful" is subjective which is why this is not a core extension like .blank?
|
50
|
-
def meaningless?(value)
|
51
|
-
return false if value == false
|
52
|
-
value.blank?
|
53
|
-
end
|
54
|
-
|
55
|
-
def meaningful?(value)
|
56
|
-
!meaningless?
|
57
|
-
end
|
58
48
|
end
|
59
49
|
end
|
60
50
|
end
|
data/lib/searchgasm/version.rb
CHANGED
data/lib/searchgasm.rb
CHANGED
@@ -2,6 +2,9 @@ $:.unshift(File.dirname(__FILE__)) unless $:.include?(File.dirname(__FILE__)) ||
|
|
2
2
|
|
3
3
|
require "active_record"
|
4
4
|
require "active_record/version"
|
5
|
+
require "active_record/connection_adapters/mysql_adapter"
|
6
|
+
require "active_record/connection_adapters/postgresql_adapter"
|
7
|
+
require "active_record/connection_adapters/sqlite_adapter"
|
5
8
|
require "active_support"
|
6
9
|
|
7
10
|
# Core Ext
|
@@ -18,6 +21,9 @@ require "searchgasm/config"
|
|
18
21
|
# ActiveRecord
|
19
22
|
require "searchgasm/active_record/base"
|
20
23
|
require "searchgasm/active_record/associations"
|
24
|
+
require "searchgasm/active_record/connection_adapters/mysql_adapter"
|
25
|
+
require "searchgasm/active_record/connection_adapters/postgresql_adapter"
|
26
|
+
require "searchgasm/active_record/connection_adapters/sqlite_adapter"
|
21
27
|
|
22
28
|
# Search
|
23
29
|
require "searchgasm/search/ordering"
|
@@ -33,23 +39,14 @@ require "searchgasm/conditions/base"
|
|
33
39
|
|
34
40
|
# Condition
|
35
41
|
require "searchgasm/condition/base"
|
36
|
-
require "searchgasm/condition/begins_with"
|
37
|
-
require "searchgasm/condition/blank"
|
38
|
-
require "searchgasm/condition/contains"
|
39
|
-
require "searchgasm/condition/does_not_equal"
|
40
|
-
require "searchgasm/condition/ends_with"
|
41
|
-
require "searchgasm/condition/equals"
|
42
|
-
require "searchgasm/condition/greater_than"
|
43
|
-
require "searchgasm/condition/greater_than_or_equal_to"
|
44
|
-
require "searchgasm/condition/keywords"
|
45
|
-
require "searchgasm/condition/less_than"
|
46
|
-
require "searchgasm/condition/less_than_or_equal_to"
|
47
|
-
require "searchgasm/condition/nil"
|
48
42
|
require "searchgasm/condition/tree"
|
49
|
-
|
50
|
-
require "searchgasm/condition
|
51
|
-
|
52
|
-
|
43
|
+
SEARCHGASM_CONDITIONS = [:begins_with, :blank, :child_of, :descendant_of, :ends_with, :equals, :greater_than, :greater_than_or_equal_to, :inclusive_descendant_of, :like, :nil, :not_begin_with, :not_end_with, :not_equal, :not_have_keywords, :keywords, :less_than, :less_than_or_equal_to, :sibling_of]
|
44
|
+
SEARCHGASM_CONDITIONS.each { |condition| require "searchgasm/condition/#{condition}" }
|
45
|
+
|
46
|
+
# Modifiers
|
47
|
+
require "searchgasm/modifiers/base"
|
48
|
+
SEARCHGASM_MODIFIERS = [:day_of_month, :day_of_week, :day_of_year, :hour, :microseconds, :milliseconds, :minute, :month, :second, :week, :year]
|
49
|
+
SEARCHGASM_MODIFIERS.each { |modifier| require "searchgasm/modifiers/#{modifier}" }
|
53
50
|
|
54
51
|
# Helpers
|
55
52
|
require "searchgasm/helpers/utilities"
|
@@ -78,9 +75,8 @@ module Searchgasm
|
|
78
75
|
include Protection
|
79
76
|
end
|
80
77
|
|
81
|
-
|
82
|
-
|
83
|
-
end
|
78
|
+
SEARCHGASM_CONDITIONS.each { |condition| Base.register_condition("Searchgasm::Condition::#{condition.to_s.camelize}".constantize) }
|
79
|
+
SEARCHGASM_MODIFIERS.each { |modifier| Base.register_modifier("Searchgasm::Modifiers::#{modifier.to_s.camelize}".constantize) }
|
84
80
|
end
|
85
81
|
|
86
82
|
# The namespace I put all cached search classes.
|
data/searchgasm.gemspec
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
|
2
|
-
# Gem::Specification for Searchgasm-1.
|
2
|
+
# Gem::Specification for Searchgasm-1.3.0
|
3
3
|
# Originally generated by Echoe
|
4
4
|
|
5
5
|
--- !ruby/object:Gem::Specification
|
6
6
|
name: searchgasm
|
7
7
|
version: !ruby/object:Gem::Version
|
8
|
-
version: 1.
|
8
|
+
version: 1.3.0
|
9
9
|
platform: ruby
|
10
10
|
authors:
|
11
11
|
- Ben Johnson of Binary Logic
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
|
15
|
-
date: 2008-
|
15
|
+
date: 2008-10-02 00:00:00 -04:00
|
16
16
|
default_executable:
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
@@ -62,10 +62,7 @@ extra_rdoc_files:
|
|
62
62
|
- lib/searchgasm/condition/begins_with.rb
|
63
63
|
- lib/searchgasm/condition/blank.rb
|
64
64
|
- lib/searchgasm/condition/child_of.rb
|
65
|
-
- lib/searchgasm/condition/contains.rb
|
66
65
|
- lib/searchgasm/condition/descendant_of.rb
|
67
|
-
- lib/searchgasm/condition/does_not_equal.rb
|
68
|
-
- lib/searchgasm/condition/during_evening.rb
|
69
66
|
- lib/searchgasm/condition/ends_with.rb
|
70
67
|
- lib/searchgasm/condition/equals.rb
|
71
68
|
- lib/searchgasm/condition/greater_than.rb
|
@@ -74,7 +71,13 @@ extra_rdoc_files:
|
|
74
71
|
- lib/searchgasm/condition/keywords.rb
|
75
72
|
- lib/searchgasm/condition/less_than.rb
|
76
73
|
- lib/searchgasm/condition/less_than_or_equal_to.rb
|
74
|
+
- lib/searchgasm/condition/like.rb
|
77
75
|
- lib/searchgasm/condition/nil.rb
|
76
|
+
- lib/searchgasm/condition/not_begin_with.rb
|
77
|
+
- lib/searchgasm/condition/not_end_with.rb
|
78
|
+
- lib/searchgasm/condition/not_equal.rb
|
79
|
+
- lib/searchgasm/condition/not_have_keywords.rb
|
80
|
+
- lib/searchgasm/condition/not_like.rb
|
78
81
|
- lib/searchgasm/condition/sibling_of.rb
|
79
82
|
- lib/searchgasm/condition/tree.rb
|
80
83
|
- lib/searchgasm/conditions/base.rb
|
@@ -89,6 +92,41 @@ extra_rdoc_files:
|
|
89
92
|
- lib/searchgasm/helpers/control_types/select.rb
|
90
93
|
- lib/searchgasm/helpers/form.rb
|
91
94
|
- lib/searchgasm/helpers/utilities.rb
|
95
|
+
- lib/searchgasm/modifiers/absolute.rb
|
96
|
+
- lib/searchgasm/modifiers/acos.rb
|
97
|
+
- lib/searchgasm/modifiers/asin.rb
|
98
|
+
- lib/searchgasm/modifiers/atan.rb
|
99
|
+
- lib/searchgasm/modifiers/base.rb
|
100
|
+
- lib/searchgasm/modifiers/ceil.rb
|
101
|
+
- lib/searchgasm/modifiers/char_length.rb
|
102
|
+
- lib/searchgasm/modifiers/cos.rb
|
103
|
+
- lib/searchgasm/modifiers/cot.rb
|
104
|
+
- lib/searchgasm/modifiers/day_of_month.rb
|
105
|
+
- lib/searchgasm/modifiers/day_of_week.rb
|
106
|
+
- lib/searchgasm/modifiers/day_of_year.rb
|
107
|
+
- lib/searchgasm/modifiers/degrees.rb
|
108
|
+
- lib/searchgasm/modifiers/exp.rb
|
109
|
+
- lib/searchgasm/modifiers/floor.rb
|
110
|
+
- lib/searchgasm/modifiers/hex.rb
|
111
|
+
- lib/searchgasm/modifiers/hour.rb
|
112
|
+
- lib/searchgasm/modifiers/log.rb
|
113
|
+
- lib/searchgasm/modifiers/log10.rb
|
114
|
+
- lib/searchgasm/modifiers/log2.rb
|
115
|
+
- lib/searchgasm/modifiers/md5.rb
|
116
|
+
- lib/searchgasm/modifiers/microseconds.rb
|
117
|
+
- lib/searchgasm/modifiers/milliseconds.rb
|
118
|
+
- lib/searchgasm/modifiers/minute.rb
|
119
|
+
- lib/searchgasm/modifiers/month.rb
|
120
|
+
- lib/searchgasm/modifiers/octal.rb
|
121
|
+
- lib/searchgasm/modifiers/radians.rb
|
122
|
+
- lib/searchgasm/modifiers/round.rb
|
123
|
+
- lib/searchgasm/modifiers/second.rb
|
124
|
+
- lib/searchgasm/modifiers/sign.rb
|
125
|
+
- lib/searchgasm/modifiers/sin.rb
|
126
|
+
- lib/searchgasm/modifiers/square_root.rb
|
127
|
+
- lib/searchgasm/modifiers/tan.rb
|
128
|
+
- lib/searchgasm/modifiers/week.rb
|
129
|
+
- lib/searchgasm/modifiers/year.rb
|
92
130
|
- lib/searchgasm/search/base.rb
|
93
131
|
- lib/searchgasm/search/conditions.rb
|
94
132
|
- lib/searchgasm/search/ordering.rb
|
@@ -114,10 +152,7 @@ files:
|
|
114
152
|
- lib/searchgasm/condition/begins_with.rb
|
115
153
|
- lib/searchgasm/condition/blank.rb
|
116
154
|
- lib/searchgasm/condition/child_of.rb
|
117
|
-
- lib/searchgasm/condition/contains.rb
|
118
155
|
- lib/searchgasm/condition/descendant_of.rb
|
119
|
-
- lib/searchgasm/condition/does_not_equal.rb
|
120
|
-
- lib/searchgasm/condition/during_evening.rb
|
121
156
|
- lib/searchgasm/condition/ends_with.rb
|
122
157
|
- lib/searchgasm/condition/equals.rb
|
123
158
|
- lib/searchgasm/condition/greater_than.rb
|
@@ -126,7 +161,13 @@ files:
|
|
126
161
|
- lib/searchgasm/condition/keywords.rb
|
127
162
|
- lib/searchgasm/condition/less_than.rb
|
128
163
|
- lib/searchgasm/condition/less_than_or_equal_to.rb
|
164
|
+
- lib/searchgasm/condition/like.rb
|
129
165
|
- lib/searchgasm/condition/nil.rb
|
166
|
+
- lib/searchgasm/condition/not_begin_with.rb
|
167
|
+
- lib/searchgasm/condition/not_end_with.rb
|
168
|
+
- lib/searchgasm/condition/not_equal.rb
|
169
|
+
- lib/searchgasm/condition/not_have_keywords.rb
|
170
|
+
- lib/searchgasm/condition/not_like.rb
|
130
171
|
- lib/searchgasm/condition/sibling_of.rb
|
131
172
|
- lib/searchgasm/condition/tree.rb
|
132
173
|
- lib/searchgasm/conditions/base.rb
|
@@ -141,6 +182,41 @@ files:
|
|
141
182
|
- lib/searchgasm/helpers/control_types/select.rb
|
142
183
|
- lib/searchgasm/helpers/form.rb
|
143
184
|
- lib/searchgasm/helpers/utilities.rb
|
185
|
+
- lib/searchgasm/modifiers/absolute.rb
|
186
|
+
- lib/searchgasm/modifiers/acos.rb
|
187
|
+
- lib/searchgasm/modifiers/asin.rb
|
188
|
+
- lib/searchgasm/modifiers/atan.rb
|
189
|
+
- lib/searchgasm/modifiers/base.rb
|
190
|
+
- lib/searchgasm/modifiers/ceil.rb
|
191
|
+
- lib/searchgasm/modifiers/char_length.rb
|
192
|
+
- lib/searchgasm/modifiers/cos.rb
|
193
|
+
- lib/searchgasm/modifiers/cot.rb
|
194
|
+
- lib/searchgasm/modifiers/day_of_month.rb
|
195
|
+
- lib/searchgasm/modifiers/day_of_week.rb
|
196
|
+
- lib/searchgasm/modifiers/day_of_year.rb
|
197
|
+
- lib/searchgasm/modifiers/degrees.rb
|
198
|
+
- lib/searchgasm/modifiers/exp.rb
|
199
|
+
- lib/searchgasm/modifiers/floor.rb
|
200
|
+
- lib/searchgasm/modifiers/hex.rb
|
201
|
+
- lib/searchgasm/modifiers/hour.rb
|
202
|
+
- lib/searchgasm/modifiers/log.rb
|
203
|
+
- lib/searchgasm/modifiers/log10.rb
|
204
|
+
- lib/searchgasm/modifiers/log2.rb
|
205
|
+
- lib/searchgasm/modifiers/md5.rb
|
206
|
+
- lib/searchgasm/modifiers/microseconds.rb
|
207
|
+
- lib/searchgasm/modifiers/milliseconds.rb
|
208
|
+
- lib/searchgasm/modifiers/minute.rb
|
209
|
+
- lib/searchgasm/modifiers/month.rb
|
210
|
+
- lib/searchgasm/modifiers/octal.rb
|
211
|
+
- lib/searchgasm/modifiers/radians.rb
|
212
|
+
- lib/searchgasm/modifiers/round.rb
|
213
|
+
- lib/searchgasm/modifiers/second.rb
|
214
|
+
- lib/searchgasm/modifiers/sign.rb
|
215
|
+
- lib/searchgasm/modifiers/sin.rb
|
216
|
+
- lib/searchgasm/modifiers/square_root.rb
|
217
|
+
- lib/searchgasm/modifiers/tan.rb
|
218
|
+
- lib/searchgasm/modifiers/week.rb
|
219
|
+
- lib/searchgasm/modifiers/year.rb
|
144
220
|
- lib/searchgasm/search/base.rb
|
145
221
|
- lib/searchgasm/search/conditions.rb
|
146
222
|
- lib/searchgasm/search/ordering.rb
|
@@ -160,6 +236,7 @@ files:
|
|
160
236
|
- test/fixtures/user_groups.yml
|
161
237
|
- test/fixtures/users.yml
|
162
238
|
- test/libs/acts_as_tree.rb
|
239
|
+
- test/libs/ordered_hash.rb
|
163
240
|
- test/libs/rexml_fix.rb
|
164
241
|
- test/test_active_record_associations.rb
|
165
242
|
- test/test_active_record_base.rb
|
data/test/test_condition_base.rb
CHANGED
@@ -1,53 +1,38 @@
|
|
1
1
|
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
2
|
|
3
3
|
class TestConditionBase < Test::Unit::TestCase
|
4
|
-
def
|
5
|
-
assert_equal "equals", Searchgasm::Condition::Equals.
|
6
|
-
assert_equal "keywords", Searchgasm::Condition::Keywords.
|
7
|
-
assert_equal "greater_than_or_equal_to", Searchgasm::Condition::GreaterThanOrEqualTo.
|
4
|
+
def test_condition_type_name
|
5
|
+
assert_equal "equals", Searchgasm::Condition::Equals.condition_type_name
|
6
|
+
assert_equal "keywords", Searchgasm::Condition::Keywords.condition_type_name
|
7
|
+
assert_equal "greater_than_or_equal_to", Searchgasm::Condition::GreaterThanOrEqualTo.condition_type_name
|
8
8
|
end
|
9
9
|
|
10
|
-
def
|
11
|
-
|
12
|
-
|
10
|
+
def test_ignore_meaningless_value?
|
11
|
+
assert !Searchgasm::Condition::Equals.ignore_meaningless_value?
|
12
|
+
assert Searchgasm::Condition::Keywords.ignore_meaningless_value?
|
13
|
+
assert !Searchgasm::Condition::NotEqual.ignore_meaningless_value?
|
13
14
|
end
|
14
15
|
|
15
|
-
def
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
def test_type_cast_sql_type
|
22
|
-
assert_equal nil, Searchgasm::Condition::Equals.type_cast_sql_type
|
23
|
-
assert_equal nil, Searchgasm::Condition::Keywords.type_cast_sql_type
|
24
|
-
assert_equal "boolean", Searchgasm::Condition::Nil.type_cast_sql_type
|
25
|
-
assert_equal "boolean", Searchgasm::Condition::Blank.type_cast_sql_type
|
26
|
-
assert_equal nil, Searchgasm::Condition::GreaterThan.type_cast_sql_type
|
27
|
-
end
|
28
|
-
|
29
|
-
def test_string_column
|
30
|
-
assert !Searchgasm::Condition::Base.string_column?(Account.columns_hash["id"])
|
31
|
-
assert Searchgasm::Condition::Base.string_column?(Account.columns_hash["name"])
|
32
|
-
assert !Searchgasm::Condition::Base.string_column?(Account.columns_hash["active"])
|
33
|
-
assert Searchgasm::Condition::Base.string_column?(User.columns_hash["bio"])
|
34
|
-
end
|
35
|
-
|
36
|
-
def test_comparable_column
|
37
|
-
assert Searchgasm::Condition::Base.comparable_column?(Account.columns_hash["id"])
|
38
|
-
assert !Searchgasm::Condition::Base.comparable_column?(Account.columns_hash["name"])
|
39
|
-
assert !Searchgasm::Condition::Base.comparable_column?(Account.columns_hash["active"])
|
40
|
-
assert !Searchgasm::Condition::Base.comparable_column?(User.columns_hash["bio"])
|
41
|
-
assert Searchgasm::Condition::Base.comparable_column?(Order.columns_hash["total"])
|
16
|
+
def test_value_type
|
17
|
+
assert_equal nil, Searchgasm::Condition::Equals.value_type
|
18
|
+
assert_equal nil, Searchgasm::Condition::Keywords.value_type
|
19
|
+
assert_equal :boolean, Searchgasm::Condition::Nil.value_type
|
20
|
+
assert_equal :boolean, Searchgasm::Condition::Blank.value_type
|
21
|
+
assert_equal nil, Searchgasm::Condition::GreaterThan.value_type
|
42
22
|
end
|
43
23
|
|
44
24
|
def test_initialize
|
45
25
|
condition = Searchgasm::Condition::Keywords.new(Account, Account.columns_hash["name"])
|
46
26
|
assert_equal condition.klass, Account
|
47
|
-
assert_equal
|
27
|
+
assert_equal Account.columns_hash["name"], condition.column
|
48
28
|
|
49
29
|
condition = Searchgasm::Condition::GreaterThan.new(Account, "id")
|
50
|
-
assert_equal
|
30
|
+
assert_equal Account.columns_hash["id"], condition.column
|
31
|
+
|
32
|
+
condition = Searchgasm::Condition::GreaterThan.new(Account, "id", :string, "some sql")
|
33
|
+
assert_equal Account.columns_hash["id"], condition.column
|
34
|
+
condition.value = "awesome"
|
35
|
+
assert_equal ["some sql > ?", "awesome"], condition.sanitize
|
51
36
|
end
|
52
37
|
|
53
38
|
def test_explicitly_set_value
|
@@ -57,17 +42,6 @@ class TestConditionBase < Test::Unit::TestCase
|
|
57
42
|
assert condition.explicitly_set_value?
|
58
43
|
end
|
59
44
|
|
60
|
-
def test_name
|
61
|
-
condition = Searchgasm::Condition::Keywords.new(Account, Account.columns_hash["name"])
|
62
|
-
assert_equal "name_keywords", condition.name
|
63
|
-
|
64
|
-
condition = Searchgasm::Condition::DescendantOf.new(User)
|
65
|
-
assert_equal "descendant_of", condition.name
|
66
|
-
|
67
|
-
condition = Searchgasm::Condition::DescendantOf.new(Account)
|
68
|
-
assert_equal nil, condition.name
|
69
|
-
end
|
70
|
-
|
71
45
|
def test_sanitize
|
72
46
|
# This is tested thoroughly in test_condition_types
|
73
47
|
end
|