conversions 1.4.5 → 1.4.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.
@@ -1,5 +1,5 @@
1
- ---
2
- :patch: 5
1
+ ---
3
2
  :major: 1
4
- :build:
5
3
  :minor: 4
4
+ :patch: 6
5
+ :build: !!null
@@ -1,59 +1,50 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{conversions}
8
- s.version = "1.4.5"
7
+ s.name = "conversions"
8
+ s.version = "1.4.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Manfred Stienstra", "Seamus Abshere"]
12
- s.date = %q{2010-05-05}
13
- s.description = %q{A Ruby on Rails plugin that adds conversion capabilities to numeric objects}
14
- s.email = %q{seamus@abshere.net}
12
+ s.date = "2012-01-17"
13
+ s.description = "A Ruby on Rails plugin that adds conversion capabilities to numeric objects"
14
+ s.email = "seamus@abshere.net"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README",
18
- "TODO"
17
+ "README",
18
+ "TODO"
19
19
  ]
20
20
  s.files = [
21
- ".gitignore",
22
- "LICENSE",
23
- "README",
24
- "Rakefile",
25
- "TODO",
26
- "VERSION.yml",
27
- "conversions.gemspec",
28
- "lib/conversions.rb",
29
- "lib/conversions/active_record_accessors.rb",
30
- "lib/conversions/defaults.rb",
31
- "lib/conversions/unit.rb",
32
- "test/accessor_test.rb",
33
- "test/conversions_test.rb",
34
- "test/ext_test.rb",
35
- "test/test_helper.rb",
36
- "test/unit_test.rb"
37
- ]
38
- s.homepage = %q{http://github.com/seamusabshere/conversions}
39
- s.rdoc_options = ["--charset=UTF-8", "--line-numbers", "--inline-source"]
40
- s.require_paths = ["lib"]
41
- s.rubyforge_project = %q{conversions}
42
- s.rubygems_version = %q{1.3.6}
43
- s.summary = %q{A Ruby on Rails plugin that adds conversion capabilities to numeric objects}
44
- s.test_files = [
21
+ "LICENSE",
22
+ "README",
23
+ "Rakefile",
24
+ "TODO",
25
+ "VERSION.yml",
26
+ "conversions.gemspec",
27
+ "lib/conversions.rb",
28
+ "lib/conversions/active_record_accessors.rb",
29
+ "lib/conversions/defaults.rb",
30
+ "lib/conversions/unit.rb",
45
31
  "test/accessor_test.rb",
46
- "test/conversions_test.rb",
47
- "test/ext_test.rb",
48
- "test/test_helper.rb",
49
- "test/unit_test.rb"
32
+ "test/conversions_test.rb",
33
+ "test/ext_test.rb",
34
+ "test/test_helper.rb",
35
+ "test/unit_test.rb"
50
36
  ]
37
+ s.homepage = "http://github.com/seamusabshere/conversions"
38
+ s.rdoc_options = ["--line-numbers", "--inline-source"]
39
+ s.require_paths = ["lib"]
40
+ s.rubyforge_project = "conversions"
41
+ s.rubygems_version = "1.8.10"
42
+ s.summary = "A Ruby on Rails plugin that adds conversion capabilities to numeric objects"
51
43
 
52
44
  if s.respond_to? :specification_version then
53
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
54
45
  s.specification_version = 3
55
46
 
56
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
47
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
57
48
  s.add_runtime_dependency(%q<activesupport>, [">= 2.3.4"])
58
49
  else
59
50
  s.add_dependency(%q<activesupport>, [">= 2.3.4"])
@@ -1,10 +1,8 @@
1
1
  require 'active_support'
2
2
  require 'active_support/version'
3
- %w{
4
- active_support/core_ext/module/attribute_accessors
5
- }.each do |active_support_3_requirement|
6
- require active_support_3_requirement
7
- end if ActiveSupport::VERSION::MAJOR == 3
3
+ if ActiveSupport::VERSION::MAJOR >= 3
4
+ require 'active_support/core_ext'
5
+ end
8
6
 
9
7
  # Conversions makes it easy to convert between units.
10
8
  module Conversions
@@ -34,8 +34,8 @@ module Conversions
34
34
  # conversion_accessor :length, :internal => :kilometers, :external => :miles
35
35
  # end
36
36
  def conversion_accessor(attribute, options={})
37
- if options[:internal].nil? or options[:external].nil?
38
- raise ArgumentError, "Please specify both :external and :internal metrics."
37
+ if options[:internal].blank? or options[:external].blank?
38
+ raise ArgumentError, "[conversions] Please specify both :external and :internal metrics."
39
39
  end
40
40
  define_method "#{attribute}_in_#{options[:external]}" do
41
41
  value = send(attribute)
@@ -35,12 +35,12 @@ module Conversions
35
35
  scale.nil? ? value : (value * (10 ** scale)).round / (10 ** scale).to_f
36
36
  end
37
37
 
38
- def self.exchange_rate(from_unit, to_unit) #:nodoc:
39
- return 1 if from_unit == to_unit
40
- from = Conversions.conversions[from_unit]
41
- raise ArgumentError, "Can't convert from `#{from}', unknown unit" if from.nil?
42
- to = from[to_unit]
43
- raise ArgumentError, "Can't convert from `#{from_unit}' to `#{to_unit}', unknown unit" if to.nil?
38
+ def self.exchange_rate(from_unit_name, to_unit_name) #:nodoc:
39
+ return 1 if from_unit_name == to_unit_name
40
+ from = Conversions.conversions[from_unit_name]
41
+ raise ArgumentError, "[conversions] No unit named `#{from_unit_name}'" if from.blank?
42
+ to = from[to_unit_name]
43
+ raise ArgumentError, "[conversions] No exchange rate defined from `#{from_unit_name}' to `#{to_unit_name}'" if to.blank?
44
44
  to
45
45
  end
46
46
  end
@@ -7,7 +7,7 @@ class ConversionsTest < Test::Unit::TestCase
7
7
 
8
8
  def test_register
9
9
  Conversions.register(:records, :cds, 0.47)
10
- assert 2, Conversions.conversions.length
10
+ assert_equal 2, Conversions.conversions.length
11
11
 
12
12
  assert_nothing_raised do
13
13
  1.convert(:records, :cds)
@@ -19,8 +19,8 @@ class ConversionsTest < Test::Unit::TestCase
19
19
 
20
20
  def test_clear
21
21
  Conversions.register(:records, :cds, 0.47)
22
- assert 2, Conversions.conversions.length
22
+ assert_equal 2, Conversions.conversions.length
23
23
  Conversions.clear
24
- assert 0, Conversions.conversions.length
24
+ assert_equal 0, Conversions.conversions.length
25
25
  end
26
26
  end
metadata CHANGED
@@ -1,49 +1,37 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: conversions
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 1
7
- - 4
8
- - 5
9
- version: 1.4.5
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.4.6
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Manfred Stienstra
13
9
  - Seamus Abshere
14
10
  autorequire:
15
11
  bindir: bin
16
12
  cert_chain: []
17
-
18
- date: 2010-05-05 00:00:00 -04:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
13
+ date: 2012-01-17 00:00:00.000000000Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
22
16
  name: activesupport
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- segments:
29
- - 2
30
- - 3
31
- - 4
17
+ requirement: &2153167240 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
32
22
  version: 2.3.4
33
23
  type: :runtime
34
- version_requirements: *id001
24
+ prerelease: false
25
+ version_requirements: *2153167240
35
26
  description: A Ruby on Rails plugin that adds conversion capabilities to numeric objects
36
27
  email: seamus@abshere.net
37
28
  executables: []
38
-
39
29
  extensions: []
40
-
41
- extra_rdoc_files:
30
+ extra_rdoc_files:
42
31
  - LICENSE
43
32
  - README
44
33
  - TODO
45
- files:
46
- - .gitignore
34
+ files:
47
35
  - LICENSE
48
36
  - README
49
37
  - Rakefile
@@ -59,41 +47,30 @@ files:
59
47
  - test/ext_test.rb
60
48
  - test/test_helper.rb
61
49
  - test/unit_test.rb
62
- has_rdoc: true
63
50
  homepage: http://github.com/seamusabshere/conversions
64
51
  licenses: []
65
-
66
52
  post_install_message:
67
- rdoc_options:
68
- - --charset=UTF-8
53
+ rdoc_options:
69
54
  - --line-numbers
70
55
  - --inline-source
71
- require_paths:
56
+ require_paths:
72
57
  - lib
73
- required_ruby_version: !ruby/object:Gem::Requirement
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- segments:
78
- - 0
79
- version: "0"
80
- required_rubygems_version: !ruby/object:Gem::Requirement
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- segments:
85
- - 0
86
- version: "0"
58
+ required_ruby_version: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
64
+ required_rubygems_version: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
87
70
  requirements: []
88
-
89
71
  rubyforge_project: conversions
90
- rubygems_version: 1.3.6
72
+ rubygems_version: 1.8.10
91
73
  signing_key:
92
74
  specification_version: 3
93
75
  summary: A Ruby on Rails plugin that adds conversion capabilities to numeric objects
94
- test_files:
95
- - test/accessor_test.rb
96
- - test/conversions_test.rb
97
- - test/ext_test.rb
98
- - test/test_helper.rb
99
- - test/unit_test.rb
76
+ test_files: []
data/.gitignore DELETED
@@ -1,2 +0,0 @@
1
- documentation
2
- *.gem