simple_flaggable_column 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b85577a3634dae66307e60d277336bcc50e9fa8c
4
- data.tar.gz: 627f79aa1e5e2354fc7f855f20a9b8160b9c8e6a
3
+ metadata.gz: 5519375f06815a7e44b9158d7c775fc9008c2d6a
4
+ data.tar.gz: e72384692c2244b58e966e9df850d398cb526c0f
5
5
  SHA512:
6
- metadata.gz: 2b13f6be90bf09d96f52feffdb6475a6a29607233b98e6ac1d30474af450b01fe8d97a169916fdc392bb38a7465eef355845a3d8bc563c94a8b2377ee5cc2def
7
- data.tar.gz: 781d196b0c8fa2326beb1defc35df4d5515ab1c0cde50519b11f3453a0ecf91c608985ba93e22118b25909f687599eb958b3ebf4d215d405df5967b2fa2db1a8
6
+ metadata.gz: 10cd8c9d6d416277da37f339be37e875427b8ee76ecb86c53eda34cfb152e7ed96a0da5f4228d6a492db2cde6b998c6ca1afd8f018d5e8808fe656641041e0ce
7
+ data.tar.gz: d726167cc47139e3e9a4e98b30527b02f3814043cd6e909020893c40b4dd8901979d265e9007157dc93499b7e2d72e640fe60f0bf7e2555e1b06e940603d4433
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2015 Zequez
1
+ Copyright (c) 2016 Zequez
2
2
 
3
3
  MIT License
4
4
 
data/Rakefile ADDED
@@ -0,0 +1,7 @@
1
+ require 'bundler/setup'
2
+ require 'bundler/gem_tasks'
3
+ require 'rspec/core/rake_task'
4
+
5
+ RSpec::Core::RakeTask.new(:spec)
6
+
7
+ task :default => :spec
@@ -1,3 +1,3 @@
1
1
  module SimpleFlaggableColumn
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -17,12 +17,12 @@ Gem::Specification.new do |spec|
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ['lib']
19
19
 
20
- spec.add_dependency 'activesupport', '~> 4.2'
20
+ spec.add_dependency 'activesupport', '>= 5.0'
21
21
 
22
22
  spec.add_development_dependency 'bundler', '~> 1.7'
23
23
  spec.add_development_dependency 'rake', '~> 10.0'
24
- spec.add_development_dependency 'with_model', '~> 1.2'
25
24
  spec.add_development_dependency 'sqlite3', '~> 1.3'
26
25
  spec.add_development_dependency 'guard', '~> 2.13'
27
26
  spec.add_development_dependency 'guard-rspec', '~> 4.6'
27
+ spec.add_development_dependency 'activerecord', '>= 5.0'
28
28
  end
@@ -1,10 +1,16 @@
1
1
  describe SimpleFlaggableColumn do
2
- with_model :GameModel do
3
- table do |t|
4
- t.integer :platforms, default: 0, null: false
2
+ before :all do
3
+ class Migration < ActiveRecord::Migration[5.0]
4
+ def change
5
+ create_table :games do |t|
6
+ t.integer :platforms, default: 0, null: false
7
+ end
8
+ end
5
9
  end
6
10
 
7
- model do
11
+ Migration.new.migrate(:up)
12
+
13
+ class Game < ActiveRecord::Base
8
14
  include SimpleFlaggableColumn
9
15
 
10
16
  flag_column :platforms, {
@@ -16,25 +22,25 @@ describe SimpleFlaggableColumn do
16
22
  end
17
23
 
18
24
  it 'should be empty by default' do
19
- expect(GameModel.new.platforms).to eq []
25
+ expect(Game.new.platforms).to eq []
20
26
  end
21
27
 
22
28
  it 'should let you save data' do
23
- game = GameModel.new
29
+ game = Game.new
24
30
  game.platforms = [:mac, :linux]
25
31
  expect(game.read_attribute(:platforms)).to eq 0b110
26
32
  expect(game.platforms).to match_array [:mac, :linux]
27
33
  end
28
34
 
29
35
  it "should ignore items that aren't on the list" do
30
- game = GameModel.new
36
+ game = Game.new
31
37
  game.platforms = [:mac, :linux, :potato]
32
38
  expect(game.read_attribute(:platforms)).to eq 0b110
33
39
  expect(game.platforms).to match_array [:mac, :linux]
34
40
  end
35
41
 
36
42
  it 'should set the value to 0 when nil' do
37
- game = GameModel.new
43
+ game = Game.new
38
44
  game.platforms = [:mac, :linux]
39
45
  expect(game.platforms).to eq [:mac, :linux]
40
46
  game.platforms = nil
@@ -42,14 +48,14 @@ describe SimpleFlaggableColumn do
42
48
  end
43
49
 
44
50
  it 'should allow you to set numeric values directly' do
45
- game = GameModel.new
51
+ game = Game.new
46
52
  game.platforms = 0b101
47
53
  expect(game.platforms).to eq [:win, :linux]
48
54
  end
49
55
 
50
56
  describe 'flags lists' do
51
57
  it 'should define the list of flags' do
52
- expect(GameModel.platforms_flags).to eq({
58
+ expect(Game.platforms_flags).to eq({
53
59
  win: 0b001,
54
60
  mac: 0b010,
55
61
  linux: 0b100
@@ -57,11 +63,11 @@ describe SimpleFlaggableColumn do
57
63
  end
58
64
 
59
65
  it 'should let you get a join list of flags' do
60
- expect(GameModel.platforms_flags(:win, :linux)).to eq 0b101
66
+ expect(Game.platforms_flags(:win, :linux)).to eq 0b101
61
67
  end
62
68
 
63
69
  it 'should define the reverse list of flags' do
64
- expect(GameModel.flags_platforms).to eq({
70
+ expect(Game.flags_platforms).to eq({
65
71
  0b001 => :win,
66
72
  0b010 => :mac,
67
73
  0b100 => :linux
data/spec/spec_helper.rb CHANGED
@@ -1,12 +1,10 @@
1
1
  require 'simple_flaggable_column'
2
- require 'with_model'
2
+ require 'active_record'
3
3
 
4
4
  ActiveRecord::Base.establish_connection adapter: 'sqlite3', database: ':memory:'
5
5
  ActiveRecord::Migration.verbose = false
6
6
 
7
7
  RSpec.configure do |config|
8
- config.extend WithModel
9
-
10
8
  config.expect_with :rspec do |expectations|
11
9
  # Default in RSpec 4
12
10
  expectations.include_chain_clauses_in_custom_matcher_descriptions = true
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_flaggable_column
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zequez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-02 00:00:00.000000000 Z
11
+ date: 2016-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.2'
19
+ version: '5.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '4.2'
26
+ version: '5.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '10.0'
55
- - !ruby/object:Gem::Dependency
56
- name: with_model
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '1.2'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '1.2'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: sqlite3
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -108,6 +94,20 @@ dependencies:
108
94
  - - "~>"
109
95
  - !ruby/object:Gem::Version
110
96
  version: '4.6'
97
+ - !ruby/object:Gem::Dependency
98
+ name: activerecord
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '5.0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '5.0'
111
111
  description: This gem adds a concern to allow you to use binary flags columns in ActiveRecord
112
112
  models
113
113
  email:
@@ -122,6 +122,7 @@ files:
122
122
  - Guardfile
123
123
  - LICENSE.txt
124
124
  - README.md
125
+ - Rakefile
125
126
  - lib/simple_flaggable_column.rb
126
127
  - lib/simple_flaggable_column/version.rb
127
128
  - simple_flaggable_column.gemspec
@@ -147,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
148
  version: '0'
148
149
  requirements: []
149
150
  rubyforge_project:
150
- rubygems_version: 2.4.5
151
+ rubygems_version: 2.5.1
151
152
  signing_key:
152
153
  specification_version: 4
153
154
  summary: Simple binary flags columns