kartograph 0.0.5 → 0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8deae11e80c043936e10a361a4f0d0e17a888eb6
4
- data.tar.gz: 59728e086ed887a4f7a0bdbaab255a4a4f8b1401
3
+ metadata.gz: a5af5f7be8e9504c342f95484c349619f678ff61
4
+ data.tar.gz: 99fd01c9d91b017907ed9716b24d9c28100ebde0
5
5
  SHA512:
6
- metadata.gz: e487d8c6c2acc836634e18b151475f7282ed6df4db70982a794cedaa5f00b9f06147f05b8dc7adf6065d14fac3d6aa57f98ee011eb75db2e6779970c2684e420
7
- data.tar.gz: 13680e2ccdc4d64cc9345d4b1dc21deccb4c9d90aca9b7b6583e9477697754d611e2c5a19197a62b93ce7e2d68dc63c084757b8e835fe9331e6a9dd43cb8219c
6
+ metadata.gz: b8ef08180546de7f53a88f49960e36090ca36e77e8cdb83da34dd8b31b0d8f5334bbe92a00ce31be2b9ffec1ffa4cdeb1067965a978450229fc9f03133e71b1c
7
+ data.tar.gz: b4458ec9475057f8d92e8039a88424f5c07efe00d0475444fa572b75c234a8adec2e2af630fd263c0f504fcdd88e939a2c1bb9b72b61466e23ff65893492fefb
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Kartograph
2
2
 
3
- TODO: Write a gem description
3
+ A Serialization / Deserialization library.
4
4
 
5
5
  ## Installation
6
6
 
@@ -12,10 +12,6 @@ And then execute:
12
12
 
13
13
  $ bundle
14
14
 
15
- Or install it yourself as:
16
-
17
- $ gem install kartograph
18
-
19
15
  ## Usage
20
16
 
21
17
  Kartograph makes it easy to generate and convert JSON. It's intention is to be used for API clients.
@@ -142,7 +138,7 @@ Now when JSON includes comments for a user, it will know how to map the comments
142
138
 
143
139
  ## Contributing
144
140
 
145
- 1. Fork it ( https://github.com/[my-github-username]/kartograph/fork )
141
+ 1. Fork it ( https://github.com/digitaloceancloud/kartograph/fork )
146
142
  2. Create your feature branch (`git checkout -b my-new-feature`)
147
143
  3. Commit your changes (`git commit -am 'Add some feature'`)
148
144
  4. Push to the branch (`git push origin my-new-feature`)
@@ -54,11 +54,11 @@ module Kartograph
54
54
  private
55
55
 
56
56
  def sculpt_value(value, scope)
57
- plural? ? value.map {|v| Sculptor.new(v, map).sculpt(scope) } : Sculptor.new(value, map).sculpt(scope)
57
+ plural? ? Array(value).map {|v| Sculptor.new(v, map).sculpt(scope) } : Sculptor.new(value, map).sculpt(scope)
58
58
  end
59
59
 
60
60
  def artist_value(value, scope)
61
- plural? ? value.map {|v| Artist.new(v, map).draw(scope) } : Artist.new(value, map).draw(scope)
61
+ plural? ? Array(value).map {|v| Artist.new(v, map).draw(scope) } : Artist.new(value, map).draw(scope)
62
62
  end
63
63
  end
64
64
  end
@@ -1,4 +1,4 @@
1
1
  module Kartograph
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
4
4
 
@@ -177,6 +177,24 @@ describe Kartograph::Property do
177
177
  expect(value[1].id).to eq(hash[:hello][1]['id'])
178
178
  expect(value[1].name).to eq(hash[:hello][1]['name'])
179
179
  end
180
+
181
+ context 'when set to plural but the key is nil' do
182
+ it 'returns an empty array' do
183
+ dummy_class = Struct.new(:id, :name)
184
+
185
+ nested_property = Kartograph::Property.new(:hello, plural: true) do
186
+ mapping dummy_class
187
+
188
+ property :id
189
+ property :name
190
+ end
191
+
192
+ hash = { hello: nil }
193
+ value = nested_property.value_from(hash)
194
+
195
+ expect(value).to eq([])
196
+ end
197
+ end
180
198
  end
181
199
  end
182
200
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kartograph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Ross
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-04 00:00:00.000000000 Z
11
+ date: 2014-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler