edamam-ruby 0.1.6 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2273ec49c3840265def0a3d22b1a728be55fb369
4
- data.tar.gz: 4cc148824fc62934a8d739dc0bbe1fdaa4522596
3
+ metadata.gz: 3b76df735f45c0ad1745b4e6d64e726437c3b54e
4
+ data.tar.gz: 00598ff0c664fa78bd7f206b619df40c4bf2601f
5
5
  SHA512:
6
- metadata.gz: d981632ed13ec57a6fbc7094dbd25d6fe69e269660d04d3cc76f70e6e7c6de3035300a4bd3f7ecdac130df97593550ef8a68ae645afed0ab02d95c20c555f151
7
- data.tar.gz: b81c91f475b802f7ccb71d051d187315afc449ab259acd10d007793a3f713fd1ca1ed8be6e33941bc5c164a0d201ff42dc75b21dd50eb5fe097d98d3446c1195
6
+ metadata.gz: f428530d6c7d1d4d5bea02ce5998be9f4421507bc087277a7f2f10551e45696e1f1c6e16711149c2f87a84351946de720b40b5a9cd65ec6589e3477ebf885aba
7
+ data.tar.gz: 59c8182fdd6e122a9950113b28411d0cb4c012912349a0cdffde02b7b0c4960e656ea14458958054eda5ee4cfd0e847380c1cfb2f0928db770589dd641f7da9b
@@ -0,0 +1 @@
1
+ 2.3.0
@@ -3,9 +3,11 @@ require "uri"
3
3
  require "ostruct"
4
4
  require "json"
5
5
  require "logger"
6
+ require "forwardable"
6
7
  require "edamam-ruby/version"
7
8
  require "edamam-ruby/utils/errors"
8
9
  require "edamam-ruby/utils/api"
10
+ require "edamam-ruby/total_nutrients"
9
11
  require "edamam-ruby/utils/connection"
10
12
  require "edamam-ruby/food_database"
11
13
  require "edamam-ruby/client"
@@ -7,10 +7,19 @@ module Edamam
7
7
 
8
8
  def nutritional_data(ingredient)
9
9
  connection = Utils::Connection.new
10
- connection.get(
10
+ status_code, response = connection.get(
11
11
  Utils::Api::FOOD_DATABASE_URL,
12
12
  app_id: client.app_id, app_key: client.app_key, ingr: ingredient
13
13
  )
14
+ process_response(status_code, response)
15
+ end
16
+
17
+ private
18
+
19
+ def process_response(status, body)
20
+ if status
21
+ Response::TotalNutrients.new(total_nutrients: body["totalNutrients"])
22
+ end
14
23
  end
15
24
  end
16
25
  end
@@ -0,0 +1,17 @@
1
+ module Edamam
2
+ module Response
3
+ class TotalNutrients
4
+ def initialize(total_nutrients:)
5
+ @total_nutrients = total_nutrients
6
+ end
7
+
8
+ def kilocalories
9
+ total_nutrients["ENERC_KCAL"]["quantity"]
10
+ end
11
+
12
+ private
13
+
14
+ attr_reader :total_nutrients
15
+ end
16
+ end
17
+ end
@@ -27,8 +27,7 @@ module Edamam
27
27
 
28
28
  VERB_MAP.keys.each do |method_name|
29
29
  define_method(method_name) do |path, params, header = {}|
30
- status_code, body = process_request(method_name, path, params, header)
31
- OpenStruct.new(body.merge(code: status_code)) if status_code
30
+ process_request(method_name, path, params, header)
32
31
  end
33
32
  end
34
33
 
@@ -1,3 +1,3 @@
1
1
  module Edamam
2
- VERSION = "0.1.6".freeze
2
+ VERSION = "0.2.0".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: edamam-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Olalekan Eyiowuawi
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2017-03-08 00:00:00.000000000 Z
13
+ date: 2017-05-17 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: bundler
@@ -95,6 +95,7 @@ files:
95
95
  - ".hound.yml"
96
96
  - ".rspec"
97
97
  - ".rubocop.yml"
98
+ - ".ruby-version"
98
99
  - ".travis.yml"
99
100
  - CODE_OF_CONDUCT.md
100
101
  - Gemfile
@@ -107,6 +108,7 @@ files:
107
108
  - lib/edamam-ruby.rb
108
109
  - lib/edamam-ruby/client.rb
109
110
  - lib/edamam-ruby/food_database.rb
111
+ - lib/edamam-ruby/total_nutrients.rb
110
112
  - lib/edamam-ruby/utils/api.rb
111
113
  - lib/edamam-ruby/utils/connection.rb
112
114
  - lib/edamam-ruby/utils/errors.rb