scopy 0.0.3 → 0.0.4
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 +4 -4
- data/README.md +2 -2
- data/lib/scopy/version.rb +1 -1
- metadata +9 -36
- data/.gitignore +0 -4
- data/.ruby-version +0 -1
- data/.travis.yml +0 -5
- data/Gemfile +0 -7
- data/Rakefile +0 -10
- data/scopy.gemspec +0 -30
- data/test/created_at_scopes_test.rb +0 -75
- data/test/id_scopes_test.rb +0 -47
- data/test/name_scopes_test.rb +0 -45
- data/test/test_helper.rb +0 -25
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a1dcd49c17a0fa36a85a93d90abdc132501ccd92
|
|
4
|
+
data.tar.gz: 8823ea2a318d43ca8795f1bb379efbf7bce64f7b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8864748257ce167933f37a4dc138631ef55c8b721a3848859331316c13a3a572fe29550aff6c61e3ee57928f111d8431fac2071999e4b5066505fa8ae998e89f
|
|
7
|
+
data.tar.gz: 5d555b3a7e9620668fb0f84a0bbbcd04025fd2fd4d8384655fc5c7df598ab0c6e630f194639c41a3c3e1ec1ac8071b95d893363f78ab96261c4510401928d33a
|
data/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Scopy
|
|
2
2
|
|
|
3
|
-
[](http://rubygems.org/gems/scopy)
|
|
4
|
+
[](https://travis-ci.org/neighborland/scopy)
|
|
5
5
|
|
|
6
6
|
Scopy provides common ActiveRecord utility scopes as ActiveSupport model concerns.
|
|
7
7
|
|
data/lib/scopy/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: scopy
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tee Parham
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2015-01-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -52,34 +52,20 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '10.1'
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: minitest
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '4.7'
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '4.7'
|
|
69
55
|
- !ruby/object:Gem::Dependency
|
|
70
56
|
name: mocha
|
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
|
72
58
|
requirements:
|
|
73
59
|
- - "~>"
|
|
74
60
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '0
|
|
61
|
+
version: '1.0'
|
|
76
62
|
type: :development
|
|
77
63
|
prerelease: false
|
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
65
|
requirements:
|
|
80
66
|
- - "~>"
|
|
81
67
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '0
|
|
68
|
+
version: '1.0'
|
|
83
69
|
- !ruby/object:Gem::Dependency
|
|
84
70
|
name: sqlite3
|
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -94,30 +80,20 @@ dependencies:
|
|
|
94
80
|
- - "~>"
|
|
95
81
|
- !ruby/object:Gem::Version
|
|
96
82
|
version: '1.3'
|
|
97
|
-
description: Rails ActiveRecord
|
|
83
|
+
description: Rails ActiveRecord scopes for id, created_at, and name
|
|
98
84
|
email:
|
|
99
85
|
- tee@neighborland.com
|
|
100
86
|
executables: []
|
|
101
87
|
extensions: []
|
|
102
88
|
extra_rdoc_files: []
|
|
103
89
|
files:
|
|
104
|
-
- ".gitignore"
|
|
105
|
-
- ".ruby-version"
|
|
106
|
-
- ".travis.yml"
|
|
107
|
-
- Gemfile
|
|
108
90
|
- LICENSE.txt
|
|
109
91
|
- README.md
|
|
110
|
-
- Rakefile
|
|
111
92
|
- lib/scopy.rb
|
|
112
93
|
- lib/scopy/created_at_scopes.rb
|
|
113
94
|
- lib/scopy/id_scopes.rb
|
|
114
95
|
- lib/scopy/name_scopes.rb
|
|
115
96
|
- lib/scopy/version.rb
|
|
116
|
-
- scopy.gemspec
|
|
117
|
-
- test/created_at_scopes_test.rb
|
|
118
|
-
- test/id_scopes_test.rb
|
|
119
|
-
- test/name_scopes_test.rb
|
|
120
|
-
- test/test_helper.rb
|
|
121
97
|
homepage: https://github.com/neighborland/scopy
|
|
122
98
|
licenses:
|
|
123
99
|
- MIT
|
|
@@ -138,12 +114,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
138
114
|
version: '0'
|
|
139
115
|
requirements: []
|
|
140
116
|
rubyforge_project:
|
|
141
|
-
rubygems_version: 2.
|
|
117
|
+
rubygems_version: 2.4.5
|
|
142
118
|
signing_key:
|
|
143
119
|
specification_version: 4
|
|
144
|
-
summary: Rails ActiveRecord
|
|
145
|
-
test_files:
|
|
146
|
-
|
|
147
|
-
- test/id_scopes_test.rb
|
|
148
|
-
- test/name_scopes_test.rb
|
|
149
|
-
- test/test_helper.rb
|
|
120
|
+
summary: Rails ActiveRecord scopes for id, created_at, and name
|
|
121
|
+
test_files: []
|
|
122
|
+
has_rdoc:
|
data/.gitignore
DELETED
data/.ruby-version
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
ruby-2.1.0
|
data/.travis.yml
DELETED
data/Gemfile
DELETED
data/Rakefile
DELETED
data/scopy.gemspec
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require 'scopy/version'
|
|
5
|
-
|
|
6
|
-
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name = "scopy"
|
|
8
|
-
spec.version = Scopy::VERSION
|
|
9
|
-
spec.authors = ["Tee Parham"]
|
|
10
|
-
spec.email = ["tee@neighborland.com"]
|
|
11
|
-
spec.description = %q{Rails ActiveRecord model concerns for common scopes}
|
|
12
|
-
spec.summary = %q{Rails ActiveRecord common utility scopes for id, created_at, and name}
|
|
13
|
-
spec.homepage = "https://github.com/neighborland/scopy"
|
|
14
|
-
spec.license = "MIT"
|
|
15
|
-
|
|
16
|
-
spec.files = `git ls-files`.split($/)
|
|
17
|
-
spec.executables = []
|
|
18
|
-
spec.test_files = spec.files.grep(%r{^(test)/})
|
|
19
|
-
spec.require_paths = ["lib"]
|
|
20
|
-
|
|
21
|
-
spec.required_ruby_version = ">= 1.9.3"
|
|
22
|
-
|
|
23
|
-
spec.add_dependency "activerecord", ">= 3.2"
|
|
24
|
-
|
|
25
|
-
spec.add_development_dependency "bundler", "~> 1.3"
|
|
26
|
-
spec.add_development_dependency "rake", "~> 10.1"
|
|
27
|
-
spec.add_development_dependency "minitest", "~> 4.7"
|
|
28
|
-
spec.add_development_dependency "mocha", "~> 0.14"
|
|
29
|
-
spec.add_development_dependency "sqlite3", "~> 1.3"
|
|
30
|
-
end
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
class CreatedAtScopesTest < MiniTest::Spec
|
|
4
|
-
class Dog < ActiveRecord::Base
|
|
5
|
-
include Scopy::CreatedAtScopes
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
before do
|
|
9
|
-
@boo = Dog.create(created_at: 1.week.ago)
|
|
10
|
-
@snoop = Dog.create(created_at: 1.day.ago)
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
after do
|
|
14
|
-
Dog.delete_all
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
describe ".newest" do
|
|
18
|
-
it "sorts newest first" do
|
|
19
|
-
assert_equal @snoop, Dog.newest.first
|
|
20
|
-
assert_equal @boo, Dog.newest.last
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
describe ".oldest" do
|
|
25
|
-
it "sorts oldest first" do
|
|
26
|
-
assert_equal @boo, Dog.oldest.first
|
|
27
|
-
assert_equal @snoop, Dog.oldest.last
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
describe ".created_since" do
|
|
32
|
-
it "includes since date" do
|
|
33
|
-
assert Dog.created_since(2.days.ago).include?(@snoop)
|
|
34
|
-
refute Dog.created_since(2.days.ago).include?(@boo)
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
describe ".created_before" do
|
|
39
|
-
it "includes before date" do
|
|
40
|
-
refute Dog.created_before(2.days.ago).include?(@snoop)
|
|
41
|
-
assert Dog.created_before(2.days.ago).include?(@boo)
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
describe ".created_between" do
|
|
46
|
-
it "includes between dates" do
|
|
47
|
-
assert Dog.created_between(2.days.ago, Time.now).include?(@snoop)
|
|
48
|
-
refute Dog.created_between(2.days.ago, Time.now).include?(@boo)
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
describe ".created_on_day" do
|
|
53
|
-
it "includes on day" do
|
|
54
|
-
assert Dog.created_since(2.days.ago).include?(@snoop)
|
|
55
|
-
refute Dog.created_since(2.days.ago).include?(@boo)
|
|
56
|
-
end
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
describe ".created_in_week" do
|
|
60
|
-
it "includes in week" do
|
|
61
|
-
lassie = Dog.create(created_at: 1.month.ago)
|
|
62
|
-
assert Dog.created_in_week(1.day.ago).include?(@snoop)
|
|
63
|
-
refute Dog.created_in_week(1.day.ago).include?(lassie)
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
describe ".created_in_month" do
|
|
68
|
-
it "includes in month" do
|
|
69
|
-
lassie = Dog.create(created_at: 2.months.ago)
|
|
70
|
-
assert Dog.created_in_month(1.day.ago).include?(@snoop)
|
|
71
|
-
refute Dog.created_in_month(1.day.ago).include?(lassie)
|
|
72
|
-
end
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
end
|
data/test/id_scopes_test.rb
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
class IdScopesTest < MiniTest::Spec
|
|
4
|
-
class Dog < ActiveRecord::Base
|
|
5
|
-
include Scopy::IdScopes
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
before do
|
|
9
|
-
@dog = Dog.create
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
after do
|
|
13
|
-
Dog.delete_all
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
describe ".excluding_id" do
|
|
17
|
-
it "excludes" do
|
|
18
|
-
assert_empty Dog.excluding_id(@dog.id)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
it "does not exclude" do
|
|
22
|
-
assert_equal [@dog], Dog.excluding_id(@dog.id + 1)
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
describe ".excluding_ids" do
|
|
27
|
-
it "excludes" do
|
|
28
|
-
assert_empty Dog.excluding_ids([@dog.id])
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
it "does not exclude" do
|
|
32
|
-
assert_equal [@dog], Dog.excluding_ids([@dog.id + 1])
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
describe ".excluding" do
|
|
37
|
-
it "excludes" do
|
|
38
|
-
assert_empty Dog.excluding(@dog)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
it "does not exclude" do
|
|
42
|
-
snoop = Dog.create
|
|
43
|
-
assert_equal [@dog], Dog.excluding(snoop)
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
end
|
data/test/name_scopes_test.rb
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
class NameScopesTest < MiniTest::Spec
|
|
4
|
-
class Dog < ActiveRecord::Base
|
|
5
|
-
include Scopy::NameScopes
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
before do
|
|
9
|
-
@dog = Dog.create(name: "Snoop Dogg")
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
after do
|
|
13
|
-
Dog.delete_all
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
describe ".name_like" do
|
|
17
|
-
it "finds case sensitive" do
|
|
18
|
-
assert Dog.name_like("Dog", case_sensitive: true).include?(@dog)
|
|
19
|
-
assert_empty Dog.name_like("cat", case_sensitive: true)
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
it "finds with quotes" do
|
|
23
|
-
o_dogg = Dog.create(name: "Snoop O'Doggly")
|
|
24
|
-
assert Dog.name_like("O'Dogg").include?(o_dogg)
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
it "finds case insensitive" do
|
|
28
|
-
assert Dog.name_like("doG").include?(@dog)
|
|
29
|
-
assert_empty Dog.name_like("cat")
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
describe ".name_starts_with" do
|
|
34
|
-
it "finds case sensitive" do
|
|
35
|
-
assert Dog.name_starts_with("Snoop", case_sensitive: true).include?(@dog)
|
|
36
|
-
assert_empty Dog.name_starts_with("Dogg", case_sensitive: true)
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
it "finds case insensitive" do
|
|
40
|
-
assert Dog.name_starts_with("snOOp").include?(@dog)
|
|
41
|
-
assert_empty Dog.name_starts_with("dogg")
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
end
|
data/test/test_helper.rb
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
require 'coveralls'
|
|
2
|
-
Coveralls.wear!
|
|
3
|
-
|
|
4
|
-
require 'minitest/autorun'
|
|
5
|
-
require 'mocha/setup'
|
|
6
|
-
require 'active_support'
|
|
7
|
-
require 'active_record'
|
|
8
|
-
require 'sqlite3'
|
|
9
|
-
require 'scopy'
|
|
10
|
-
|
|
11
|
-
ActiveRecord::Base.logger = Logger.new(STDERR) if ENV["VERBOSE"]
|
|
12
|
-
|
|
13
|
-
ActiveRecord::Base.establish_connection(
|
|
14
|
-
adapter: "sqlite3",
|
|
15
|
-
database: ":memory:"
|
|
16
|
-
)
|
|
17
|
-
|
|
18
|
-
unless ActiveRecord::Base.connection.tables.include? 'dogs'
|
|
19
|
-
ActiveRecord::Schema.define do
|
|
20
|
-
create_table :dogs do |table|
|
|
21
|
-
table.column :created_at, :datetime
|
|
22
|
-
table.column :name, :string
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|