rubysl-yaml 0.0.1 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +0 -1
  3. data/.travis.yml +7 -0
  4. data/README.md +2 -2
  5. data/Rakefile +0 -1
  6. data/lib/rubysl/yaml.rb +2 -0
  7. data/lib/rubysl/yaml/version.rb +5 -0
  8. data/lib/rubysl/yaml/yaml.rb +440 -0
  9. data/lib/yaml.rb +1 -0
  10. data/lib/yaml/baseemitter.rb +247 -0
  11. data/lib/yaml/basenode.rb +216 -0
  12. data/lib/yaml/constants.rb +45 -0
  13. data/lib/yaml/dbm.rb +111 -0
  14. data/lib/yaml/encoding.rb +33 -0
  15. data/lib/yaml/error.rb +34 -0
  16. data/lib/yaml/loader.rb +14 -0
  17. data/lib/yaml/rubytypes.rb +409 -0
  18. data/lib/yaml/store.rb +43 -0
  19. data/lib/yaml/stream.rb +40 -0
  20. data/lib/yaml/stringio.rb +83 -0
  21. data/lib/yaml/syck.rb +44 -0
  22. data/lib/yaml/tag.rb +91 -0
  23. data/lib/yaml/types.rb +192 -0
  24. data/lib/yaml/yamlnode.rb +54 -0
  25. data/lib/yaml/ypath.rb +52 -0
  26. data/rubysl-yaml.gemspec +19 -17
  27. data/spec/add_builtin_type_spec.rb +1 -0
  28. data/spec/add_domain_type_spec.rb +1 -0
  29. data/spec/add_private_type_spec.rb +1 -0
  30. data/spec/add_ruby_type_spec.rb +1 -0
  31. data/spec/detect_implicit_spec.rb +1 -0
  32. data/spec/dump_spec.rb +35 -0
  33. data/spec/dump_stream_spec.rb +13 -0
  34. data/spec/each_document_spec.rb +9 -0
  35. data/spec/each_node_spec.rb +1 -0
  36. data/spec/emitter_spec.rb +1 -0
  37. data/spec/fixtures/common.rb +10 -0
  38. data/spec/fixtures/example_class.rb +5 -0
  39. data/spec/fixtures/strings.rb +36 -0
  40. data/spec/fixtures/test_yaml.yml +2 -0
  41. data/spec/generic_parser_spec.rb +1 -0
  42. data/spec/load_documents_spec.rb +7 -0
  43. data/spec/load_file_spec.rb +12 -0
  44. data/spec/load_spec.rb +111 -0
  45. data/spec/load_stream_spec.rb +1 -0
  46. data/spec/object_maker_spec.rb +1 -0
  47. data/spec/parse_documents_spec.rb +1 -0
  48. data/spec/parse_file_spec.rb +9 -0
  49. data/spec/parse_spec.rb +21 -0
  50. data/spec/parser_spec.rb +1 -0
  51. data/spec/quick_emit_spec.rb +1 -0
  52. data/spec/read_type_class_spec.rb +1 -0
  53. data/spec/shared/each_document.rb +18 -0
  54. data/spec/tag_class_spec.rb +9 -0
  55. data/spec/tagged_classes_spec.rb +9 -0
  56. data/spec/tagurize_spec.rb +8 -0
  57. data/spec/to_yaml_spec.rb +97 -0
  58. data/spec/transfer_spec.rb +1 -0
  59. data/spec/try_implicit_spec.rb +1 -0
  60. metadata +163 -88
  61. data/lib/rubysl-yaml.rb +0 -7
  62. data/lib/rubysl-yaml/version.rb +0 -5
@@ -0,0 +1,9 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+
3
+ describe "YAML#parse_file" do
4
+ quarantine! do
5
+ it "returns a YAML::Syck::Map object after parsing a YAML file" do
6
+ YAML.parse_file($test_parse_file).should be_kind_of(YAML::Syck::Map)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,21 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+
3
+ describe "YAML#parse with an empty string" do
4
+ it "returns false" do
5
+ YAML.parse('').should be_false
6
+ end
7
+ end
8
+
9
+ describe "YAML#parse" do
10
+ before :each do
11
+ @string_yaml = "foo".to_yaml
12
+ end
13
+
14
+ it "returns the value from the object" do
15
+ if YAML.to_s == "Psych"
16
+ YAML.parse(@string_yaml).to_ruby.should == "foo"
17
+ else
18
+ YAML.parse(@string_yaml).value.should == "foo"
19
+ end
20
+ end
21
+ end
@@ -0,0 +1 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
@@ -0,0 +1 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
@@ -0,0 +1 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
@@ -0,0 +1,18 @@
1
+ describe :yaml_each_document, :shared => true do
2
+ it "calls the block on each succesive document" do
3
+ documents = []
4
+ YAML.send(@method, $multidocument) do |doc|
5
+ documents << doc
6
+ end
7
+ documents.should == [["Mark McGwire", "Sammy Sosa", "Ken Griffey"],
8
+ ["Chicago Cubs", "St Louis Cardinals"]]
9
+ end
10
+
11
+ it "works on files" do
12
+ File.open($test_parse_file, "r") do |file|
13
+ YAML.send(@method, file) do |doc|
14
+ doc.should == {"project"=>{"name"=>"RubySpec"}}
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,9 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+
3
+ ruby_version_is "" ... "2.0" do
4
+ describe "YAML.tag_class" do
5
+ it "associates a taguri tag with a ruby class" do
6
+ YAML.tag_class('rubini.us','rubinius').should == "rubinius"
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+
3
+ ruby_version_is "" ... "2.0" do
4
+ describe "YAML.tagged_classes" do
5
+ it "returns a complete dictionary of taguris paired with classes" do
6
+ YAML.tagged_classes["tag:yaml.org,2002:int"].should == Integer
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+
3
+ describe "YAML.tagurize" do
4
+ it "converts a type_id to a taguri" do
5
+ YAML.tagurize('wtf').should == "tag:yaml.org,2002:wtf"
6
+ YAML.tagurize(1).should == 1
7
+ end
8
+ end
@@ -0,0 +1,97 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
2
+ require File.expand_path('../fixtures/example_class', __FILE__)
3
+
4
+ describe "Object#to_yaml" do
5
+
6
+ it "returns the YAML representation of an Array object" do
7
+ %w( 30 ruby maz irb 99 ).to_yaml.gsub("'", '"').should match_yaml("--- \n- \"30\"\n- ruby\n- maz\n- irb\n- \"99\"\n")
8
+ end
9
+
10
+ it "returns the YAML representation of a Hash object" do
11
+ { "a" => "b"}.to_yaml.should match_yaml("--- \na: b\n")
12
+ end
13
+
14
+ it "returns the YAML representation of a Class object" do
15
+ FooBar.new("baz").to_yaml.should match_yaml("--- !ruby/object:FooBar\nname: baz\n")
16
+
17
+ end
18
+
19
+ it "returns the YAML representation of a Date object" do
20
+ Date.parse('1997/12/30').to_yaml.should match_yaml("--- 1997-12-30\n")
21
+ end
22
+
23
+ it "returns the YAML representation of a FalseClass" do
24
+ false_klass = false
25
+ false_klass.should be_kind_of(FalseClass)
26
+ false_klass.to_yaml.should match_yaml("--- false\n")
27
+ end
28
+
29
+ it "returns the YAML representation of a Float object" do
30
+ float = 1.2
31
+ float.should be_kind_of(Float)
32
+ float.to_yaml.should match_yaml("--- 1.2\n")
33
+ end
34
+
35
+ it "returns the YAML representation of an Integer object" do
36
+ int = 20
37
+ int.should be_kind_of(Integer)
38
+ int.to_yaml.should match_yaml("--- 20\n")
39
+ end
40
+
41
+ it "returns the YAML representation of a NilClass object" do
42
+ nil_klass = nil
43
+ nil_klass.should be_kind_of(NilClass)
44
+ nil_klass.to_yaml.should match_yaml("--- \n")
45
+ end
46
+
47
+ it "returns the YAML represenation of a RegExp object" do
48
+ Regexp.new('^a-z+:\\s+\w+').to_yaml.should match_yaml("--- !ruby/regexp /^a-z+:\\s+\\w+/\n")
49
+ end
50
+
51
+ it "returns the YAML representation of a String object" do
52
+ "I love Ruby".to_yaml.should match_yaml("--- I love Ruby\n")
53
+ end
54
+
55
+ it "returns the YAML representation of a Struct object" do
56
+ Person = Struct.new(:name, :gender)
57
+ Person.new("Jane", "female").to_yaml.should match_yaml("--- !ruby/struct:Person\nname: Jane\ngender: female\n")
58
+ end
59
+
60
+ it "returns the YAML representation of a Symbol object" do
61
+ :symbol.to_yaml.should match_yaml("--- :symbol\n")
62
+ end
63
+
64
+ it "returns the YAML representation of a Time object" do
65
+ Time.utc(2000,"jan",1,20,15,1).to_yaml.sub(/\.0+/, "").should match_yaml("--- 2000-01-01 20:15:01 Z\n")
66
+ end
67
+
68
+ it "returns the YAML representation of a TrueClass" do
69
+ true_klass = true
70
+ true_klass.should be_kind_of(TrueClass)
71
+ true_klass.to_yaml.should match_yaml("--- true\n")
72
+ end
73
+
74
+ it "returns the YAML representation of a Error object" do
75
+ StandardError.new("foobar").to_yaml.should match_yaml("--- !ruby/exception:StandardError\nmessage: foobar\n")
76
+ end
77
+
78
+ it "returns the YAML representation for Range objects" do
79
+ yaml = Range.new(1,3).to_yaml
80
+ yaml.include?("!ruby/range").should be_true
81
+ yaml.include?("begin: 1").should be_true
82
+ yaml.include?("end: 3").should be_true
83
+ yaml.include?("excl: false").should be_true
84
+ end
85
+
86
+ it "returns the YAML representation of numeric constants" do
87
+ nan_value.to_yaml.downcase.should match_yaml("--- .nan\n")
88
+ infinity_value.to_yaml.downcase.should match_yaml("--- .inf\n")
89
+ (-infinity_value).to_yaml.downcase.should match_yaml("--- -.inf\n")
90
+ (0.0).to_yaml.should match_yaml("--- 0.0\n")
91
+ end
92
+
93
+ it "returns the YAML representation of an array of hashes" do
94
+ players = [{"a" => "b"}, {"b" => "c"}]
95
+ players.to_yaml.should match_yaml("--- \n- a: b\n- b: c\n")
96
+ end
97
+ end
@@ -0,0 +1 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
@@ -0,0 +1 @@
1
+ require File.expand_path('../fixtures/common', __FILE__)
metadata CHANGED
@@ -1,118 +1,193 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rubysl-yaml
3
- version: !ruby/object:Gem::Version
4
- hash: 856480538658449761
5
- prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 1
10
- version: 0.0.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Brian Shirai
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2013-04-15 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- name: redcard
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
11
+ date: 2013-08-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rubysl-syck
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
26
17
  - - ~>
27
- - !ruby/object:Gem::Version
28
- hash: 4428665182548103036
29
- segments:
30
- - 1
31
- - 0
32
- version: "1.0"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
33
20
  type: :runtime
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: rake
37
21
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
41
24
  - - ~>
42
- - !ruby/object:Gem::Version
43
- hash: 1510892033553700768
44
- segments:
45
- - 10
46
- - 0
47
- version: "10.0"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '1.3'
48
34
  type: :development
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: mspec
52
35
  prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
54
- none: false
55
- requirements:
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
56
38
  - - ~>
57
- - !ruby/object:Gem::Version
58
- hash: 1660815245844205030
59
- segments:
60
- - 1
61
- - 5
62
- version: "1.5"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '10.0'
63
48
  type: :development
64
- version_requirements: *id003
65
- description: Ruby Standard Library - yaml
66
- email:
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '10.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: mspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '1.5'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '1.5'
69
+ description: Ruby standard library YAML.
70
+ email:
67
71
  - brixen@gmail.com
68
72
  executables: []
69
-
70
73
  extensions: []
71
-
72
74
  extra_rdoc_files: []
73
-
74
- files:
75
+ files:
75
76
  - .gitignore
77
+ - .travis.yml
76
78
  - Gemfile
77
79
  - LICENSE
78
80
  - README.md
79
81
  - Rakefile
80
- - lib/rubysl-yaml.rb
81
- - lib/rubysl-yaml/version.rb
82
+ - lib/rubysl/yaml.rb
83
+ - lib/rubysl/yaml/version.rb
84
+ - lib/rubysl/yaml/yaml.rb
85
+ - lib/yaml.rb
86
+ - lib/yaml/baseemitter.rb
87
+ - lib/yaml/basenode.rb
88
+ - lib/yaml/constants.rb
89
+ - lib/yaml/dbm.rb
90
+ - lib/yaml/encoding.rb
91
+ - lib/yaml/error.rb
92
+ - lib/yaml/loader.rb
93
+ - lib/yaml/rubytypes.rb
94
+ - lib/yaml/store.rb
95
+ - lib/yaml/stream.rb
96
+ - lib/yaml/stringio.rb
97
+ - lib/yaml/syck.rb
98
+ - lib/yaml/tag.rb
99
+ - lib/yaml/types.rb
100
+ - lib/yaml/yamlnode.rb
101
+ - lib/yaml/ypath.rb
82
102
  - rubysl-yaml.gemspec
83
- homepage: ""
84
- licenses: []
85
-
103
+ - spec/add_builtin_type_spec.rb
104
+ - spec/add_domain_type_spec.rb
105
+ - spec/add_private_type_spec.rb
106
+ - spec/add_ruby_type_spec.rb
107
+ - spec/detect_implicit_spec.rb
108
+ - spec/dump_spec.rb
109
+ - spec/dump_stream_spec.rb
110
+ - spec/each_document_spec.rb
111
+ - spec/each_node_spec.rb
112
+ - spec/emitter_spec.rb
113
+ - spec/fixtures/common.rb
114
+ - spec/fixtures/example_class.rb
115
+ - spec/fixtures/strings.rb
116
+ - spec/fixtures/test_yaml.yml
117
+ - spec/generic_parser_spec.rb
118
+ - spec/load_documents_spec.rb
119
+ - spec/load_file_spec.rb
120
+ - spec/load_spec.rb
121
+ - spec/load_stream_spec.rb
122
+ - spec/object_maker_spec.rb
123
+ - spec/parse_documents_spec.rb
124
+ - spec/parse_file_spec.rb
125
+ - spec/parse_spec.rb
126
+ - spec/parser_spec.rb
127
+ - spec/quick_emit_spec.rb
128
+ - spec/read_type_class_spec.rb
129
+ - spec/shared/each_document.rb
130
+ - spec/tag_class_spec.rb
131
+ - spec/tagged_classes_spec.rb
132
+ - spec/tagurize_spec.rb
133
+ - spec/to_yaml_spec.rb
134
+ - spec/transfer_spec.rb
135
+ - spec/try_implicit_spec.rb
136
+ homepage: https://github.com/rubysl/rubysl-yaml
137
+ licenses:
138
+ - BSD
139
+ metadata: {}
86
140
  post_install_message:
87
141
  rdoc_options: []
88
-
89
- require_paths:
142
+ require_paths:
90
143
  - lib
91
- required_ruby_version: !ruby/object:Gem::Requirement
92
- none: false
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- hash: 2002549777813010636
97
- segments:
98
- - 0
99
- version: "0"
100
- required_rubygems_version: !ruby/object:Gem::Requirement
101
- none: false
102
- requirements:
103
- - - ">="
104
- - !ruby/object:Gem::Version
105
- hash: 2002549777813010636
106
- segments:
107
- - 0
108
- version: "0"
144
+ required_ruby_version: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - '>='
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
149
+ required_rubygems_version: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
109
154
  requirements: []
110
-
111
155
  rubyforge_project:
112
- rubygems_version: 1.8.25
156
+ rubygems_version: 2.0.7
113
157
  signing_key:
114
- specification_version: 3
115
- summary: Ruby Standard Library - yaml
116
- test_files: []
117
-
118
- has_rdoc:
158
+ specification_version: 4
159
+ summary: Ruby standard library YAML.
160
+ test_files:
161
+ - spec/add_builtin_type_spec.rb
162
+ - spec/add_domain_type_spec.rb
163
+ - spec/add_private_type_spec.rb
164
+ - spec/add_ruby_type_spec.rb
165
+ - spec/detect_implicit_spec.rb
166
+ - spec/dump_spec.rb
167
+ - spec/dump_stream_spec.rb
168
+ - spec/each_document_spec.rb
169
+ - spec/each_node_spec.rb
170
+ - spec/emitter_spec.rb
171
+ - spec/fixtures/common.rb
172
+ - spec/fixtures/example_class.rb
173
+ - spec/fixtures/strings.rb
174
+ - spec/fixtures/test_yaml.yml
175
+ - spec/generic_parser_spec.rb
176
+ - spec/load_documents_spec.rb
177
+ - spec/load_file_spec.rb
178
+ - spec/load_spec.rb
179
+ - spec/load_stream_spec.rb
180
+ - spec/object_maker_spec.rb
181
+ - spec/parse_documents_spec.rb
182
+ - spec/parse_file_spec.rb
183
+ - spec/parse_spec.rb
184
+ - spec/parser_spec.rb
185
+ - spec/quick_emit_spec.rb
186
+ - spec/read_type_class_spec.rb
187
+ - spec/shared/each_document.rb
188
+ - spec/tag_class_spec.rb
189
+ - spec/tagged_classes_spec.rb
190
+ - spec/tagurize_spec.rb
191
+ - spec/to_yaml_spec.rb
192
+ - spec/transfer_spec.rb
193
+ - spec/try_implicit_spec.rb