gyoku 0.4.3 → 0.4.4
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/.travis.yml +7 -0
- data/CHANGELOG.md +55 -0
- data/README.md +1 -1
- data/Rakefile +3 -35
- data/lib/gyoku.rb +1 -1
- data/lib/gyoku/version.rb +1 -1
- data/spec/gyoku/array_spec.rb +12 -12
- data/spec/gyoku/hash_spec.rb +35 -25
- data/spec/gyoku/xml_key_spec.rb +12 -12
- data/spec/gyoku/xml_value_spec.rb +6 -6
- data/spec/gyoku_spec.rb +20 -6
- metadata +7 -7
data/.travis.yml
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
## 0.4.4
|
2
|
+
|
3
|
+
* Fix: [issue 6](https://github.com/rubiii/gyoku/issues/6) -
|
4
|
+
`Gyoku.xml` does not modify the original Hash.
|
5
|
+
|
6
|
+
## 0.4.3
|
7
|
+
|
8
|
+
* Fix: Make sure `require "date"` when necessary.
|
9
|
+
|
10
|
+
## 0.4.2
|
11
|
+
|
12
|
+
* Fix: `Array.to_xml` so that the given :namespace is applied to every element
|
13
|
+
in an Array.
|
14
|
+
|
15
|
+
## 0.4.1
|
16
|
+
|
17
|
+
* Fix: Alternative formulas and namespaces.
|
18
|
+
|
19
|
+
## 0.4.0
|
20
|
+
|
21
|
+
* Feature: Added alternative Symbol conversion formulas. You can choose between
|
22
|
+
:lower_camelcase (the default), :camelcase and :none.
|
23
|
+
|
24
|
+
Gyoku.convert_symbols_to :camelcase
|
25
|
+
|
26
|
+
You can even define your own formula:
|
27
|
+
|
28
|
+
Gyoku.convert_symbols_to { |key| key.upcase }
|
29
|
+
|
30
|
+
## 0.3.1
|
31
|
+
|
32
|
+
* Feature: Gyoku now calls Proc objects and converts their return value.
|
33
|
+
|
34
|
+
## 0.3.0
|
35
|
+
|
36
|
+
* Feature: Now when all Hash keys need to be namespaced (like with
|
37
|
+
elementFormDefault), you can use options to to trigger this behavior.
|
38
|
+
|
39
|
+
Gyoku.xml hash,
|
40
|
+
:element_form_default => :qualified,
|
41
|
+
:namespace => :v2
|
42
|
+
|
43
|
+
## 0.2.0
|
44
|
+
|
45
|
+
* Feature: Added support for self-closing tags. Hash keys ending with a forward
|
46
|
+
slash (regardless of their value) are now converted to self-closing tags.
|
47
|
+
|
48
|
+
## 0.1.1
|
49
|
+
|
50
|
+
* Fix: Allow people to use new versions of builder.
|
51
|
+
|
52
|
+
## 0.1.0
|
53
|
+
|
54
|
+
* Initial version. Gyoku was born as a core extension inside the
|
55
|
+
[Savon](http://rubygems.org/gems/savon) library.
|
data/README.md
CHANGED
data/Rakefile
CHANGED
@@ -1,42 +1,10 @@
|
|
1
1
|
require "bundler"
|
2
2
|
Bundler::GemHelper.install_tasks
|
3
3
|
|
4
|
-
|
5
|
-
require "yard"
|
4
|
+
require "rspec/core/rake_task"
|
6
5
|
|
7
|
-
|
8
|
-
|
9
|
-
end
|
10
|
-
rescue LoadError
|
11
|
-
desc message = %{"gem install yard" to generate documentation}
|
12
|
-
task("yard") { abort message }
|
13
|
-
end
|
14
|
-
|
15
|
-
begin
|
16
|
-
require "metric_fu"
|
17
|
-
|
18
|
-
MetricFu::Configuration.run do |c|
|
19
|
-
c.metrics = [:churn, :flog, :flay, :reek, :roodi, :saikuro] # :rcov seems to be broken
|
20
|
-
c.graphs = [:flog, :flay, :reek, :roodi]
|
21
|
-
c.flay = { :dirs_to_flay => ["lib"], :minimum_score => 20 }
|
22
|
-
c.rcov[:rcov_opts] << "-Ilib -Ispec"
|
23
|
-
end
|
24
|
-
rescue LoadError
|
25
|
-
desc message = %{"gem install metric_fu" to generate metrics}
|
26
|
-
task("metrics:all") { abort message }
|
27
|
-
end
|
28
|
-
|
29
|
-
begin
|
30
|
-
require "rspec/core/rake_task"
|
31
|
-
|
32
|
-
RSpec::Core::RakeTask.new do |t|
|
33
|
-
t.pattern = "spec/**/*_spec.rb"
|
34
|
-
t.rspec_opts = %w(-fd -c)
|
35
|
-
end
|
36
|
-
rescue LoadError
|
37
|
-
task :spec do
|
38
|
-
abort "Run 'gem install rspec' to be able to run specs"
|
39
|
-
end
|
6
|
+
RSpec::Core::RakeTask.new do |t|
|
7
|
+
t.rspec_opts = %w(-c)
|
40
8
|
end
|
41
9
|
|
42
10
|
task :default => :spec
|
data/lib/gyoku.rb
CHANGED
data/lib/gyoku/version.rb
CHANGED
data/spec/gyoku/array_spec.rb
CHANGED
@@ -3,45 +3,45 @@ require "spec_helper"
|
|
3
3
|
describe Gyoku::Array do
|
4
4
|
|
5
5
|
describe ".to_xml" do
|
6
|
-
it "
|
6
|
+
it "returns the XML for an Array of Hashes" do
|
7
7
|
array = [{ :name => "adam" }, { :name => "eve" }]
|
8
8
|
result = "<user><name>adam</name></user><user><name>eve</name></user>"
|
9
|
-
|
9
|
+
|
10
10
|
to_xml(array, "user").should == result
|
11
11
|
end
|
12
12
|
|
13
|
-
it "
|
13
|
+
it "returns the XML for an Array of different Objects" do
|
14
14
|
array = [:symbol, "string", 123]
|
15
15
|
result = "<value>symbol</value><value>string</value><value>123</value>"
|
16
|
-
|
16
|
+
|
17
17
|
to_xml(array, "value").should == result
|
18
18
|
end
|
19
19
|
|
20
|
-
it "
|
20
|
+
it "defaults to escape special characters" do
|
21
21
|
array = ["<tag />", "adam & eve"]
|
22
22
|
result = "<value><tag /></value><value>adam & eve</value>"
|
23
|
-
|
23
|
+
|
24
24
|
to_xml(array, "value").should == result
|
25
25
|
end
|
26
26
|
|
27
|
-
it "
|
27
|
+
it "does not escape special characters when told to" do
|
28
28
|
array = ["<tag />", "adam & eve"]
|
29
29
|
result = "<value><tag /></value><value>adam & eve</value>"
|
30
|
-
|
30
|
+
|
31
31
|
to_xml(array, "value", false).should == result
|
32
32
|
end
|
33
33
|
|
34
|
-
it "
|
34
|
+
it "adds attributes to a given tag" do
|
35
35
|
array = ["adam", "eve"]
|
36
36
|
result = '<value active="true">adam</value><value active="true">eve</value>'
|
37
|
-
|
37
|
+
|
38
38
|
to_xml(array, "value", :escape_xml, :active => true).should == result
|
39
39
|
end
|
40
40
|
|
41
|
-
it "
|
41
|
+
it "adds attributes to duplicate tags" do
|
42
42
|
array = ["adam", "eve"]
|
43
43
|
result = '<value id="1">adam</value><value id="2">eve</value>'
|
44
|
-
|
44
|
+
|
45
45
|
to_xml(array, "value", :escape_xml, :id => [1, 2]).should == result
|
46
46
|
end
|
47
47
|
end
|
data/spec/gyoku/hash_spec.rb
CHANGED
@@ -3,7 +3,7 @@ require "spec_helper"
|
|
3
3
|
describe Gyoku::Hash do
|
4
4
|
|
5
5
|
describe ".to_xml" do
|
6
|
-
describe "
|
6
|
+
describe "returns SOAP request compatible XML" do
|
7
7
|
it "for a simple Hash" do
|
8
8
|
to_xml(:some => "user").should == "<some>user</some>"
|
9
9
|
end
|
@@ -29,20 +29,20 @@ describe Gyoku::Hash do
|
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
-
it "
|
32
|
+
it "converts Hash key Symbols to lowerCamelCase" do
|
33
33
|
to_xml(:find_or_create => "user").should == "<findOrCreate>user</findOrCreate>"
|
34
34
|
end
|
35
35
|
|
36
|
-
it "
|
36
|
+
it "does not convert Hash key Strings" do
|
37
37
|
to_xml("find_or_create" => "user").should == "<find_or_create>user</find_or_create>"
|
38
38
|
end
|
39
39
|
|
40
|
-
it "
|
40
|
+
it "converts DateTime objects to xs:dateTime compliant Strings" do
|
41
41
|
to_xml(:before => DateTime.new(2012, 03, 22, 16, 22, 33)).
|
42
42
|
should == "<before>2012-03-22T16:22:33+00:00</before>"
|
43
43
|
end
|
44
44
|
|
45
|
-
it "
|
45
|
+
it "converts Objects responding to to_datetime to xs:dateTime compliant Strings" do
|
46
46
|
singleton = Object.new
|
47
47
|
def singleton.to_datetime
|
48
48
|
DateTime.new(2012, 03, 22, 16, 22, 33)
|
@@ -51,40 +51,40 @@ describe Gyoku::Hash do
|
|
51
51
|
to_xml(:before => singleton).should == "<before>2012-03-22T16:22:33+00:00</before>"
|
52
52
|
end
|
53
53
|
|
54
|
-
it "
|
54
|
+
it "calls to_s on Strings even if they respond to to_datetime" do
|
55
55
|
object = "gorilla"
|
56
56
|
object.expects(:to_datetime).never
|
57
57
|
|
58
58
|
to_xml(:name => object).should == "<name>gorilla</name>"
|
59
59
|
end
|
60
60
|
|
61
|
-
it "
|
61
|
+
it "properly serializes nil values" do
|
62
62
|
to_xml(:some => nil).should == '<some xsi:nil="true"/>'
|
63
63
|
end
|
64
64
|
|
65
|
-
it "
|
65
|
+
it "creates self-closing tags for Hash keys ending with a forward slash" do
|
66
66
|
to_xml("self-closing/" => nil).should == '<self-closing/>'
|
67
67
|
end
|
68
68
|
|
69
|
-
it "
|
69
|
+
it "calls to_s on any other Object" do
|
70
70
|
[666, true, false].each do |object|
|
71
71
|
to_xml(:some => object).should == "<some>#{object}</some>"
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
|
-
it "
|
75
|
+
it "defaults to escape special characters" do
|
76
76
|
result = to_xml(:some => { :nested => "<tag />" }, :tag => "<tag />")
|
77
77
|
result.should include("<tag><tag /></tag>")
|
78
78
|
result.should include("<some><nested><tag /></nested></some>")
|
79
79
|
end
|
80
80
|
|
81
|
-
it "
|
81
|
+
it "does not escape special characters for keys marked with an exclamation mark" do
|
82
82
|
result = to_xml(:some => { :nested! => "<tag />" }, :tag! => "<tag />")
|
83
83
|
result.should include("<tag><tag /></tag>")
|
84
84
|
result.should include("<some><nested><tag /></nested></some>")
|
85
85
|
end
|
86
86
|
|
87
|
-
it "
|
87
|
+
it "preserves the order of Hash keys and values specified through :order!" do
|
88
88
|
hash = { :find_user => { :name => "Lucy", :id => 666, :order! => [:id, :name] } }
|
89
89
|
result = "<findUser><id>666</id><name>Lucy</name></findUser>"
|
90
90
|
to_xml(hash).should == result
|
@@ -94,15 +94,17 @@ describe Gyoku::Hash do
|
|
94
94
|
to_xml(hash).should == result
|
95
95
|
end
|
96
96
|
|
97
|
-
it "
|
97
|
+
it "raises if the :order! Array is missing Hash keys" do
|
98
98
|
hash = { :name => "Lucy", :id => 666, :order! => [:name] }
|
99
|
-
lambda { to_xml(hash) }.should raise_error(ArgumentError)
|
99
|
+
lambda { to_xml(hash) }.should raise_error(ArgumentError, "Missing elements in :order! [:id]")
|
100
|
+
end
|
100
101
|
|
101
|
-
|
102
|
-
|
102
|
+
it "raises if the :order! Array contains missing Hash keys" do
|
103
|
+
hash = { :by_name => { :first_name => "Lucy", :last_name => "Sky", :order! => [:first_name, :middle_name, :last_name] } }
|
104
|
+
lambda { to_xml(hash) }.should raise_error(ArgumentError, "Spurious elements in :order! [:middle_name]")
|
103
105
|
end
|
104
106
|
|
105
|
-
it "
|
107
|
+
it "adds attributes to Hash keys specified through :attributes!" do
|
106
108
|
hash = { :find_user => { :person => "Lucy", :attributes! => { :person => { :id => 666 } } } }
|
107
109
|
result = '<findUser><person id="666">Lucy</person></findUser>'
|
108
110
|
to_xml(hash).should == result
|
@@ -111,7 +113,7 @@ describe Gyoku::Hash do
|
|
111
113
|
to_xml(hash).should include('id="666"', 'city="Hamburg"')
|
112
114
|
end
|
113
115
|
|
114
|
-
it "
|
116
|
+
it "adds attributes to duplicate Hash keys specified through :attributes!" do
|
115
117
|
hash = { :find_user => { :person => ["Lucy", "Anna"], :attributes! => { :person => { :id => [1, 3] } } } }
|
116
118
|
result = '<findUser><person id="1">Lucy</person><person id="3">Anna</person></findUser>'
|
117
119
|
to_xml(hash).should == result
|
@@ -121,25 +123,33 @@ describe Gyoku::Hash do
|
|
121
123
|
to_xml(hash).should == result
|
122
124
|
end
|
123
125
|
|
126
|
+
it "adds attributes to self-closing tags" do
|
127
|
+
hash = {
|
128
|
+
"category/" => "",
|
129
|
+
:attributes! => { "category/" => { :id => 1 } }
|
130
|
+
}
|
131
|
+
|
132
|
+
to_xml(hash).should == '<category id="1"/>'
|
133
|
+
end
|
134
|
+
|
124
135
|
context "with :element_form_default set to :qualified and a :namespace" do
|
125
|
-
it "
|
126
|
-
hash = { :first => { "first_name" => "
|
136
|
+
it "adds the given :namespace to every element" do
|
137
|
+
hash = { :first => { "first_name" => "Lucy" }, ":second" => { :":first_name" => "Anna" }, "v2:third" => { "v2:firstName" => "Danie" } }
|
127
138
|
result = to_xml hash, :element_form_default => :qualified, :namespace => :v1
|
128
139
|
|
129
140
|
result.should include(
|
130
|
-
"<v1:first><v1:first_name>
|
141
|
+
"<v1:first><v1:first_name>Lucy</v1:first_name></v1:first>",
|
131
142
|
"<second><firstName>Anna</firstName></second>",
|
132
143
|
"<v2:third><v2:firstName>Danie</v2:firstName></v2:third>"
|
133
144
|
)
|
134
145
|
end
|
135
146
|
|
136
|
-
it "
|
137
|
-
hash = { :array => [ :first => "
|
147
|
+
it "adds given :namespace to every element in an array" do
|
148
|
+
hash = { :array => [ :first => "Lucy", :second => "Anna" ]}
|
138
149
|
result = to_xml hash, :element_form_default => :qualified, :namespace => :v1
|
139
150
|
|
140
|
-
result.should include("<v1:array>", "<v1:first>
|
151
|
+
result.should include("<v1:array>", "<v1:first>Lucy</v1:first>", "<v1:second>Anna</v1:second>")
|
141
152
|
end
|
142
|
-
|
143
153
|
end
|
144
154
|
end
|
145
155
|
|
data/spec/gyoku/xml_key_spec.rb
CHANGED
@@ -3,35 +3,35 @@ require "spec_helper"
|
|
3
3
|
describe Gyoku::XMLKey do
|
4
4
|
|
5
5
|
describe ".create" do
|
6
|
-
it "
|
6
|
+
it "removes exclamation marks from the end of a String" do
|
7
7
|
create("value!").should == "value"
|
8
8
|
end
|
9
9
|
|
10
|
-
it "
|
10
|
+
it "removes forward slashes from the end of a String" do
|
11
11
|
create("self-closing/").should == "self-closing"
|
12
12
|
end
|
13
13
|
|
14
|
-
it "
|
14
|
+
it "does not convert snake_case Strings" do
|
15
15
|
create("lower_camel_case").should == "lower_camel_case"
|
16
16
|
end
|
17
17
|
|
18
|
-
it "
|
18
|
+
it "converts snake_case Symbols to lowerCamelCase Strings" do
|
19
19
|
create(:lower_camel_case).should == "lowerCamelCase"
|
20
20
|
create(:lower_camel_case!).should == "lowerCamelCase"
|
21
21
|
end
|
22
22
|
|
23
23
|
context "with :element_form_default set to :qualified and a :namespace" do
|
24
|
-
it "
|
24
|
+
it "adds the given namespace" do
|
25
25
|
key = create :qualify, :element_form_default => :qualified, :namespace => :v1
|
26
26
|
key.should == "v1:qualify"
|
27
27
|
end
|
28
28
|
|
29
|
-
it "
|
29
|
+
it "does not add the given namespace if the key starts with a colon" do
|
30
30
|
key = create ":qualify", :element_form_default => :qualified, :namespace => :v1
|
31
31
|
key.should == "qualify"
|
32
32
|
end
|
33
33
|
|
34
|
-
it "
|
34
|
+
it "adds a given :namespace after converting the key" do
|
35
35
|
Gyoku::XMLKey.symbol_converter = :camelcase
|
36
36
|
|
37
37
|
key = create :username, :element_form_default => :qualified, :namespace => :v1
|
@@ -45,26 +45,26 @@ describe Gyoku::XMLKey do
|
|
45
45
|
describe ".symbol_converter" do
|
46
46
|
after { Gyoku::XMLKey.symbol_converter = :lower_camelcase } #reset
|
47
47
|
|
48
|
-
it "
|
48
|
+
it "returns the default lower_camelcase converter" do
|
49
49
|
Gyoku::XMLKey.symbol_converter.call("snake_case").should == "snakeCase"
|
50
50
|
end
|
51
51
|
|
52
|
-
it "
|
52
|
+
it "accepts :lower_camelcase" do
|
53
53
|
Gyoku::XMLKey.symbol_converter = :lower_camelcase
|
54
54
|
Gyoku::XMLKey.create(:snake_case).should == "snakeCase"
|
55
55
|
end
|
56
56
|
|
57
|
-
it "
|
57
|
+
it "accepts :camelcase" do
|
58
58
|
Gyoku::XMLKey.symbol_converter = :camelcase
|
59
59
|
Gyoku::XMLKey.create(:snake_case).should == "SnakeCase"
|
60
60
|
end
|
61
61
|
|
62
|
-
it "
|
62
|
+
it "accepts :none" do
|
63
63
|
Gyoku::XMLKey.symbol_converter = :none
|
64
64
|
Gyoku::XMLKey.create(:snake_Case).should == "snake_Case"
|
65
65
|
end
|
66
66
|
|
67
|
-
it "
|
67
|
+
it "allows to set a custom converter" do
|
68
68
|
Gyoku::XMLKey.symbol_converter = Proc.new { |key| key.upcase }
|
69
69
|
Gyoku::XMLKey.create(:snake_case).should == "SNAKE_CASE"
|
70
70
|
end
|
@@ -7,23 +7,23 @@ describe Gyoku::XMLValue do
|
|
7
7
|
|
8
8
|
describe ".create" do
|
9
9
|
context "for DateTime objects" do
|
10
|
-
it "
|
10
|
+
it "returns an xs:dateTime compliant String" do
|
11
11
|
create(datetime).should == datetime_string
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
|
-
it "
|
15
|
+
it "returns the String value and escapes special characters" do
|
16
16
|
create("string").should == "string"
|
17
17
|
create("<tag>").should == "<tag>"
|
18
18
|
create("at&t").should == "at&t"
|
19
19
|
create('"quotes"').should == ""quotes""
|
20
20
|
end
|
21
21
|
|
22
|
-
it "
|
22
|
+
it "returns the String value without escaping special characters" do
|
23
23
|
create("<tag>", false).should == "<tag>"
|
24
24
|
end
|
25
25
|
|
26
|
-
it "
|
26
|
+
it "returns an xs:dateTime compliant String for Objects responding to #to_datetime" do
|
27
27
|
singleton = Object.new
|
28
28
|
def singleton.to_datetime
|
29
29
|
DateTime.new 2012, 03, 22, 16, 22, 33
|
@@ -32,12 +32,12 @@ describe Gyoku::XMLValue do
|
|
32
32
|
create(singleton).should == "2012-03-22T16:22:33+00:00"
|
33
33
|
end
|
34
34
|
|
35
|
-
it "
|
35
|
+
it "calls Proc objects and converts their return value" do
|
36
36
|
object = lambda { DateTime.new 2012, 03, 22, 16, 22, 33 }
|
37
37
|
create(object).should == "2012-03-22T16:22:33+00:00"
|
38
38
|
end
|
39
39
|
|
40
|
-
it "
|
40
|
+
it "calls #to_s unless the Object responds to #to_datetime" do
|
41
41
|
create("value").should == "value"
|
42
42
|
end
|
43
43
|
end
|
data/spec/gyoku_spec.rb
CHANGED
@@ -3,14 +3,28 @@ require "spec_helper"
|
|
3
3
|
describe Gyoku do
|
4
4
|
|
5
5
|
describe ".xml" do
|
6
|
-
it "
|
7
|
-
Gyoku
|
8
|
-
|
6
|
+
it "translates a given Hash to XML" do
|
7
|
+
Gyoku.xml({ :id => 1 }, :element_form_default => :qualified).should == "<id>1</id>"
|
8
|
+
end
|
9
|
+
|
10
|
+
it "does not modify the original Hash" do
|
11
|
+
hash = {
|
12
|
+
:person => {
|
13
|
+
:first_name => "Lucy",
|
14
|
+
:last_name => "Sky",
|
15
|
+
:order! => [:first_name, :last_name]
|
16
|
+
},
|
17
|
+
:attributes! => { :person => { :id => "666" } }
|
18
|
+
}
|
19
|
+
original_hash = hash.dup
|
20
|
+
|
21
|
+
Gyoku.xml(hash)
|
22
|
+
original_hash.should == hash
|
9
23
|
end
|
10
24
|
end
|
11
25
|
|
12
26
|
describe ".configure" do
|
13
|
-
it "
|
27
|
+
it "yields the Gyoku module" do
|
14
28
|
Gyoku.configure { |config| config.should respond_to(:convert_symbols_to) }
|
15
29
|
end
|
16
30
|
end
|
@@ -18,12 +32,12 @@ describe Gyoku do
|
|
18
32
|
describe ".convert_symbols_to" do
|
19
33
|
after { Gyoku.convert_symbols_to(:lower_camelcase) } # reset
|
20
34
|
|
21
|
-
it "
|
35
|
+
it "accepts a predefined formula" do
|
22
36
|
Gyoku.convert_symbols_to(:camelcase)
|
23
37
|
Gyoku::XMLKey.create(:snake_case).should == "SnakeCase"
|
24
38
|
end
|
25
39
|
|
26
|
-
it "
|
40
|
+
it "accepts a block" do
|
27
41
|
Gyoku.convert_symbols_to { |key| key.upcase }
|
28
42
|
Gyoku::XMLKey.create(:snake_case).should == "SNAKE_CASE"
|
29
43
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gyoku
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 7
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 4
|
9
|
-
-
|
10
|
-
version: 0.4.
|
9
|
+
- 4
|
10
|
+
version: 0.4.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Daniel Harrington
|
@@ -15,8 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-05-
|
19
|
-
default_executable:
|
18
|
+
date: 2011-05-15 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
21
|
name: builder
|
@@ -92,6 +91,8 @@ files:
|
|
92
91
|
- .gemtest
|
93
92
|
- .gitignore
|
94
93
|
- .rspec
|
94
|
+
- .travis.yml
|
95
|
+
- CHANGELOG.md
|
95
96
|
- Gemfile
|
96
97
|
- LICENSE
|
97
98
|
- README.md
|
@@ -111,7 +112,6 @@ files:
|
|
111
112
|
- spec/gyoku/xml_value_spec.rb
|
112
113
|
- spec/gyoku_spec.rb
|
113
114
|
- spec/spec_helper.rb
|
114
|
-
has_rdoc: true
|
115
115
|
homepage: http://github.com/rubiii/gyoku
|
116
116
|
licenses: []
|
117
117
|
|
@@ -141,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
141
|
requirements: []
|
142
142
|
|
143
143
|
rubyforge_project: gyoku
|
144
|
-
rubygems_version: 1.
|
144
|
+
rubygems_version: 1.7.2
|
145
145
|
signing_key:
|
146
146
|
specification_version: 3
|
147
147
|
summary: Converts Ruby Hashes to XML
|