ruby_simple_search 0.0.2 → 0.0.3
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.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/README.md +19 -13
- data/lib/ruby_simple_search/errors.rb +2 -1
- data/lib/ruby_simple_search/version.rb +1 -1
- data/lib/ruby_simple_search.rb +18 -17
- data/ruby_simple_search.gemspec +1 -0
- data/spec/user_spec.rb +69 -49
- metadata +18 -28
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 59d86037e8eb49bbae2c3be8a4b0f55176ba87d4
|
4
|
+
data.tar.gz: 408a98859b92881a23bd375d118006929a905adf
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: bd03396c4c5b6cbd0f90ad3e0edd9ec9c5c99f34cce9653e8396c3efc03631ab3a000c82e4746f03c9245b0428502c268a7fe5fabc747ad52172addfcb69f408
|
7
|
+
data.tar.gz: 7fbc374a919f6141f3186da99d1083faa3c4749365bcf65ce94a487537719d3c20dd6a256bbc33811a4a883b1dde39fda020dc925c0664f921b724f94b2f7a45
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -3,8 +3,8 @@
|
|
3
3
|
RubySimpleSearch allows you to search on the table fields (string and text fields)
|
4
4
|
very easily.
|
5
5
|
|
6
|
-
Mostly on the admin side, we do have a common text field to search the
|
7
|
-
|
6
|
+
Mostly on the admin side, we do have a common text field to search the data on the
|
7
|
+
table.
|
8
8
|
|
9
9
|
Sometimes we want to do a search on the title, content and ratings on the post model or
|
10
10
|
email, username and description on the user model. For those searches we use MySQL's
|
@@ -13,27 +13,33 @@ on the different models you actually add lots of duplication in your code.
|
|
13
13
|
|
14
14
|
To avoid duplicating the same code, use RubySimpleSearch :)
|
15
15
|
|
16
|
+
#### Version 0.0.3 changes:
|
17
|
+
- 'LIKE' pattern is more flexible now. Now you can pass pattern on ```simple_search```
|
18
|
+
method directly. Pattern support on the ```simple_search_attributes``` method has been removed
|
19
|
+
- Fixed column ambiguous error when used with the joins
|
20
|
+
|
21
|
+
|
16
22
|
#### RubySimpleSearch Features:
|
17
|
-
- Added
|
23
|
+
- Added 'LIKE' pattern support ('beginning', 'ending', 'containing', 'underscore', 'plain').
|
18
24
|
By default pattern is 'containing'
|
19
25
|
|
20
26
|
```Ruby
|
21
|
-
|
27
|
+
Post.simple_search('york', :pattern => :ending)
|
22
28
|
# It will search like '%york'
|
23
29
|
|
24
|
-
|
30
|
+
Post.simple_search('york', :pattern => :begining)
|
25
31
|
# It will search like 'york%'
|
26
32
|
|
27
|
-
|
33
|
+
Post.simple_search('york', :pattern => :containing)
|
28
34
|
# It will search like '%york%'
|
29
35
|
|
30
|
-
|
36
|
+
Post.simple_search('o', :pattern => :underscore)
|
31
37
|
# It will search like '_o_'
|
32
38
|
|
33
|
-
|
39
|
+
Post.simple_search('yourk', :pattern => :plain)
|
34
40
|
# It will search like 'york'
|
35
41
|
```
|
36
|
-
- Added **block** support to simple_search method, so user can extend the query as per
|
42
|
+
- Added **block** support to ```simple_search``` method, so user can extend the query as per
|
37
43
|
his/her requirements (Now you can operate on the integer/decimal values also)
|
38
44
|
|
39
45
|
- Added specs
|
@@ -62,7 +68,7 @@ Define attributes that you want to search through RubySimpleSearch
|
|
62
68
|
class Post < ActiveActiveRecord::Base
|
63
69
|
include RubySimpleSearch
|
64
70
|
|
65
|
-
simple_search_attributes :title, :description
|
71
|
+
simple_search_attributes :title, :description
|
66
72
|
end
|
67
73
|
```
|
68
74
|
```Ruby
|
@@ -72,11 +78,11 @@ class User < ActiveActiveRecord::Base
|
|
72
78
|
simple_search_attributes :email, :username, :address
|
73
79
|
end
|
74
80
|
```
|
75
|
-
While defining simple_search_attributes
|
81
|
+
While defining ```simple_search_attributes```, don't add integer/decimal data
|
76
82
|
attributes to it, instead of this you can do integer/decimal operation
|
77
|
-
by passing block to
|
83
|
+
by passing block to ```simple_search``` method
|
78
84
|
```Ruby
|
79
|
-
Post.simple_search('tuto')
|
85
|
+
Post.simple_search('tuto', :pattern => :begining)
|
80
86
|
# => posts which have 'tuto%' text in the title or in the description fields
|
81
87
|
```
|
82
88
|
```Ruby
|
@@ -1,10 +1,11 @@
|
|
1
1
|
require "ruby_simple_search/errors"
|
2
2
|
|
3
3
|
module RubySimpleSearch
|
4
|
-
module
|
4
|
+
module Errors
|
5
5
|
ATTRIBUTES_MISSING = "Simple search attributes are missing"
|
6
6
|
INVALID_TYPE = "Extended query is not an array type"
|
7
7
|
INVALID_CONDITION = "Extended query's array conditions are wrong"
|
8
8
|
INVALID_PATTERN = "Pattern is wrong. it should be in the list #{RubySimpleSearch::LIKE_PATTERNS.keys}"
|
9
|
+
WROG_ATTRIBUTES = "simple_search_arguments method's arguments should be in symbol format"
|
9
10
|
end
|
10
11
|
end
|
data/lib/ruby_simple_search.rb
CHANGED
@@ -10,23 +10,19 @@ module RubySimpleSearch
|
|
10
10
|
class_eval do
|
11
11
|
def self.simple_search_attributes(*args)
|
12
12
|
@simple_search_attributes = []
|
13
|
-
# default pattern is '%q%'
|
14
|
-
@simple_search_pattern = RubySimpleSearch::LIKE_PATTERNS[:containing]
|
15
13
|
args.each do |arg|
|
16
|
-
|
17
|
-
|
18
|
-
else
|
19
|
-
set_pattern(arg[:pattern]) if arg[:pattern].present?
|
20
|
-
end
|
14
|
+
raise ArgumentError, RubySimpleSearch::Errors::WROG_ATTRIBUTES unless arg.is_a? Symbol
|
15
|
+
@simple_search_attributes << arg
|
21
16
|
end
|
22
17
|
end
|
23
18
|
end
|
24
19
|
end
|
25
20
|
|
26
21
|
module ClassMethods
|
27
|
-
def simple_search(search_term, &block)
|
28
|
-
raise RubySimpleSearch::
|
22
|
+
def simple_search(search_term, options={}, &block)
|
23
|
+
raise RubySimpleSearch::Errors::ATTRIBUTES_MISSING if @simple_search_attributes.blank?
|
29
24
|
raise ArgumentError, "Argument is not string" unless search_term.is_a? String
|
25
|
+
set_pattern(options[:pattern])
|
30
26
|
|
31
27
|
sql_query = nil
|
32
28
|
extended_query = nil
|
@@ -52,24 +48,29 @@ module RubySimpleSearch
|
|
52
48
|
end
|
53
49
|
sql_query = [sql_query_condition, sql_query_values]
|
54
50
|
|
55
|
-
where(sql_query.
|
51
|
+
where(sql_query.flatten)
|
56
52
|
end
|
57
53
|
|
58
54
|
private
|
59
55
|
|
60
56
|
def set_pattern(pattern)
|
61
|
-
|
62
|
-
|
63
|
-
|
57
|
+
if pattern.nil?
|
58
|
+
# default pattern is '%q%'
|
59
|
+
@simple_search_pattern = RubySimpleSearch::LIKE_PATTERNS[:containing]
|
60
|
+
else
|
61
|
+
pattern = RubySimpleSearch::LIKE_PATTERNS[pattern.to_sym]
|
62
|
+
raise RubySimpleSearch::Errors::INVALID_PATTERN if pattern.nil?
|
63
|
+
@simple_search_pattern = pattern
|
64
|
+
end
|
64
65
|
end
|
65
66
|
|
66
67
|
def extend_simple_search(extended_query, sql_query_condition, sql_query_values)
|
67
|
-
raise RubySimpleSearch::
|
68
|
+
raise RubySimpleSearch::Errors::INVALID_TYPE unless extended_query.is_a?(Array)
|
68
69
|
extended_query_condition = extended_query[0]
|
69
70
|
extended_query_values = extended_query - [extended_query[0]]
|
70
71
|
|
71
72
|
if extended_query_condition.count('?') != (extended_query_values.size)
|
72
|
-
raise RubySimpleSearch::
|
73
|
+
raise RubySimpleSearch::Errors::INVALID_CONDITION
|
73
74
|
end
|
74
75
|
|
75
76
|
sql_query_condition = [sql_query_condition, extended_query_condition].join(' ')
|
@@ -79,8 +80,8 @@ module RubySimpleSearch
|
|
79
80
|
end
|
80
81
|
|
81
82
|
def set_sql_query_condition(attr, sql_query_condition)
|
82
|
-
return "LOWER(#{attr.to_s}) LIKE ?" if sql_query_condition.blank?
|
83
|
-
" OR LOWER(#{attr.to_s}) LIKE ?"
|
83
|
+
return "LOWER(#{self.table_name}.#{attr.to_s}) LIKE ?" if sql_query_condition.blank?
|
84
|
+
" OR LOWER(#{self.table_name}.#{attr.to_s}) LIKE ?"
|
84
85
|
end
|
85
86
|
|
86
87
|
end
|
data/ruby_simple_search.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.add_dependency "activerecord", ">= 3.0.0"
|
17
17
|
gem.add_dependency "sqlite3"
|
18
18
|
gem.add_development_dependency "rspec"
|
19
|
+
gem.required_ruby_version = ">= 1.9.2"
|
19
20
|
|
20
21
|
gem.files = `git ls-files`.split($/)
|
21
22
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
data/spec/user_spec.rb
CHANGED
@@ -2,56 +2,59 @@ require 'spec_helper'
|
|
2
2
|
require_relative "../spec/lib/user.rb"
|
3
3
|
require_relative "../spec/lib/user2.rb"
|
4
4
|
|
5
|
-
describe User
|
6
|
-
|
5
|
+
describe 'User' do
|
7
6
|
describe ".simple_search_attributes" do
|
8
|
-
|
9
|
-
|
10
|
-
expect { User2.simple_search('usa') }.to raise_error(RubySimpleSearch::Error::ATTRIBUTES_MISSING)
|
11
|
-
end
|
12
|
-
|
13
|
-
it "sets simple_search_attributes" do
|
14
|
-
User2.simple_search_attributes :name, :contact
|
15
|
-
expect(User2.instance_variable_get("@simple_search_attributes")).to eq([:name, :contact])
|
16
|
-
end
|
17
|
-
|
18
|
-
it "has default pattern" do
|
19
|
-
User2.simple_search_attributes :name, :contact
|
20
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('%q%')
|
21
|
-
end
|
22
|
-
|
23
|
-
it "can have patterns like plain, beginning, ending, containing and underscore" do
|
24
|
-
User2.simple_search_attributes :name, :contact, :pattern => :plain
|
25
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('q')
|
26
|
-
User2.simple_search_attributes :name, :contact, :pattern => :beginning
|
27
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('q%')
|
28
|
-
User2.simple_search_attributes :name, :contact, :pattern => :ending
|
29
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('%q')
|
30
|
-
User2.simple_search_attributes :name, :contact, :pattern => :containing
|
31
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('%q%')
|
32
|
-
User2.simple_search_attributes :name, :contact, :pattern => :underscore
|
33
|
-
expect(User2.instance_variable_get("@simple_search_pattern")).to eq('_q_')
|
7
|
+
it "sets attributes" do
|
8
|
+
expect(User.instance_variable_get("@simple_search_attributes")).to eq([:name, :email, :contact, :address])
|
34
9
|
end
|
35
10
|
|
36
|
-
it "
|
37
|
-
expect{
|
11
|
+
it "does not return an exception if simple_search_attributes is not called while loading the model" do
|
12
|
+
expect { User.simple_search('usa') }.to_not raise_error(RubySimpleSearch::Errors::ATTRIBUTES_MISSING)
|
38
13
|
end
|
39
14
|
end
|
40
15
|
|
41
16
|
describe ".simple_search" do
|
42
|
-
context "
|
43
|
-
it "searches users whose
|
17
|
+
context "without block" do
|
18
|
+
it "searches users whose names are 'alice'" do
|
44
19
|
user = User.find_by_name('alice')
|
45
20
|
users = User.simple_search('alice')
|
46
21
|
users.should include(user)
|
47
22
|
end
|
48
23
|
|
24
|
+
it "has default 'LIKE' pattern" do
|
25
|
+
User.find_by_name('alice')
|
26
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('%q%')
|
27
|
+
end
|
28
|
+
|
29
|
+
it "can have 'LIKE' patterns like plain, beginning, ending, containing and underscore" do
|
30
|
+
User.simple_search('alice', pattern: :plain)
|
31
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('q')
|
32
|
+
User.simple_search('al', pattern: :beginning)
|
33
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('q%')
|
34
|
+
User.simple_search('alice', pattern: :ending)
|
35
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('%q')
|
36
|
+
User.simple_search('alice', pattern: :containing)
|
37
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('%q%')
|
38
|
+
User.simple_search('alice', pattern: :underscore)
|
39
|
+
expect(User.instance_variable_get("@simple_search_pattern")).to eq('_q_')
|
40
|
+
end
|
41
|
+
|
42
|
+
it "raises an exception if pattern is wrong" do
|
43
|
+
expect{ User.simple_search('alice', pattern: 'wrong') }.to raise_error(RubySimpleSearch::Errors::INVALID_PATTERN)
|
44
|
+
end
|
45
|
+
|
46
|
+
it "searches users whose names are 'alice' with beginning pattern" do
|
47
|
+
user = User.find_by_name('alice')
|
48
|
+
users = User.simple_search('al', { pattern: :beginning })
|
49
|
+
users.should include(user)
|
50
|
+
end
|
51
|
+
|
49
52
|
it "returns empty records if contact number does not exist" do
|
50
53
|
users = User.simple_search('343434')
|
51
54
|
users.should be_empty
|
52
55
|
end
|
53
56
|
|
54
|
-
it "searches user records if
|
57
|
+
it "searches user records if users belong to 'USA'" do
|
55
58
|
users = User.where(:address => 'usa')
|
56
59
|
searched_users = User.simple_search('usa')
|
57
60
|
expect(users.to_a).to eq(searched_users.to_a)
|
@@ -59,54 +62,71 @@ describe User do
|
|
59
62
|
|
60
63
|
it "searches the records with beginning pattern" do
|
61
64
|
users = User.where("name like ?", 'bo%')
|
62
|
-
User.simple_search_attributes :name, :contact, :address
|
63
|
-
searched_users = User.simple_search('bo')
|
65
|
+
User.simple_search_attributes :name, :contact, :address
|
66
|
+
searched_users = User.simple_search('bo', pattern: :beginning)
|
64
67
|
expect(users.count).to eq(searched_users.count)
|
65
68
|
end
|
66
69
|
|
67
70
|
it "searches the records with ending pattern" do
|
68
71
|
users = User.where("name like ?", '%ce')
|
69
|
-
User.simple_search_attributes :name, :contact, :address
|
70
|
-
searched_users = User.simple_search('ce')
|
72
|
+
User.simple_search_attributes :name, :contact, :address
|
73
|
+
searched_users = User.simple_search('ce', pattern: :ending)
|
71
74
|
expect(users.count).to eq(searched_users.count)
|
72
75
|
end
|
73
76
|
|
74
77
|
it "searches the records with underscore pattern" do
|
75
78
|
users = User.where("name like ?", 'ce')
|
76
|
-
User.simple_search_attributes :name, :contact, :address
|
77
|
-
searched_users = User.simple_search('ce')
|
79
|
+
User.simple_search_attributes :name, :contact, :address
|
80
|
+
searched_users = User.simple_search('ce', pattern: :underscore)
|
78
81
|
expect(users.count).to eq(searched_users.count)
|
79
82
|
end
|
80
83
|
|
81
84
|
it "searches the records with plain pattern" do
|
82
85
|
users = User.where("name like ?", 'bob')
|
83
|
-
User.simple_search_attributes :name, :contact, :address
|
84
|
-
searched_users = User.simple_search('bob')
|
86
|
+
User.simple_search_attributes :name, :contact, :address
|
87
|
+
searched_users = User.simple_search('bob', pattern: :plain)
|
85
88
|
expect(users.count).to eq(searched_users.count)
|
86
89
|
end
|
87
90
|
end
|
88
91
|
|
89
|
-
context "
|
90
|
-
it "returns users who live in usa and their age
|
91
|
-
User.simple_search_attributes :name, :contact, :address
|
92
|
+
context "with block" do
|
93
|
+
it "returns users who live in usa and their age should be greater than 50" do
|
94
|
+
User.simple_search_attributes :name, :contact, :address
|
92
95
|
users = User.where(:age => 60)
|
93
|
-
searched_users = User.simple_search('usa') do |search_term|
|
96
|
+
searched_users = User.simple_search('usa', pattern: :plain) do |search_term|
|
94
97
|
['AND age > ?', 50]
|
95
98
|
end
|
96
99
|
expect(users.to_a).to eq(searched_users.to_a)
|
97
100
|
end
|
98
101
|
|
99
|
-
it "returns exception if array condition is wrong in simple_search block" do
|
102
|
+
it "returns an exception if array condition is wrong in simple_search block" do
|
100
103
|
expect{ User.simple_search('usa') do |search_term|
|
101
104
|
['AND age > ?', 50, 60]
|
102
|
-
end }.to raise_error(RubySimpleSearch::
|
105
|
+
end }.to raise_error(RubySimpleSearch::Errors::INVALID_CONDITION)
|
103
106
|
end
|
104
107
|
|
105
|
-
it "returns exception if return value is not an array type" do
|
108
|
+
it "returns an exception if return value is not an array type" do
|
106
109
|
expect{ User.simple_search('usa') do |search_term|
|
107
110
|
"Wrong return"
|
108
|
-
end }.to raise_error(RubySimpleSearch::
|
111
|
+
end }.to raise_error(RubySimpleSearch::Errors::INVALID_TYPE)
|
109
112
|
end
|
110
113
|
end
|
111
114
|
end
|
112
115
|
end
|
116
|
+
|
117
|
+
describe User2 do
|
118
|
+
describe ".simple_search_attributes" do
|
119
|
+
it "returns an exception if simple_search_attributes method is not called while loading the model" do
|
120
|
+
expect { User2.simple_search('usa') }.to raise_error(RubySimpleSearch::Errors::ATTRIBUTES_MISSING)
|
121
|
+
end
|
122
|
+
|
123
|
+
it "returns an exception if simple_search_attributes method has wrong attribute type" do
|
124
|
+
expect { User2.simple_search_attributes :name, '24' }.to raise_error(RubySimpleSearch::Errors::WROG_ATTRIBUTES)
|
125
|
+
end
|
126
|
+
|
127
|
+
it "sets attributes if simple_search_attributes method is called on the model" do
|
128
|
+
User2.simple_search_attributes :name, :contact
|
129
|
+
expect(User2.instance_variable_get("@simple_search_attributes")).to eq([:name, :contact])
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
metadata
CHANGED
@@ -1,78 +1,69 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_simple_search
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.3
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Santosh Wadghule
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-03-30 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: activesupport
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: 3.0.0
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: 3.0.0
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: activerecord
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: 3.0.0
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: 3.0.0
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: sqlite3
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rspec
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - ">="
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: '0'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - ">="
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '0'
|
78
69
|
description: It will search on the attributes that you provided to simple_search_attributes
|
@@ -83,8 +74,8 @@ executables: []
|
|
83
74
|
extensions: []
|
84
75
|
extra_rdoc_files: []
|
85
76
|
files:
|
86
|
-
- .gitignore
|
87
|
-
- .rspec
|
77
|
+
- ".gitignore"
|
78
|
+
- ".rspec"
|
88
79
|
- Gemfile
|
89
80
|
- LICENSE.txt
|
90
81
|
- README.md
|
@@ -100,27 +91,26 @@ files:
|
|
100
91
|
- spec/user_spec.rb
|
101
92
|
homepage: https://github.com/mechanicles/ruby_simple_search
|
102
93
|
licenses: []
|
94
|
+
metadata: {}
|
103
95
|
post_install_message:
|
104
96
|
rdoc_options: []
|
105
97
|
require_paths:
|
106
98
|
- lib
|
107
99
|
required_ruby_version: !ruby/object:Gem::Requirement
|
108
|
-
none: false
|
109
100
|
requirements:
|
110
|
-
- -
|
101
|
+
- - ">="
|
111
102
|
- !ruby/object:Gem::Version
|
112
|
-
version:
|
103
|
+
version: 1.9.2
|
113
104
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
|
-
none: false
|
115
105
|
requirements:
|
116
|
-
- -
|
106
|
+
- - ">="
|
117
107
|
- !ruby/object:Gem::Version
|
118
108
|
version: '0'
|
119
109
|
requirements: []
|
120
110
|
rubyforge_project:
|
121
|
-
rubygems_version:
|
111
|
+
rubygems_version: 2.2.0
|
122
112
|
signing_key:
|
123
|
-
specification_version:
|
113
|
+
specification_version: 4
|
124
114
|
summary: Ruby simple search for ActiveRecord
|
125
115
|
test_files:
|
126
116
|
- spec/lib/user.rb
|