scaleapi-ruby 0.0.1 → 0.1.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 +4 -4
- data/Gemfile +5 -2
- data/README.md +38 -7
- data/VERSION +1 -1
- data/lib/scale.rb +2 -0
- data/lib/scale/api.rb +1 -1
- data/lib/scale/endpoints/tasks/create_data_collection_task.rb +16 -0
- data/lib/scale/endpoints/tasks/list_tasks.rb +3 -3
- data/lib/scale/resources/base.rb +1 -1
- data/lib/scale/resources/task.rb +4 -1
- data/lib/scale/resources/tasks.rb +18 -0
- data/scaleapi-ruby.gemspec +101 -0
- data/test/fixtures/vcr_cassettes/tasks.yml +622 -1480
- data/test/tasks/test_cancel_task.rb +1 -0
- data/test/tasks/test_create_annotation_task.rb +7 -3
- data/test/tasks/test_create_data_collection_task.rb +41 -0
- data/test/tasks/test_create_phonecall_task.rb +2 -1
- data/test/tasks/test_list_tasks.rb +1 -1
- data/test/tasks/test_retrieve_task.rb +1 -0
- metadata +6 -2
@@ -9,6 +9,7 @@ class TestCancelTask < Test::Unit::TestCase
|
|
9
9
|
phone_number: '5055006865',
|
10
10
|
entity_name: 'Alexandr Wang',
|
11
11
|
fields: { email: 'Email Address' },
|
12
|
+
script: 'Hello ! Are you happy today? (pause) One more thing - what is your email address?',
|
12
13
|
choices: ['He is happy', 'He is not happy']
|
13
14
|
|
14
15
|
# Then, try canceling it
|
@@ -7,7 +7,11 @@ class TestCreateAnnotationTask < Test::Unit::TestCase
|
|
7
7
|
attachment_type: "image",
|
8
8
|
attachment: "http://i.imgur.com/v4cBreD.jpg",
|
9
9
|
objects_to_annotate: ["baby cow", "big cow"],
|
10
|
-
with_labels: true
|
10
|
+
with_labels: true,
|
11
|
+
examples: [
|
12
|
+
{ correct: false, image: 'http://i.imgur.com/lj6e98s.jpg', explanation: 'The boxes are tight and accurate' },
|
13
|
+
{ correct: true, image: 'http://i.imgur.com/HIrvIDq.jpg', explanation: 'The boxes are neither accurate nor complete' }
|
14
|
+
]
|
11
15
|
|
12
16
|
@invalid_parameters = Scale.hash
|
13
17
|
end
|
@@ -16,7 +20,7 @@ class TestCreateAnnotationTask < Test::Unit::TestCase
|
|
16
20
|
VCR.use_cassette 'tasks' do
|
17
21
|
task = scale.create_annotation_task @valid_parameters
|
18
22
|
assert_equal task.class, Scale::Resources::Task
|
19
|
-
assert_equal task.params, @valid_parameters.select { |k| %Q(attachment_type attachment objects_to_annotate with_labels).include? k.to_s }
|
23
|
+
assert_equal task.params, @valid_parameters.select { |k| %Q(attachment_type attachment explanation objects_to_annotate examples with_labels).include? k.to_s }
|
20
24
|
end
|
21
25
|
end
|
22
26
|
|
@@ -33,7 +37,7 @@ class TestCreateAnnotationTask < Test::Unit::TestCase
|
|
33
37
|
end
|
34
38
|
|
35
39
|
assert_equal exception.code, 400
|
36
|
-
assert_equal exception.message, 'Please provide
|
40
|
+
assert_equal exception.message, 'Please provide an attachment as a URL or plaintext.'
|
37
41
|
end
|
38
42
|
end
|
39
43
|
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
class TestCreateDataCollectionTask < Test::Unit::TestCase
|
4
|
+
context 'create a comparison task' do
|
5
|
+
setup do
|
6
|
+
@valid_parameters = Scale.hash callback_url: 'http://www.example.com/callback',
|
7
|
+
instruction: 'Find the URL for the hiring page for the company with attached website.',
|
8
|
+
attachment_type: 'website',
|
9
|
+
attachment: 'https://www.scaleapi.com/',
|
10
|
+
fields: { hiring_page: 'Hiring Page URL' }
|
11
|
+
|
12
|
+
@invalid_parameters = Scale.hash instruction: 'Test instruction',
|
13
|
+
fields: { hiring_page: 'Hiring Page URL' }
|
14
|
+
end
|
15
|
+
|
16
|
+
should 'create a valid data collection task' do
|
17
|
+
VCR.use_cassette 'tasks' do
|
18
|
+
task = scale.create_data_collection_task @valid_parameters
|
19
|
+
assert_equal task.class, Scale::Resources::Task
|
20
|
+
assert_equal task.params, @valid_parameters.select { |k| %Q(fields attachments attachment_type).include? k.to_s }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
should 'raise a 400 (bad request) error with invalid parameters' do
|
25
|
+
VCR.use_cassette 'tasks' do
|
26
|
+
assert_raise Scale::HttpError do
|
27
|
+
scale.create_data_collection_task @invalid_parameters
|
28
|
+
end
|
29
|
+
|
30
|
+
begin
|
31
|
+
scale.create_data_collection_task @invalid_parameters
|
32
|
+
rescue => e
|
33
|
+
exception = e
|
34
|
+
end
|
35
|
+
|
36
|
+
assert_equal exception.code, 400
|
37
|
+
assert_equal exception.message, 'Invalid attachment_type - please choose one of these: text website'
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -7,6 +7,7 @@ class TestCreatePhonecallTask < Test::Unit::TestCase
|
|
7
7
|
phone_number: '5055006865',
|
8
8
|
entity_name: 'Alexandr Wang',
|
9
9
|
fields: { email: 'Email Address' },
|
10
|
+
script: 'Hello ! Are you happy today? (pause) One more thing - what is your email address?',
|
10
11
|
choices: ['He is happy', 'He is not happy']
|
11
12
|
|
12
13
|
@invalid_parameters = Scale.hash instruction: 'Test instruction',
|
@@ -17,7 +18,7 @@ class TestCreatePhonecallTask < Test::Unit::TestCase
|
|
17
18
|
VCR.use_cassette 'tasks' do
|
18
19
|
task = scale.create_phonecall_task @valid_parameters
|
19
20
|
assert_equal task.class, Scale::Resources::Task
|
20
|
-
assert_equal task.params, @valid_parameters.select { |k| %Q(phone_number entity_name fields choices).include? k.to_s }
|
21
|
+
assert_equal task.params, @valid_parameters.select { |k| %Q(phone_number entity_name fields choices script).include? k.to_s }
|
21
22
|
end
|
22
23
|
end
|
23
24
|
|
@@ -5,7 +5,7 @@ class TestListTasks < Test::Unit::TestCase
|
|
5
5
|
should 'retrieve a list of tasks' do
|
6
6
|
VCR.use_cassette 'tasks' do
|
7
7
|
tasks = scale.tasks
|
8
|
-
assert_equal(tasks.class,
|
8
|
+
assert_equal(tasks.class, Scale::Resources::Tasks)
|
9
9
|
assert(tasks.count > 0)
|
10
10
|
assert tasks.all? { |t| t.is_a? Scale::Resources::Task }
|
11
11
|
end
|
@@ -9,6 +9,7 @@ class TestRetrieveTask < Test::Unit::TestCase
|
|
9
9
|
phone_number: '5055006865',
|
10
10
|
entity_name: 'Alexandr Wang',
|
11
11
|
fields: { email: 'Email Address' },
|
12
|
+
script: 'Hello ! Are you happy today? (pause) One more thing - what is your email address?',
|
12
13
|
choices: ['He is happy', 'He is not happy']
|
13
14
|
|
14
15
|
# Retrieve that task, and compare it with the previous task
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scaleapi-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Herzog
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-10-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
@@ -133,6 +133,7 @@ files:
|
|
133
133
|
- lib/scale/endpoints/tasks/create_annotation_task.rb
|
134
134
|
- lib/scale/endpoints/tasks/create_categorization_task.rb
|
135
135
|
- lib/scale/endpoints/tasks/create_comparison_task.rb
|
136
|
+
- lib/scale/endpoints/tasks/create_data_collection_task.rb
|
136
137
|
- lib/scale/endpoints/tasks/create_phonecall_task.rb
|
137
138
|
- lib/scale/endpoints/tasks/create_transcription_task.rb
|
138
139
|
- lib/scale/endpoints/tasks/list_tasks.rb
|
@@ -142,6 +143,8 @@ files:
|
|
142
143
|
- lib/scale/http_error.rb
|
143
144
|
- lib/scale/resources/base.rb
|
144
145
|
- lib/scale/resources/task.rb
|
146
|
+
- lib/scale/resources/tasks.rb
|
147
|
+
- scaleapi-ruby.gemspec
|
145
148
|
- test/callbacks/test_task_callback.rb
|
146
149
|
- test/fixtures/callback.json
|
147
150
|
- test/fixtures/vcr_cassettes/tasks.yml
|
@@ -150,6 +153,7 @@ files:
|
|
150
153
|
- test/tasks/test_create_annotation_task.rb
|
151
154
|
- test/tasks/test_create_categorization_task.rb
|
152
155
|
- test/tasks/test_create_comparison_task.rb
|
156
|
+
- test/tasks/test_create_data_collection_task.rb
|
153
157
|
- test/tasks/test_create_phonecall_task.rb
|
154
158
|
- test/tasks/test_create_transcription_task.rb
|
155
159
|
- test/tasks/test_list_tasks.rb
|