hstore_flags 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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
-