datawow 1.4.2 → 1.4.3

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
  SHA256:
3
- metadata.gz: 4b374a165eb0735d634ea3cdffa68790023419fa02736cb6fa5d632d2a7ec18c
4
- data.tar.gz: 11deb66ba61a1ba30701935f56bbabf5643aa5d5b3d4bcfc4c97b8820d0a48c3
3
+ metadata.gz: 194e56d69db61858af9f9877639298804d656214f1c7234264c6dc88580dc5b4
4
+ data.tar.gz: 4b52c38056dc6e8c582fadc71ca1e95af3c190424446414f80b7b4fa1b1f3b16
5
5
  SHA512:
6
- metadata.gz: 13cd5d468aabddacd7fc149c14627297c8edcca925156b70042bc65e5296e4c501e314eeed5bcd4532559296970b38c311f4fc4134d4648476b856fac4e30d6b
7
- data.tar.gz: 3c30f6acb2780ce4e8db3883538b12fb829a99e8c3d3e786390a1180bfe773338b4df87fdaee5ab2822c7801c1aa159730fc37da923a52175b190cc454cc5213
6
+ metadata.gz: b3975e22dec780e2c62c2a2d136bb55fd882438fd20262512f133ba32aa522ee5c7f070af6aed025774841289a5f071a0b57643139916c7f355a5ee1ed1a61b6
7
+ data.tar.gz: d2c947445ad4e0340de5cfaeea55193cb5eb9ac97d69a7c37f5a8f90fc0dcc657c9c09dff999b032c4632508efd2ebe17104308343d32c537233cd536b7e1fd4
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- datawow (1.3.2)
4
+ datawow (1.4.3)
5
5
  json (~> 1.8, >= 1.8.3)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -6,7 +6,7 @@ HTTP RESTFul for calling DataWow APIs
6
6
 
7
7
  # Installation
8
8
  ```ruby
9
- gem 'datawow', '~> 1.4.2'
9
+ gem 'datawow', '~> 1.4.3'
10
10
  ```
11
11
 
12
12
  ### Rails
@@ -5,8 +5,8 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = 'datawow'
8
- s.version = '1.4.2'
9
- s.date = '2019-01-04'
8
+ s.version = '1.4.3'
9
+ s.date = '2019-02-13'
10
10
  s.summary = 'HTTP RESTFul for calling DataWow APIs'
11
11
  s.description = 'Moderation suite'
12
12
  s.post_install_message = File.read('INSTALL.md') if File.exist?('INSTALL.md')
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'datawow/client_response'
2
+ require_relative 'datawow/response'
3
3
  require_relative 'datawow/connector'
4
4
  require_relative 'datawow/error'
5
5
  require_relative 'datawow/version'
@@ -5,7 +5,7 @@ require 'net/https'
5
5
  require 'uri'
6
6
  require 'json'
7
7
 
8
- require File.expand_path('client_response.rb', __dir__)
8
+ require File.expand_path('response.rb', __dir__)
9
9
 
10
10
  module Datawow
11
11
  # :nodoc:
@@ -21,34 +21,29 @@ module Datawow
21
21
  def post(data = {})
22
22
  @method = :POST
23
23
  response = send_request(data)
24
-
25
- body = JSON.parse response.body
26
-
27
- Response.new(body['data'], response.code, body['meta']['message'], body['meta'], 1)
24
+ response_body = JSON.parse response.body
25
+ Response.new(response_body, response.code)
28
26
  end
29
27
 
30
28
  def get(data = {}, query_str = true)
31
29
  @method = :GET
32
30
  response = send_request(data, query_str)
33
- body = JSON.parse response.body
34
-
35
- Response.new(body['data'], response.code, body['meta']['message'], body['meta'], body['meta']['total_count'])
31
+ response_body = JSON.parse response.body
32
+ Response.new(response_body, response.code)
36
33
  end
37
34
 
38
35
  def put(data = {})
39
36
  @method = :PUT
40
37
  response = send_request(data)
41
- body = JSON.parse response.body
42
-
43
- Response.new(body['data'], response.code, body['meta']['message'], body['meta'], 1)
38
+ response_body = JSON.parse response.body
39
+ Response.new(response_body, response.code)
44
40
  end
45
41
 
46
42
  def delete(data = {}, query_str = true)
47
43
  @method = :DELETE
48
44
  response = send_request(data, query_str)
49
- body = JSON.parse response.body
50
-
51
- Response.new(body['data'], response.code, body['meta']['message'], body['meta'], body['meta']['total_count'])
45
+ response_body = JSON.parse response.body
46
+ Response.new(response_body, response.code)
52
47
  end
53
48
 
54
49
  private
@@ -71,7 +66,7 @@ module Datawow
71
66
  https.use_ssl = true
72
67
  request = build_request(uri)
73
68
  request.body = data.to_json
74
- response = https.request(request)
69
+ https.request(request)
75
70
  end
76
71
 
77
72
  def build_request(uri)
@@ -106,8 +101,8 @@ module Datawow
106
101
  def base_point(type)
107
102
  {
108
103
  image: 'https://kiyo-image.datawow.io/api',
109
- ai: 'https://kiyo-image.datawow.io/api',
110
- text: 'https://kiyo-text.datawow.io/api',
104
+ ai: 'https://kiyo-image.datawow.io/api',
105
+ text: 'https://kiyo-text.datawow.io/api',
111
106
  video: 'https://kiyo-image.datawow.io/api'
112
107
  }[type]
113
108
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :image
13
+ @query_str ||= nil
13
14
  @path = 'images/choices'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :image
13
+ @query_str ||= nil
13
14
  @path = 'images/closed_questions'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :image
13
+ @query_str ||= nil
13
14
  @path = 'images/messages'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :image
13
+ @query_str ||= nil
13
14
  @path ='images/photo_tags'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize(token = nil)
11
11
  @project_key = token
12
12
  @type = :image
13
+ @query_str ||= nil
13
14
  @path = 'jobs/nanameue/consensuses'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :text
13
+ @query_str ||= nil
13
14
  @path = 'text/text_categories'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :text
13
+ @query_str ||= nil
13
14
  @path = 'text/text_closed_questions'
14
15
  end
15
16
  end
@@ -10,6 +10,7 @@ module Datawow
10
10
  def initialize
11
11
  @project_key = nil
12
12
  @type = :text
13
+ @query_str ||= nil
13
14
  @path = 'text/text_conversations'
14
15
  end
15
16
  end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Datawow
4
+ class Response
5
+ attr_reader :body, :code
6
+
7
+ def initialize(body, code)
8
+ @body = body
9
+ @code = code.to_i
10
+ end
11
+
12
+ def successful?
13
+ [200, 201].include? code
14
+ end
15
+
16
+ def data
17
+ body['data']
18
+ end
19
+
20
+ def status
21
+ code
22
+ end
23
+
24
+ def error
25
+ body['error'] unless successful?
26
+ end
27
+
28
+ def message
29
+ meta['message']
30
+ end
31
+
32
+ def meta
33
+ body['meta']
34
+ end
35
+
36
+ def total
37
+ meta['total_count'] || 0
38
+ end
39
+ end
40
+ end
@@ -1,3 +1,3 @@
1
1
  module Datawow
2
- VERSION = '1.4.2'.freeze
2
+ VERSION = '1.4.3'.freeze
3
3
  end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'test_helper'
4
+
5
+ module Datawow
6
+ class ResponseTest < Minitest::Test
7
+ def test_new_success_response
8
+ response_body = {
9
+ 'data' => 'anything',
10
+ 'code' => 200,
11
+ 'meta' => {
12
+ 'message' => 'success',
13
+ 'total_count' => 1
14
+ }
15
+ }
16
+
17
+ response = Response.new(response_body, response_body['code'])
18
+ refute_nil(response)
19
+ refute_nil(response.data)
20
+ assert_equal(true, response.successful?)
21
+ assert_equal('anything', response.data)
22
+ assert_equal('success', response.message)
23
+ assert_equal({ 'message' => 'success', 'total_count' => 1 }, response.meta)
24
+ assert_equal(1, response.total)
25
+ end
26
+
27
+ def test_failure_response
28
+ response_body = {
29
+ 'data' => 'nothing',
30
+ 'code' => 500,
31
+ 'meta' => { 'message' => 'failure' }
32
+ }
33
+
34
+ response = Response.new(response_body, response_body['code'])
35
+ refute_nil(response)
36
+ refute_nil(response.data)
37
+ assert_equal(false, response.successful?)
38
+ assert_equal('nothing', response.data)
39
+ assert_equal('failure', response.message)
40
+ assert_equal({ 'message' => 'failure' }, response.meta)
41
+ assert_equal(0, response.total)
42
+ end
43
+ end
44
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datawow
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.2
4
+ version: 1.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jesdakorn Samittiauttakorn
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-04 00:00:00.000000000 Z
11
+ date: 2019-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -111,7 +111,6 @@ files:
111
111
  - Rakefile
112
112
  - datawow.gemspec
113
113
  - lib/datawow.rb
114
- - lib/datawow/client_response.rb
115
114
  - lib/datawow/connector.rb
116
115
  - lib/datawow/error.rb
117
116
  - lib/datawow/models/images/document_verification.rb
@@ -127,10 +126,10 @@ files:
127
126
  - lib/datawow/models/texts/text_conversations.rb
128
127
  - lib/datawow/models/texts/text_ja.rb
129
128
  - lib/datawow/models/videos/video_classifications.rb
129
+ - lib/datawow/response.rb
130
130
  - lib/datawow/version.rb
131
131
  - lib/generators/datawow/install_generator.rb
132
132
  - lib/generators/templates/datawow_api.rb
133
- - test/datawow/client_response_test.rb
134
133
  - test/datawow/connector_test.rb
135
134
  - test/datawow/image_choices_test.rb
136
135
  - test/datawow/image_closed_questions_test.rb
@@ -139,6 +138,7 @@ files:
139
138
  - test/datawow/image_photo_tags_test.rb
140
139
  - test/datawow/nanameue_human_test.rb
141
140
  - test/datawow/predictors_test.rb
141
+ - test/datawow/response_test.rb
142
142
  - test/datawow/text_categories_test.rb
143
143
  - test/datawow/text_closed_questions_test.rb
144
144
  - test/datawow/text_conversations_test.rb
@@ -1,18 +0,0 @@
1
- module Datawow
2
- class Response
3
- attr_reader :total, :message, :status
4
- attr_accessor :data, :meta
5
-
6
- def initialize(data, response_code = '', response_message = 'success', meta = nil, total = 0)
7
- @data = data
8
- @status = response_code.to_i
9
- @message = response_message
10
- @meta = meta
11
- @total = total unless total.nil?
12
- end
13
-
14
- def successful?
15
- [200, 201].include? status
16
- end
17
- end
18
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module Datawow
6
- class ResponseTest < Minitest::Test
7
- def test_new_success_response
8
- response = Response.new('response', 200, 'success', 'meta', 5)
9
- refute_nil(response)
10
- refute_nil(response.data)
11
- assert_equal(true, response.successful?)
12
- assert_equal('response', response.data)
13
- assert_equal('success', response.message)
14
- assert_equal('meta', response.meta)
15
- assert_equal(5, response.total)
16
- end
17
-
18
- def test_failure_response
19
- response = Response.new('response', 500, 'failure', 'meta')
20
- refute_nil(response)
21
- refute_nil(response.data)
22
- assert_equal(false, response.successful?)
23
- assert_equal('response', response.data)
24
- assert_equal('failure', response.message)
25
- assert_equal('meta', response.meta)
26
- assert_equal(0, response.total)
27
- end
28
- end
29
- end