kartograph 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
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