hstore_flags 0.1.0 → 0.2.0

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.
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
  gemspec
3
3
 
4
4
  gem 'activerecord', '~>3.0'
data/Gemfile.lock CHANGED
@@ -1,104 +1,45 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- hstore_flags (0.0.4)
5
- activerecord (~> 3.0)
6
- activerecord-postgres-hstore (~> 0.4)
4
+ hstore_flags (0.2.0)
5
+ activerecord (~> 3.1)
6
+ activerecord-postgres-hstore (~> 0.7.5)
7
7
 
8
8
  GEM
9
- remote: http://rubygems.org/
9
+ remote: https://rubygems.org/
10
10
  specs:
11
- actionmailer (3.2.9)
12
- actionpack (= 3.2.9)
13
- mail (~> 2.4.4)
14
- actionpack (3.2.9)
15
- activemodel (= 3.2.9)
16
- activesupport (= 3.2.9)
11
+ activemodel (3.2.13)
12
+ activesupport (= 3.2.13)
17
13
  builder (~> 3.0.0)
18
- erubis (~> 2.7.0)
19
- journey (~> 1.0.4)
20
- rack (~> 1.4.0)
21
- rack-cache (~> 1.2)
22
- rack-test (~> 0.6.1)
23
- sprockets (~> 2.2.1)
24
- activemodel (3.2.9)
25
- activesupport (= 3.2.9)
26
- builder (~> 3.0.0)
27
- activerecord (3.2.9)
28
- activemodel (= 3.2.9)
29
- activesupport (= 3.2.9)
14
+ activerecord (3.2.13)
15
+ activemodel (= 3.2.13)
16
+ activesupport (= 3.2.13)
30
17
  arel (~> 3.0.2)
31
18
  tzinfo (~> 0.3.29)
32
- activerecord-postgres-hstore (0.4.1)
33
- pg
34
- rails
19
+ activerecord-postgres-hstore (0.7.6)
20
+ activerecord (>= 3.1)
21
+ pg-hstore (>= 1.1.5)
35
22
  rake
36
- activeresource (3.2.9)
37
- activemodel (= 3.2.9)
38
- activesupport (= 3.2.9)
39
- activesupport (3.2.9)
40
- i18n (~> 0.6)
23
+ activesupport (3.2.13)
24
+ i18n (= 0.6.1)
41
25
  multi_json (~> 1.0)
42
26
  arel (3.0.2)
43
27
  builder (3.0.4)
44
- diff-lcs (1.1.3)
45
- erubis (2.7.0)
46
- hike (1.2.1)
28
+ diff-lcs (1.2.4)
47
29
  i18n (0.6.1)
48
- journey (1.0.4)
49
- json (1.7.5)
50
- mail (2.4.4)
51
- i18n (>= 0.4.0)
52
- mime-types (~> 1.16)
53
- treetop (~> 1.4.8)
54
- mime-types (1.19)
55
- multi_json (1.3.7)
56
- pg (0.14.1)
57
- polyglot (0.3.3)
58
- rack (1.4.1)
59
- rack-cache (1.2)
60
- rack (>= 0.4)
61
- rack-ssl (1.3.2)
62
- rack
63
- rack-test (0.6.2)
64
- rack (>= 1.0)
65
- rails (3.2.9)
66
- actionmailer (= 3.2.9)
67
- actionpack (= 3.2.9)
68
- activerecord (= 3.2.9)
69
- activeresource (= 3.2.9)
70
- activesupport (= 3.2.9)
71
- bundler (~> 1.0)
72
- railties (= 3.2.9)
73
- railties (3.2.9)
74
- actionpack (= 3.2.9)
75
- activesupport (= 3.2.9)
76
- rack-ssl (~> 1.3.2)
77
- rake (>= 0.8.7)
78
- rdoc (~> 3.4)
79
- thor (>= 0.14.6, < 2.0)
80
- rake (10.0.2)
81
- rdoc (3.12)
82
- json (~> 1.4)
83
- rspec (2.12.0)
84
- rspec-core (~> 2.12.0)
85
- rspec-expectations (~> 2.12.0)
86
- rspec-mocks (~> 2.12.0)
87
- rspec-core (2.12.0)
88
- rspec-expectations (2.12.0)
89
- diff-lcs (~> 1.1.3)
90
- rspec-mocks (2.12.0)
91
- sprockets (2.2.1)
92
- hike (~> 1.2)
93
- multi_json (~> 1.0)
94
- rack (~> 1.0)
95
- tilt (~> 1.1, != 1.3.0)
96
- thor (0.16.0)
97
- tilt (1.3.3)
98
- treetop (1.4.12)
99
- polyglot
100
- polyglot (>= 0.3.1)
101
- tzinfo (0.3.35)
30
+ multi_json (1.7.3)
31
+ pg (0.15.1)
32
+ pg-hstore (1.1.7)
33
+ rake (10.0.4)
34
+ rspec (2.13.0)
35
+ rspec-core (~> 2.13.0)
36
+ rspec-expectations (~> 2.13.0)
37
+ rspec-mocks (~> 2.13.0)
38
+ rspec-core (2.13.1)
39
+ rspec-expectations (2.13.0)
40
+ diff-lcs (>= 1.1.3, < 2.0)
41
+ rspec-mocks (2.13.1)
42
+ tzinfo (0.3.37)
102
43
 
103
44
  PLATFORMS
104
45
  ruby
@@ -1,3 +1,3 @@
1
1
  module HStoreFlags
2
- Version = VERSION = "0.1.0"
2
+ Version = VERSION = "0.2.0"
3
3
  end
data/lib/hstore_flags.rb CHANGED
@@ -38,9 +38,11 @@ module HStoreFlags
38
38
  serialize field, ActiveRecord::Coders::Hstore
39
39
 
40
40
  args.each do |flag|
41
- define_method("#{flag}") {(self[field] || {})[flag.to_s] == "true"}
42
- define_method("#{flag}?") {(self[field] || {})[flag.to_s] == "true"}
43
- define_method("#{flag}=") {|val| set_hstore_flag_field(field, flag, val)}
41
+ define_method("#{flag}") {(self[field] || {})[flag.to_s] == "true"}
42
+ define_method("#{flag}?") {(self[field] || {})[flag.to_s] == "true"}
43
+ define_method("not_#{flag}") {(self[field] || {})[flag.to_s] != "true"}
44
+ define_method("not_#{flag}?") {(self[field] || {})[flag.to_s] != "true"}
45
+ define_method("#{flag}=") {|val| set_hstore_flag_field(field, flag, val)}
44
46
 
45
47
  unless opts[:scopes] == false
46
48
  scope "#{flag}", where("defined(#{table_field}, '#{flag}') IS TRUE")
@@ -22,6 +22,10 @@ describe HStoreFlags do
22
22
  expect(u.fighter?).to eq(true)
23
23
  expect(u.lover).to eq(false)
24
24
  expect(u.lover?).to eq(false)
25
+ expect(u.not_fighter).to eq(false)
26
+ expect(u.not_fighter?).to eq(false)
27
+ expect(u.not_lover).to eq(true)
28
+ expect(u.not_lover?).to eq(true)
25
29
  end
26
30
 
27
31
  it "creates scopes without scopes: false" do
metadata CHANGED
@@ -1,82 +1,86 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: hstore_flags
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 1
8
- - 0
9
- version: 0.1.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Zachery Hostens
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2013-03-12 00:00:00 -05:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2013-05-07 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: activerecord
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- requirements:
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
25
19
  - - ~>
26
- - !ruby/object:Gem::Version
27
- segments:
28
- - 3
29
- - 1
30
- version: "3.1"
20
+ - !ruby/object:Gem::Version
21
+ version: '3.1'
31
22
  type: :runtime
32
- version_requirements: *id001
33
- - !ruby/object:Gem::Dependency
34
- name: activerecord-postgres-hstore
35
23
  prerelease: false
36
- requirement: &id002 !ruby/object:Gem::Requirement
37
- requirements:
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
38
27
  - - ~>
39
- - !ruby/object:Gem::Version
40
- segments:
41
- - 0
42
- - 7
43
- - 5
28
+ - !ruby/object:Gem::Version
29
+ version: '3.1'
30
+ - !ruby/object:Gem::Dependency
31
+ name: activerecord-postgres-hstore
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
44
37
  version: 0.7.5
45
38
  type: :runtime
46
- version_requirements: *id002
47
- - !ruby/object:Gem::Dependency
48
- name: rspec
49
39
  prerelease: false
50
- requirement: &id003 !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- segments:
55
- - 0
56
- version: "0"
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 0.7.5
46
+ - !ruby/object:Gem::Dependency
47
+ name: rspec
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
57
54
  type: :development
58
- version_requirements: *id003
59
- - !ruby/object:Gem::Dependency
60
- name: pg
61
55
  prerelease: false
62
- requirement: &id004 !ruby/object:Gem::Requirement
63
- requirements:
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- segments:
67
- - 0
68
- version: "0"
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: pg
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
69
70
  type: :development
70
- version_requirements: *id004
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
71
78
  description:
72
79
  email: zachery.hostens@countrystone.com
73
80
  executables: []
74
-
75
81
  extensions: []
76
-
77
82
  extra_rdoc_files: []
78
-
79
- files:
83
+ files:
80
84
  - .gitignore
81
85
  - Gemfile
82
86
  - Gemfile.lock
@@ -88,35 +92,35 @@ files:
88
92
  - spec/database.rb
89
93
  - spec/hstore_flags_spec.rb
90
94
  - spec/spec_helper.rb
91
- has_rdoc: true
92
95
  homepage: https://github.com/infinitysw/hstore_flags
93
- licenses:
96
+ licenses:
94
97
  - MIT
95
98
  post_install_message:
96
99
  rdoc_options: []
97
-
98
- require_paths:
100
+ require_paths:
99
101
  - lib
100
- required_ruby_version: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- segments:
102
+ required_ruby_version: !ruby/object:Gem::Requirement
103
+ none: false
104
+ requirements:
105
+ - - ! '>='
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ segments:
105
109
  - 0
106
- version: "0"
107
- required_rubygems_version: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- segments:
110
+ hash: 2479143759331100119
111
+ required_rubygems_version: !ruby/object:Gem::Requirement
112
+ none: false
113
+ requirements:
114
+ - - ! '>='
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ segments:
112
118
  - 0
113
- version: "0"
119
+ hash: 2479143759331100119
114
120
  requirements: []
115
-
116
121
  rubyforge_project:
117
- rubygems_version: 1.3.6
122
+ rubygems_version: 1.8.23
118
123
  signing_key:
119
124
  specification_version: 3
120
125
  summary: Store many boolean flags in an hstore column in PostgreSQL
121
126
  test_files: []
122
-