booleanize 0.5 → 0.6

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.
Files changed (4) hide show
  1. data/README.rdoc +1 -1
  2. data/Rakefile +2 -2
  3. data/lib/booleanize.rb +7 -11
  4. metadata +28 -43
@@ -97,7 +97,7 @@ Just clone the plugin inside <tt>RAILS_ROOT/vendor/plugins</tt>
97
97
 
98
98
  === Rails 3
99
99
 
100
- The 0.4 version and above are suited for use with Rails 3 and are NOT backward compatible with version 0.3
100
+ The 0.5 version and above is suited for use with Rails 3. For previous versions, it will work but you'll get lots of warnings.
101
101
 
102
102
  == Running the tests
103
103
 
data/Rakefile CHANGED
@@ -1,13 +1,13 @@
1
1
  require 'rake'
2
2
  require 'rspec/core/rake_task'
3
- require 'rake/rdoctask'
3
+ require 'rdoc/task'
4
4
 
5
5
  desc 'Default: run unit tests.'
6
6
  task :default => :spec
7
7
 
8
8
  RSpec::Core::RakeTask.new do |t|
9
9
  t.spec_opts = ["--color", "--format", "specdoc"]
10
- end
10
+ end
11
11
 
12
12
  desc 'Generate documentation for the booleanize plugin.'
13
13
  Rake::RDocTask.new(:rdoc) do |rdoc|
@@ -6,9 +6,9 @@
6
6
  # = Description
7
7
  #
8
8
  # Creates two instance methods and two scopes for each of the received boolean attributes.
9
- #
9
+ #
10
10
  # == Instance methods
11
- #
11
+ #
12
12
  # Creates a attr_name_humanize for each boolean attribute, which returns a specific string for each boolean true or false.
13
13
  # Creates a attr_name? method for each boolean attribute.
14
14
  #
@@ -55,9 +55,9 @@ module Booleanize
55
55
 
56
56
  class Config
57
57
  include Singleton
58
-
58
+
59
59
  attr_accessor :default_for_true, :default_for_false
60
-
60
+
61
61
  def self.default_strings(options = {})
62
62
  error = "Wrong configuration parameters for booleanize: You should pass something like {:true => \"Yes\", :false => \"No\" }"
63
63
  raise error unless options.is_a?(Hash) and [:true, :false].all? { |k| options.has_key? k }
@@ -83,22 +83,18 @@ module Booleanize
83
83
 
84
84
  private
85
85
  def create_true_scope(attr_name)
86
- create_scope [attr_name, {:conditions => {attr_name => true}}]
86
+ scope attr_name, lambda { where attr_name => true }
87
87
  end
88
88
 
89
89
  def create_false_scope(attr_name)
90
- create_scope [:"not_#{attr_name}", {:conditions => {attr_name => false}}]
91
- end
92
-
93
- def create_scope(params)
94
- Rails.version > "2.3.8" ? scope(*params) : named_scope(*params)
90
+ scope :"not_#{attr_name}", lambda { where attr_name => false }
95
91
  end
96
92
 
97
93
  def create_humanize_method(attr_name, true_str, false_str)
98
94
  true_str = (true_str.nil? ? (Config.default_for_true.nil? ? "True" : Config.default_for_true) : true_str.to_s)
99
95
  false_str = (false_str.nil? ? (Config.default_for_false.nil? ? "False" : Config.default_for_false) : false_str.to_s)
100
96
  class_eval("def #{attr_name}_humanize; #{attr_name} ? #{true_str.inspect} : #{false_str.inspect}; end")
101
-
97
+
102
98
  end
103
99
 
104
100
  def create_methods(attr_name, true_str = nil, false_str = nil)
metadata CHANGED
@@ -1,32 +1,24 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: booleanize
3
- version: !ruby/object:Gem::Version
4
- hash: 1
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 5
9
- version: "0.5"
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.6'
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
12
- - "C\xC3\xA1ssio Marques"
7
+ authors:
8
+ - Cássio Marques
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2010-09-03 00:00:00 -03:00
18
- default_executable:
12
+ date: 2015-05-10 00:00:00.000000000 Z
19
13
  dependencies: []
20
-
21
- description: A Rails plugin that adds some new methods for boolean attributes in Active Record models.
14
+ description: A Rails plugin that adds some new methods for boolean attributes in Active
15
+ Record models.
22
16
  email: cassiommc@gmail.com
23
17
  executables: []
24
-
25
18
  extensions: []
26
-
27
- extra_rdoc_files:
19
+ extra_rdoc_files:
28
20
  - README.rdoc
29
- files:
21
+ files:
30
22
  - CHANGELOG
31
23
  - MIT-LICENSE
32
24
  - README.rdoc
@@ -35,41 +27,34 @@ files:
35
27
  - lib/booleanize.rb
36
28
  - spec/booleanize_spec.rb
37
29
  - spec/db/create_testing_structure.rb
38
- has_rdoc: true
39
30
  homepage: http://github.com/cassiomarques/booleanize
40
31
  licenses: []
41
-
42
32
  post_install_message:
43
- rdoc_options:
33
+ rdoc_options:
44
34
  - --main
45
35
  - README.rdoc
46
- require_paths:
36
+ require_paths:
47
37
  - lib
48
- required_ruby_version: !ruby/object:Gem::Requirement
38
+ required_ruby_version: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ! '>='
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
49
43
  none: false
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- hash: 3
54
- segments:
55
- - 0
56
- version: "0"
57
- required_rubygems_version: !ruby/object:Gem::Requirement
44
+ required_rubygems_version: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ! '>='
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
58
49
  none: false
59
- requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- hash: 3
63
- segments:
64
- - 0
65
- version: "0"
66
50
  requirements: []
67
-
68
51
  rubyforge_project:
69
- rubygems_version: 1.3.7
52
+ rubygems_version: 1.8.24
70
53
  signing_key:
71
54
  specification_version: 3
72
- summary: A Rails plugin that adds some new methods for boolean attributes in Active Record models.
73
- test_files:
55
+ summary: A Rails plugin that adds some new methods for boolean attributes in Active
56
+ Record models.
57
+ test_files:
74
58
  - spec/booleanize_spec.rb
75
59
  - spec/db/create_testing_structure.rb
60
+ has_rdoc: true