k_sequencing 0.1.24 → 0.1.25

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.
Files changed (38) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +4 -0
  3. data/.rubocop.yml +23 -0
  4. data/Gemfile +1 -1
  5. data/Gemfile.lock +27 -1
  6. data/README.md +17 -9
  7. data/Rakefile +12 -2
  8. data/docs/documentation.md +32 -35
  9. data/k_sequencing.gemspec +8 -6
  10. data/lib/k_sequencing.rb +0 -4
  11. data/lib/k_sequencing/client.rb +1 -3
  12. data/lib/k_sequencing/client_response.rb +4 -9
  13. data/lib/k_sequencing/connection.rb +24 -16
  14. data/lib/k_sequencing/faraday/raise_http_exception.rb +2 -8
  15. data/lib/k_sequencing/predictions.rb +2 -4
  16. data/lib/k_sequencing/version.rb +1 -1
  17. data/test/fixtures/image_choice/all.json +27 -0
  18. data/test/fixtures/image_choice/create.json +25 -0
  19. data/test/fixtures/image_closed_question/all.json +21 -0
  20. data/test/fixtures/image_closed_question/create.json +19 -0
  21. data/test/fixtures/image_message/all.json +22 -0
  22. data/test/fixtures/image_message/create.json +20 -0
  23. data/test/fixtures/image_photo_tag/all.json +22 -0
  24. data/test/fixtures/image_photo_tag/create.json +20 -0
  25. data/test/fixtures/prediction/all.json +21 -0
  26. data/test/fixtures/prediction/create.json +19 -0
  27. data/test/helper/file_reader.rb +11 -0
  28. data/test/k_sequencing/client_response_test.rb +29 -0
  29. data/test/k_sequencing/client_test.rb +189 -0
  30. data/test/k_sequencing/connection_test.rb +85 -0
  31. data/test/k_sequencing/image_choices_test.rb +38 -0
  32. data/test/k_sequencing/image_closed_questions_test.rb +38 -0
  33. data/test/k_sequencing/image_messages_test.rb +38 -0
  34. data/test/k_sequencing/image_photo_tags_test.rb +38 -0
  35. data/test/k_sequencing/predictions_test.rb +39 -0
  36. data/test/k_sequencing_test.rb +39 -0
  37. data/test/test_helper.rb +41 -0
  38. metadata +101 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 38a4a6e6b07c8700a78c5475ca785a5854aec409
4
- data.tar.gz: 2d7b1cbbad039ec2771f9467040f504e26be02ed
2
+ SHA256:
3
+ metadata.gz: bb40a5edd8f6bcb8ae994ec255414e33aa4b051db179cc8b17adac2db9dbb49f
4
+ data.tar.gz: 2dae9c18a27bd8f6d7a567f5d020f2bb9323c5fbabddb75f361eb055a24b3d6b
5
5
  SHA512:
6
- metadata.gz: 6ef7c06f7f59f3488bd01c49fd4dab100c262fd5644e54d4b3aa0db9f94bf0920ae6ab2a8109b0cd77a86bcd9fa14553722856aa6f93b13038f8ed357fbcf68d
7
- data.tar.gz: 58c41a4554893b88592200ec4bf804afe8f48bcf6dd622714b781bd9a6cebe0e115fd7a617c62c3b00cdb836b32983f5eb95d4c1e1f59bb845f4830fbf6a564c
6
+ metadata.gz: 1e8240e980a1aed8f08b0d7334b59dd6a304595828eb08ad2be23809cc3ed9e0added5cfc847495403b66e8ebb6281c5112472b2ac8fe8ee873284a6b987a1d0
7
+ data.tar.gz: c5f1f0d4a1dcc18b553aa6eccb42d84c4c4d47fe90eaa4ba0615e7827e92735e65687be09e5e38fc07c8fb1e3f00f10c5f8a151738aab51b0c8d091d6ca6fabd
data/.gitignore CHANGED
@@ -1,2 +1,6 @@
1
1
  *.gem
2
2
  *.DS_Store
3
+
4
+ tags
5
+
6
+ coverage/
@@ -0,0 +1,23 @@
1
+ ---
2
+ Metrics/AbcSize:
3
+ Max: 20
4
+ Metrics/ClassLength:
5
+ Max: 200
6
+ Metrics/LineLength:
7
+ Enabled: false
8
+ Metrics/MethodLength:
9
+ Max: 20
10
+ Style/Documentation:
11
+ Enabled: false
12
+ Style/HashSyntax:
13
+ Style: no_mixed_keys
14
+ Exclude:
15
+ - 'Rakefile'
16
+ Style/EmptyCaseCondition:
17
+ Enabled: false
18
+ Style/ParallelAssignment:
19
+ Enabled: false
20
+ Style/NumericPredicate:
21
+ Enabled: false
22
+ Style/WhileUntilModifier:
23
+ Enabled: false
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source "https://rubygems.org"
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- k_sequencing (0.1.23)
4
+ k_sequencing (0.1.25)
5
5
  faraday (~> 0.13.1, >= 0.13.1)
6
6
  faraday_middleware (~> 0.12.2, >= 0.12.2)
7
7
  json (~> 1.8, >= 1.8.3)
@@ -9,15 +9,41 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
+ addressable (2.5.2)
13
+ public_suffix (>= 2.0.2, < 4.0)
14
+ crack (0.4.3)
15
+ safe_yaml (~> 1.0.0)
16
+ docile (1.1.5)
12
17
  faraday (0.13.1)
13
18
  multipart-post (>= 1.2, < 3)
14
19
  faraday_middleware (0.12.2)
15
20
  faraday (>= 0.7.4, < 1.0)
21
+ hashdiff (0.3.7)
16
22
  json (1.8.6)
23
+ minitest (5.11.3)
17
24
  multipart-post (2.0.0)
25
+ public_suffix (3.0.1)
26
+ rake (12.3.0)
27
+ safe_yaml (1.0.4)
28
+ simplecov (0.15.1)
29
+ docile (~> 1.1.0)
30
+ json (>= 1.8, < 3)
31
+ simplecov-html (~> 0.10.0)
32
+ simplecov-html (0.10.2)
33
+ webmock (3.3.0)
34
+ addressable (>= 2.3.6)
35
+ crack (>= 0.3.2)
36
+ hashdiff
18
37
 
19
38
  PLATFORMS
20
39
  ruby
21
40
 
22
41
  DEPENDENCIES
23
42
  k_sequencing!
43
+ minitest (~> 5.11, >= 5.11.3)
44
+ rake (~> 12.3)
45
+ simplecov (~> 0.15.1)
46
+ webmock (~> 3.3)
47
+
48
+ BUNDLED WITH
49
+ 1.16.1
data/README.md CHANGED
@@ -14,9 +14,9 @@
14
14
 
15
15
  ## Getting Started
16
16
 
17
- KSequencing 0.1.24 works with Rails 4.1 onwards. You can add it to your Gemfile with:
17
+ KSequencing 0.1.25 works with Rails 4.1 onwards. You can add it to your Gemfile with:
18
18
  ```ruby
19
- gem 'k_sequencing', '~> 0.1.24'
19
+ gem 'k_sequencing', '~> 0.1.25'
20
20
  ```
21
21
  Then run bundle install
22
22
 
@@ -65,12 +65,23 @@ or
65
65
  KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]" })
66
66
  ```
67
67
 
68
+ Client can check whether request is success by
69
+
70
+ ```ruby
71
+ response = KSequencing.client.find_image("5a40be59fb9d7f27354c5efa")
72
+ if response.successful?
73
+ # Do stuff
74
+ else
75
+ log.error("Request was not success, somethings went wrong.")
76
+ end
77
+ ```
78
+
68
79
  ###### Sample response
69
- <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @value={}, />
80
+ <KSequencing::Response @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @data={}, />
70
81
 
71
82
  ```json
72
83
  {
73
- "value": {
84
+ "data": {
74
85
  "image": {
75
86
  "id": "5a40be59fb9d7f27354c5efa",
76
87
  "answer": "approved",
@@ -83,7 +94,6 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
83
94
  "status": "processed"
84
95
  }
85
96
  },
86
- "success": true,
87
97
  "status": 200,
88
98
  "message": "success",
89
99
  "meta": {
@@ -129,7 +139,7 @@ KSequencing.image_closed_question.create({
129
139
  ###### Sample response
130
140
  ```json
131
141
  {
132
- "value": {
142
+ "data": {
133
143
  "id": "5a40c77ffb9d7f27354c60c2",
134
144
  "answer": nil,
135
145
  "credit_charged": 0,
@@ -140,7 +150,6 @@ KSequencing.image_closed_question.create({
140
150
  "project_id": "project_id",
141
151
  "status": "unprocess"
142
152
  },
143
- "success": true,
144
153
  "status": 200,
145
154
  "message": "success",
146
155
  "meta": {
@@ -188,7 +197,7 @@ KSequencing.image_closed_question.all({
188
197
  ###### Sample results
189
198
  ```json
190
199
  {
191
- "value": {
200
+ "data": {
192
201
  "images": [
193
202
  {
194
203
  "answer": "approved",
@@ -215,7 +224,6 @@ KSequencing.image_closed_question.all({
215
224
  ...
216
225
  ]
217
226
  },
218
- "success": true,
219
227
  "status": 200,
220
228
  "message": "success",
221
229
  "total": 3,
data/Rakefile CHANGED
@@ -1,2 +1,12 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rake/testtask'
5
+
6
+ Rake::TestTask.new(:test) do |t|
7
+ t.libs << 'test'
8
+ t.libs << 'lib'
9
+ t.test_files = FileList['test/**/*_test.rb']
10
+ end
11
+
12
+ task default: :test
@@ -46,7 +46,7 @@ KSequencing.image_closed_question.create({
46
46
  ###### Sample response
47
47
  ```json
48
48
  {
49
- "value": {
49
+ "data": {
50
50
  "id": "5a40c77ffb9d7f27354c60c2",
51
51
  "answer": nil,
52
52
  "credit_charged": 0,
@@ -106,12 +106,12 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
106
106
  ```
107
107
 
108
108
  ###### Sample response
109
- <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @value={}, />
109
+ <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @data={}, />
110
110
 
111
111
  - approved
112
112
  ```json
113
113
  {
114
- "value": {
114
+ "data": {
115
115
  "image": {
116
116
  "id": "5a40be59fb9d7f27354c5efa",
117
117
  "answer": "approved",
@@ -127,7 +127,6 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
127
127
  "success": true,
128
128
  "status": 200,
129
129
  "message": "success",
130
- "total": nil,
131
130
  "meta": {
132
131
  "code": 200,
133
132
  "message": "success"
@@ -137,7 +136,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
137
136
  - declined
138
137
  ```json
139
138
  {
140
- "value": {
139
+ "data": {
141
140
  "image": {
142
141
  "id": "5a40be59fb9d7f27354c5efa",
143
142
  "answer": "declined",
@@ -153,7 +152,6 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
153
152
  "success": true,
154
153
  "status": 200,
155
154
  "message": "success",
156
- "total": nil,
157
155
  "meta": {
158
156
  "code": 200,
159
157
  "message": "success"
@@ -163,7 +161,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
163
161
  - kenta
164
162
  ```json
165
163
  {
166
- "value": {
164
+ "data": {
167
165
  "image": {
168
166
  "id": "5a40be59fb9d7f27354c5efa",
169
167
  "answer": "kenta",
@@ -179,7 +177,6 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
179
177
  "success": true,
180
178
  "status": 200,
181
179
  "message": "success",
182
- "total": nil,
183
180
  "meta": {
184
181
  "code": 200,
185
182
  "message": "success"
@@ -219,7 +216,7 @@ KSequencing.image_closed_question.all({
219
216
  ###### Sample results
220
217
  ```json
221
218
  {
222
- "value": {
219
+ "data": {
223
220
  "images": [
224
221
  {
225
222
  "answer": "approved",
@@ -297,7 +294,7 @@ KSequencing.image_choice.create({
297
294
  ###### Sample response
298
295
  ```json
299
296
  {
300
- "value": {
297
+ "data": {
301
298
  "id": "5a40d924eecee03cb247f0dd",
302
299
  "allow_empty": false,
303
300
  "answer": [],
@@ -341,7 +338,7 @@ KSequencing.image_choice.create({
341
338
  ###### Sample response
342
339
  ```json
343
340
  {
344
- "value": {
341
+ "data": {
345
342
  "id": "5a40d924eecee03cb247f0dd",
346
343
  "allow_empty": false,
347
344
  "answer": [],
@@ -384,7 +381,7 @@ KSequencing.image_choice.create({
384
381
  ###### Sample response
385
382
  ```json
386
383
  {
387
- "value": {
384
+ "data": {
388
385
  "id": "5a40d924eecee03cb247f0dd",
389
386
  "allow_empty": true,
390
387
  "answer": [],
@@ -453,12 +450,12 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
453
450
  ```
454
451
 
455
452
  ###### Sample response
456
- <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @value={}, />
453
+ <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @data={}, />
457
454
 
458
455
  For one answer
459
456
  ```json
460
457
  {
461
- "value": {
458
+ "data": {
462
459
  "image": {
463
460
  "id": "5a40de95aa05617baebfb01f",
464
461
  "allow_empty": false,
@@ -492,7 +489,7 @@ For one answer
492
489
  For multiple answer
493
490
  ```json
494
491
  {
495
- "value": {
492
+ "data": {
496
493
  "image": {
497
494
  "id": "5a40de95aa05617baebfb01f",
498
495
  "allow_empty": false,
@@ -526,7 +523,7 @@ For multiple answer
526
523
  For allow empty answer
527
524
  ```json
528
525
  {
529
- "value": {
526
+ "data": {
530
527
  "image": {
531
528
  "id": "5a40de95aa05617baebfb01f",
532
529
  "allow_empty": true,
@@ -588,7 +585,7 @@ KSequencing.image_choice.all({
588
585
  ###### Sample results
589
586
  ```json
590
587
  {
591
- "value": {
588
+ "data": {
592
589
  "images": [
593
590
  {
594
591
  "id": "5a40de95aa05617baebfb01f",
@@ -675,7 +672,7 @@ KSequencing.image_message.create({
675
672
  ###### Sample response
676
673
  ```json
677
674
  {
678
- "value": {
675
+ "data": {
679
676
  "id": "5a41b2a8fb9d7f27354c83d8",
680
677
  "allow_empty": false,
681
678
  "answer": [],
@@ -743,11 +740,11 @@ KSequencing.client.find_image("5a41b7b2fb9d7f27354c84d4", { token: "[you_token]"
743
740
  ```
744
741
 
745
742
  ###### Sample response
746
- <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @value={}, />
743
+ <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @data={}, />
747
744
 
748
745
  ```json
749
746
  {
750
- "value": {
747
+ "data": {
751
748
  "image": {
752
749
  "id": "5a41b7b2fb9d7f27354c84d4",
753
750
  "answer": "sky blue",
@@ -802,7 +799,7 @@ KSequencing.image_message.all({
802
799
  ###### Sample results
803
800
  ```json
804
801
  {
805
- "value": {
802
+ "data": {
806
803
  "images": [
807
804
  {
808
805
  "answer": "sky blue",
@@ -887,7 +884,7 @@ KSequencing.image_photo_tag.create({
887
884
  ###### Sample response
888
885
  ```json
889
886
  {
890
- "value": {
887
+ "data": {
891
888
  "id": "5a41bc09aa05617baa2832f8",
892
889
  "answer": [],
893
890
  "credit_charged": 0,
@@ -954,12 +951,12 @@ KSequencing.client.find_image("5a41bc09aa05617baa2832f8", { token: "[you_token]"
954
951
  ```
955
952
 
956
953
  ###### Sample response
957
- <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @value={}, />
954
+ <KSequencing::Response @success=true, @status=200, @message="success" @meta={"code"=>200, "message"=>"success"}, @data={}, />
958
955
 
959
956
  - one answer
960
957
  ```json
961
958
  {
962
- "value": {
959
+ "data": {
963
960
  "image": {
964
961
  "id": "5a41bd55aa05617baa283338",
965
962
  "answer": [
@@ -995,7 +992,7 @@ KSequencing.client.find_image("5a41bc09aa05617baa2832f8", { token: "[you_token]"
995
992
  - two answer
996
993
  ```json
997
994
  {
998
- "value": {
995
+ "data": {
999
996
  "image": {
1000
997
  "id": "5a41bc09aa05617baa2832f8",
1001
998
  "answer": [
@@ -1067,7 +1064,7 @@ KSequencing.image_photo_tag.all({
1067
1064
  ###### Sample results
1068
1065
  ```json
1069
1066
  {
1070
- "value": {
1067
+ "data": {
1071
1068
  "images": [
1072
1069
  {
1073
1070
  "id": "5a41bd55aa05617baa283338",
@@ -1170,7 +1167,7 @@ KSequencing.prediction.create(
1170
1167
  ###### Sample response
1171
1168
  ```json
1172
1169
  {
1173
- "value": {
1170
+ "data": {
1174
1171
  "id": "5a41c388aa05617baa283457",
1175
1172
  "answer": nil,
1176
1173
  "credit_charged": 0,
@@ -1200,7 +1197,7 @@ POST "https://example.com/callbacks?answer=approved&custom_id=&image_id=5a41c388
1200
1197
  ###### Sample response
1201
1198
  ```json
1202
1199
  {
1203
- "value": {
1200
+ "data": {
1204
1201
  "id": "5a41ce6eaa05617baa2836aa",
1205
1202
  "answer": nil,
1206
1203
  "credit_charged": 0,
@@ -1230,7 +1227,7 @@ POST "https://example.com/callbacks?answer[0][id]=0&answer[0][x]=331&answer[0][y
1230
1227
  ###### Sample response
1231
1228
  ```json
1232
1229
  {
1233
- "value": {
1230
+ "data": {
1234
1231
  "id": "5a41d011fb9d7f273a75a62d",
1235
1232
  "answer": nil,
1236
1233
  "credit_charged": 0,
@@ -1260,7 +1257,7 @@ POST "https://example.com/callbacks?answer[result][][gender]=male&answer[result]
1260
1257
  ###### Sample response
1261
1258
  ```json
1262
1259
  {
1263
- "value": {
1260
+ "data": {
1264
1261
  "id": "5a41d10efb9d7f27354c8963",
1265
1262
  "answer": nil,
1266
1263
  "credit_charged": 0,
@@ -1323,7 +1320,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
1323
1320
  ###### Sample response
1324
1321
  ```json
1325
1322
  {
1326
- "value": {
1323
+ "data": {
1327
1324
  "image": {
1328
1325
  "id": "5a40a134fb9d7f273a7574d1",
1329
1326
  "answer": "approved",
@@ -1350,7 +1347,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
1350
1347
  ###### Sample response
1351
1348
  ```json
1352
1349
  {
1353
- "value": {
1350
+ "data": {
1354
1351
  "image": {
1355
1352
  "id": "5a40a2a6aa05617baa2805c0",
1356
1353
  "answer": {
@@ -1379,7 +1376,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
1379
1376
  ###### Sample response
1380
1377
  ```json
1381
1378
  {
1382
- "value": {
1379
+ "data": {
1383
1380
  "image": {
1384
1381
  "id": "5a41d011fb9d7f273a75a62d",
1385
1382
  "answer": {
@@ -1418,7 +1415,7 @@ KSequencing.client.find_image("5a40be59fb9d7f27354c5efa", { token: "[you_token]"
1418
1415
  ###### Sample response
1419
1416
  ```json
1420
1417
  {
1421
- "value": {
1418
+ "data": {
1422
1419
  "image": {
1423
1420
  "id": "5a41d110aa05617baebfd46f",
1424
1421
  "answer": "approved",
@@ -1444,7 +1441,7 @@ if prediction [ai_human] processed by human you will find answer human from Get
1444
1441
  ###### example
1445
1442
  ```json
1446
1443
  {
1447
- "value": {
1444
+ "data": {
1448
1445
  "images": [
1449
1446
  {
1450
1447
  "id": "5a41d10efb9d7f27354c8963",