rails_scopy 0.1.0 → 0.1.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8eba4ca1306ea319ae7a383f2ab5d94253b86efa80e5856b91f171e14a9ad33b
4
- data.tar.gz: 0ef250f4f325879b03b4262007d68587d5ccf2d0bfb50efd4a78ecf95692c906
3
+ metadata.gz: bc63e93f38c5caf4d65548e0b427b6cefd9726baba3b3b9bca883cf522994c84
4
+ data.tar.gz: fc818f63f4916fa62ef388a8c842226346da24561423a9c0e9098e907cd60013
5
5
  SHA512:
6
- metadata.gz: 04e594bbd1b428bb53b81f01bca1c71475d2138b7186cd287a0f442a79d608b1185f743926f94ba58f820db6cff119ad8df92a83ad7f59cb50e6c6498a932c4c
7
- data.tar.gz: e5823686f0831ef31920cea5586f4cbcbc53346ce93598bd1cc64e0b27c33aec9508fcb3cb443f3bb1910c2ee7e073cf0cc7d9041b562e31c3bf538b2640c123
6
+ metadata.gz: e355a4ce4669960be6c726039a1bedf8cda7203e87c2df010f6d0827a31750cd9939c6c33ca557b5fc5e3e2c8d4b343c2027d6723bf8cb6235db8b095dbf4327
7
+ data.tar.gz: 54fc32791a37b0752a2e96f6519a5cd21415411405c23758e01c6d774854af4464b98aee95335e2992f4412352afd7f689e9c0aa25f76176861d2aef4b4a34f9
data/.coveralls.yml ADDED
@@ -0,0 +1,2 @@
1
+ service_name: travis-pro
2
+ repo_token: wgq7163EGaFM6rLnic0lSIoXDhpCYRS9o
data/.travis.yml CHANGED
@@ -8,10 +8,9 @@ rvm:
8
8
  - 2.5.5
9
9
  - 2.6.3
10
10
  gemfile:
11
- - gemfiles/Gemfile-4-2
12
11
  - gemfiles/Gemfile-5-2
13
12
  - gemfiles/Gemfile-6-0
14
- before_install: gem install bundler -v 2.1.0
13
+ before_install: gem install bundler
15
14
  before_script:
16
15
  - bundle install
17
16
  - psql -c 'create database rails_scopy;' -U postgres
data/Gemfile.lock CHANGED
@@ -2,17 +2,17 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  rails_scopy (0.1.0)
5
- activerecord (>= 4.2, < 7)
5
+ activerecord (>= 5.2, < 7)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (6.0.2.1)
11
- activesupport (= 6.0.2.1)
12
- activerecord (6.0.2.1)
13
- activemodel (= 6.0.2.1)
14
- activesupport (= 6.0.2.1)
15
- activesupport (6.0.2.1)
10
+ activemodel (6.0.2.2)
11
+ activesupport (= 6.0.2.2)
12
+ activerecord (6.0.2.2)
13
+ activemodel (= 6.0.2.2)
14
+ activesupport (= 6.0.2.2)
15
+ activesupport (6.0.2.2)
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
17
  i18n (>= 0.7, < 2)
18
18
  minitest (~> 5.1)
@@ -27,21 +27,21 @@ GEM
27
27
  tins (~> 1.6)
28
28
  diff-lcs (1.3)
29
29
  docile (1.3.2)
30
- faker (2.10.2)
30
+ faker (2.11.0)
31
31
  i18n (>= 1.6, < 2)
32
32
  i18n (1.8.2)
33
33
  concurrent-ruby (~> 1.0)
34
34
  json (2.3.0)
35
35
  minitest (5.14.0)
36
- pg (1.2.2)
37
- rake (10.5.0)
36
+ pg (1.2.3)
37
+ rake (13.0.1)
38
38
  rspec (3.9.0)
39
39
  rspec-core (~> 3.9.0)
40
40
  rspec-expectations (~> 3.9.0)
41
41
  rspec-mocks (~> 3.9.0)
42
42
  rspec-core (3.9.1)
43
43
  rspec-support (~> 3.9.1)
44
- rspec-expectations (3.9.0)
44
+ rspec-expectations (3.9.1)
45
45
  diff-lcs (>= 1.2.0, < 2.0)
46
46
  rspec-support (~> 3.9.0)
47
47
  rspec-mocks (3.9.1)
@@ -62,7 +62,7 @@ GEM
62
62
  sync
63
63
  tzinfo (1.2.6)
64
64
  thread_safe (~> 0.1)
65
- zeitwerk (2.2.2)
65
+ zeitwerk (2.3.0)
66
66
 
67
67
  PLATFORMS
68
68
  ruby
@@ -73,7 +73,7 @@ DEPENDENCIES
73
73
  faker (~> 2.10)
74
74
  pg (~> 1.2)
75
75
  rails_scopy!
76
- rake (~> 10.0)
76
+ rake (~> 13.0)
77
77
  rspec (~> 3.0)
78
78
  simplecov (~> 0.16)
79
79
 
data/README.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # RailsScopy
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/rails_scopy.svg)](https://badge.fury.io/rb/rails_scopy)
4
+ [![Maintainability](https://api.codeclimate.com/v1/badges/79cdc15c16da15562c25/maintainability)](https://codeclimate.com/github/OpenGems/rails_scopy/maintainability)
5
+ [![Build Status](https://travis-ci.org/OpenGems/rails_scopy.svg?branch=master)](https://travis-ci.org/OpenGems/rails_scopy)
6
+ [![security](https://hakiri.io/github/OpenGems/rails_scopy/master.svg)](https://hakiri.io/github/OpenGems/rails_scopy/master)
7
+ ![Gem](https://img.shields.io/gem/dt/rails_scopy)
8
+ [![Coverage Status](https://coveralls.io/repos/github/OpenGems/rails_scopy/badge.svg?branch=master)](https://coveralls.io/github/OpenGems/rails_scopy?branch=master)
9
+
3
10
  Generate automatically scopes in your model (PostgreSQL, SQLite, MySQL, etc...)
4
11
 
5
12
  ## Installation
@@ -20,7 +27,68 @@ Or install it yourself as:
20
27
 
21
28
  ## Usage
22
29
 
23
- TODO: Write usage instructions here
30
+ Include ```RailsScopy``` in each models
31
+
32
+ ```ruby
33
+ class User < ApplicationRecord
34
+ include RailsScopy
35
+ end
36
+ ```
37
+
38
+ or in the parent model
39
+
40
+ ```ruby
41
+ class ApplicationRecord < ActiveRecord::Base
42
+ include RailsScopy
43
+ end
44
+ ```
45
+
46
+ and
47
+
48
+ ```ruby
49
+ User.not_admin
50
+
51
+ User.first_name_contains('Test')
52
+ ```
53
+
54
+
55
+ ### Scopes available
56
+
57
+ | SQL type | Scope method | Description |
58
+ | ------------- | ------------- | ------------- |
59
+ | All | `#{column}_eq(value)` | equal |
60
+ | All | `#{column}_not_eq(value)` | not equal |
61
+ | All | `#{column}_null` | is null |
62
+ | All | `#{column}_not_null` | is not null |
63
+ | All | `#{column}_present` | not null and not empty |
64
+ | All | `#{column}_blank` | null or empty |
65
+ | All | `ascend_by_#{column}` | ascending order |
66
+ | All | `descend_by_#{column}` | descending order |
67
+ | boolean | `#{column}` | true |
68
+ | boolean | `not_#{column}` | false |
69
+ | json | `#{column}_has_key(value)` | key present in json |
70
+ | json | `not_#{column}_has_not_key(value)` | key doesn't present in json |
71
+ | boolean | `#{column}` | true |
72
+ | boolean | `not_#{column}` | false |
73
+ | date, datetime, time | `#{column}_to(value)` | <= to |
74
+ | date, datetime, time | `#{column}_from(value)` | from >= |
75
+ | date, datetime, time | `#{column}_after(value)` | after > |
76
+ | date, datetime, time | `#{column}_before(value)` | < before |
77
+ | date, datetime, time | `#{column}_between(value)` | from >= <= to |
78
+ | string, text | `#{column}_contains(value)` | contains |
79
+ | string, text | `#{column}_not_contains(value)` | doesn't contains |
80
+ | string, text | `#{column}_starts_with(value)` | start with |
81
+ | string, text | `#{column}_not_starts_with(value)` | doesn't start with |
82
+ | string, text | `#{column}_ends_with(value)` | end with |
83
+ | string, text | `#{column}_not_ends_with(value)` | doesn't end with |
84
+ | string, text | `#{column}_length(value)` | length eql |
85
+ | string, text | `#{column}_between_length(value)` | from >= <= to (length) |
86
+ | integer, float | `#{column}_to(value)` | <= to |
87
+ | integer, float | `#{column}_from(value)` | from >= |
88
+ | integer, float | `#{column}_above(value)` | above > |
89
+ | integer, float | `#{column}_below(value)` | < below |
90
+ | integer, float | `#{column}_between(value)` | from >= <= to |
91
+ | float | `#{column}_scale(value)` | scale eql (Number of decimal digits) |
24
92
 
25
93
  ## Contributing
26
94
 
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activerecord', '~> 5.2'
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activerecord', '~> 6.0'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsScopy
4
- VERSION = '0.1.0'
4
+ VERSION = '0.1.1'
5
5
  end
data/rails_scopy.gemspec CHANGED
@@ -26,12 +26,12 @@ Gem::Specification.new do |spec|
26
26
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
27
  spec.require_paths = ['lib']
28
28
 
29
- spec.add_dependency 'activerecord', '>= 4.2', '< 7'
29
+ spec.add_dependency 'activerecord', '>= 5.2', '< 7'
30
30
 
31
31
  spec.add_development_dependency 'bundler', '~> 2.0'
32
32
  spec.add_development_dependency 'coveralls', '~> 0.8'
33
33
  spec.add_development_dependency 'faker', '~> 2.10'
34
- spec.add_development_dependency 'rake', '~> 10.0'
34
+ spec.add_development_dependency 'rake', '~> 13.0'
35
35
  spec.add_development_dependency 'rspec', '~> 3.0'
36
36
  spec.add_development_dependency 'simplecov', '~> 0.16'
37
37
  spec.add_development_dependency 'pg', '~> 1.2'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_scopy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Boris BRESCIANI
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-02-27 00:00:00.000000000 Z
11
+ date: 2020-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.2'
19
+ version: '5.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '7'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '4.2'
29
+ version: '5.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '7'
@@ -78,14 +78,14 @@ dependencies:
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '10.0'
81
+ version: '13.0'
82
82
  type: :development
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '10.0'
88
+ version: '13.0'
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: rspec
91
91
  requirement: !ruby/object:Gem::Requirement
@@ -136,6 +136,7 @@ executables: []
136
136
  extensions: []
137
137
  extra_rdoc_files: []
138
138
  files:
139
+ - ".coveralls.yml"
139
140
  - ".gitignore"
140
141
  - ".rspec"
141
142
  - ".rubocop.yml"
@@ -147,6 +148,8 @@ files:
147
148
  - Rakefile
148
149
  - bin/console
149
150
  - bin/setup
151
+ - gemfiles/Gemfile-5-2
152
+ - gemfiles/Gemfile-6-0
150
153
  - lib/rails_scopy.rb
151
154
  - lib/rails_scopy/version.rb
152
155
  - rails_scopy.gemspec