attribution 0.2.0 → 0.3.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/attribution.gemspec +2 -2
- data/lib/attribution.rb +2 -0
- data/lib/attribution/version.rb +1 -1
- data/test/attribution_test.rb +10 -0
- metadata +4 -5
data/attribution.gemspec
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |gem|
|
|
4
4
|
gem.name = "attribution"
|
|
5
|
-
gem.version = "0.
|
|
5
|
+
gem.version = "0.3.0"
|
|
6
6
|
gem.authors = ["Paul Barry"]
|
|
7
7
|
gem.email = ["mail@paulbarry.com"]
|
|
8
8
|
gem.description = %q{Add attributes to Ruby objects}
|
|
9
9
|
gem.summary = %q{Add attributes to Ruby objects}
|
|
10
|
-
gem.homepage = ""
|
|
10
|
+
gem.homepage = "http://github.com/pjb3/attribution"
|
|
11
11
|
|
|
12
12
|
gem.files = `git ls-files`.split($/)
|
|
13
13
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
data/lib/attribution.rb
CHANGED
|
@@ -99,6 +99,7 @@ module Attribution
|
|
|
99
99
|
when Date then arg
|
|
100
100
|
when Time, DateTime then arg.to_date
|
|
101
101
|
when String then Date.parse(arg)
|
|
102
|
+
when Hash then Date.new(*arg.slice(:year, :month, :day).values.map(&:to_i))
|
|
102
103
|
else raise ArgumentError.new("can't convert #{arg.class} to Date")
|
|
103
104
|
end
|
|
104
105
|
instance_variable_set("@#{attr}", v)
|
|
@@ -112,6 +113,7 @@ module Attribution
|
|
|
112
113
|
when Date, DateTime then arg.to_time
|
|
113
114
|
when Time then arg
|
|
114
115
|
when String then Time.parse(arg)
|
|
116
|
+
when Hash then Time.new(*arg.slice(:year, :month, :day, :hour, :min, :sec, :utc_offset).values.map(&:to_i))
|
|
115
117
|
else raise ArgumentError.new("can't convert #{arg.class} to Time")
|
|
116
118
|
end
|
|
117
119
|
instance_variable_set("@#{attr}", v)
|
data/lib/attribution/version.rb
CHANGED
data/test/attribution_test.rb
CHANGED
|
@@ -114,4 +114,14 @@ class AttributionTest < Test::Unit::TestCase
|
|
|
114
114
|
], Chapter.attributes
|
|
115
115
|
assert_equal({ :id => nil, :number => 1, :title => nil, :page_number => nil, :book_id => nil }, chapter.attributes)
|
|
116
116
|
end
|
|
117
|
+
|
|
118
|
+
def test_date_hash
|
|
119
|
+
book = Book.new(:published_on => { :year => '2013', :month => '03', :day => '17' })
|
|
120
|
+
assert_equal Date.parse('2013-03-17'), book.published_on
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def test_time_hash
|
|
124
|
+
book = Book.new(:created_at => { :year => '2013', :month => '03', :day => '17', :hour => '07', :min => '30', :sec => '11', :utc_offset => '3600' })
|
|
125
|
+
assert_equal Time.parse('2013-03-17 07:30:11 +01:00'), book.created_at
|
|
126
|
+
end
|
|
117
127
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: attribution
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2013-03-
|
|
12
|
+
date: 2013-03-07 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: activesupport
|
|
@@ -59,7 +59,7 @@ files:
|
|
|
59
59
|
- lib/attribution.rb
|
|
60
60
|
- lib/attribution/version.rb
|
|
61
61
|
- test/attribution_test.rb
|
|
62
|
-
homepage:
|
|
62
|
+
homepage: http://github.com/pjb3/attribution
|
|
63
63
|
licenses: []
|
|
64
64
|
post_install_message:
|
|
65
65
|
rdoc_options: []
|
|
@@ -79,10 +79,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
79
79
|
version: '0'
|
|
80
80
|
requirements: []
|
|
81
81
|
rubyforge_project:
|
|
82
|
-
rubygems_version: 1.8.
|
|
82
|
+
rubygems_version: 1.8.25
|
|
83
83
|
signing_key:
|
|
84
84
|
specification_version: 3
|
|
85
85
|
summary: Add attributes to Ruby objects
|
|
86
86
|
test_files:
|
|
87
87
|
- test/attribution_test.rb
|
|
88
|
-
has_rdoc:
|