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 +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/datawow.gemspec +2 -2
- data/lib/datawow.rb +1 -1
- data/lib/datawow/connector.rb +12 -17
- data/lib/datawow/models/images/image_choices.rb +1 -0
- data/lib/datawow/models/images/image_closed_questions.rb +1 -0
- data/lib/datawow/models/images/image_messages.rb +1 -0
- data/lib/datawow/models/images/image_photo_tags.rb +1 -0
- data/lib/datawow/models/images/nanameue_human.rb +1 -0
- data/lib/datawow/models/texts/text_categories.rb +1 -0
- data/lib/datawow/models/texts/text_closed_questions.rb +1 -0
- data/lib/datawow/models/texts/text_conversations.rb +1 -0
- data/lib/datawow/response.rb +40 -0
- data/lib/datawow/version.rb +1 -1
- data/test/datawow/response_test.rb +44 -0
- metadata +4 -4
- data/lib/datawow/client_response.rb +0 -18
- data/test/datawow/client_response_test.rb +0 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 194e56d69db61858af9f9877639298804d656214f1c7234264c6dc88580dc5b4
|
4
|
+
data.tar.gz: 4b52c38056dc6e8c582fadc71ca1e95af3c190424446414f80b7b4fa1b1f3b16
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b3975e22dec780e2c62c2a2d136bb55fd882438fd20262512f133ba32aa522ee5c7f070af6aed025774841289a5f071a0b57643139916c7f355a5ee1ed1a61b6
|
7
|
+
data.tar.gz: d2c947445ad4e0340de5cfaeea55193cb5eb9ac97d69a7c37f5a8f90fc0dcc657c9c09dff999b032c4632508efd2ebe17104308343d32c537233cd536b7e1fd4
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
data/datawow.gemspec
CHANGED
@@ -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.
|
9
|
-
s.date = '2019-
|
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')
|
data/lib/datawow.rb
CHANGED
data/lib/datawow/connector.rb
CHANGED
@@ -5,7 +5,7 @@ require 'net/https'
|
|
5
5
|
require 'uri'
|
6
6
|
require 'json'
|
7
7
|
|
8
|
-
require File.expand_path('
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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:
|
110
|
-
text:
|
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
|
@@ -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
|
data/lib/datawow/version.rb
CHANGED
@@ -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.
|
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-
|
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
|