testdroid-api-client 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +44 -9
  3. data/lib/testdroid-api-client.rb +1 -1
  4. data/lib/testdroid_api/client.rb +74 -73
  5. data/lib/testdroid_api/cloud_list_resource.rb +74 -74
  6. data/lib/testdroid_api/cloud_resource.rb +65 -60
  7. data/lib/testdroid_api/device_groups.rb +8 -8
  8. data/lib/testdroid_api/device_runs.rb +17 -17
  9. data/lib/testdroid_api/device_sessions.rb +10 -10
  10. data/lib/testdroid_api/devices.rb +9 -9
  11. data/lib/testdroid_api/file_sets.rb +12 -0
  12. data/lib/testdroid_api/files.rb +50 -50
  13. data/lib/testdroid_api/label_groups.rb +9 -9
  14. data/lib/testdroid_api/labels.rb +9 -9
  15. data/lib/testdroid_api/projects.rb +1 -1
  16. data/lib/testdroid_api/runs.rb +8 -8
  17. data/lib/testdroid_api/user.rb +3 -3
  18. data/pkg/testdroid-api-client-0.1.2.gem +0 -0
  19. data/spec/client_spec.rb +1 -1
  20. data/spec/device_groups_spec.rb +3 -3
  21. data/spec/device_runs_spec.rb +2 -2
  22. data/spec/file_sets_spec.rb +47 -0
  23. data/spec/files_spec.rb +2 -2
  24. data/spec/fixtures/cassettes/f_add_file_set.json +1 -0
  25. data/spec/fixtures/cassettes/f_file_sets.json +1 -0
  26. data/spec/fixtures/cassettes/fs_add_file_set.json +1 -0
  27. data/spec/fixtures/cassettes/fs_add_file_to_fileset.json +1 -0
  28. data/spec/fixtures/cassettes/fs_delete_file_set.json +1 -0
  29. data/spec/fixtures/cassettes/fs_file_sets.json +1 -0
  30. data/spec/fixtures/cassettes/fs_get_file_set.json +1 -0
  31. data/spec/fixtures/cassettes/fs_oauth2_auth_files.json +1 -0
  32. data/spec/fixtures/cassettes/fs_update_file_set.json +1 -0
  33. data/spec/fixtures/cassettes/p_create_project.json +1 -0
  34. data/spec/fixtures/cassettes/p_oauth2_local.json +1 -0
  35. data/spec/label_groups_spec.rb +3 -3
  36. data/spec/project_spec.rb +17 -4
  37. data/spec/run_spec.rb +2 -2
  38. data/spec/spec_helper.rb +3 -2
  39. data/testdroid-api-client.gemspec +3 -2
  40. metadata +45 -5
@@ -1,13 +1,13 @@
1
1
 
2
2
  module TestdroidAPI
3
- class Devices < CloudListResource
4
- end
5
- class Device < CloudResource
6
- def initialize(uri, client, params= {})
7
- super uri, client,"device", params
8
- @uri, @client = uri, client
9
-
10
- end
11
-
3
+ class Devices < CloudListResource
4
+ end
5
+ class Device < CloudResource
6
+ def initialize(uri, client, params= {})
7
+ super uri, client,"device", params
8
+ @uri, @client = uri, client
9
+
12
10
  end
11
+
12
+ end
13
13
  end
@@ -0,0 +1,12 @@
1
+
2
+ module TestdroidAPI
3
+ class FileSets < CloudListResource
4
+ end
5
+ class FileSet < CloudResource
6
+ def initialize(uri, client, params= {})
7
+ super uri, client,"fileSet", params
8
+ @uri, @client = uri, client
9
+ sub_items :files
10
+ end
11
+ end
12
+ end
@@ -1,60 +1,60 @@
1
1
 
2
2
  module TestdroidAPI
3
- class Files < CloudResource
4
- def initialize(uri, client, params= {})
5
-
6
- super uri, client,"files", params
7
- @uri, @client = uri, client
8
-
9
- end
10
-
11
- def uploadApplication(filename, mime_type = "application/vnd.android.package-archive")
12
- if !File.exist?(filename)
13
- @client.logger.error( "Invalid filename")
14
- return
15
- end
16
- reply = @client.upload("#{@uri}/application", filename, mime_type)
17
-
18
- Application.new(nil, nil, reply)
19
- end
20
- def uploadData(filename, mime_type = "application/zip")
21
- if !File.exist?(filename)
22
- @client.logger.error( "Invalid filename")
23
- return
24
- end
25
- reply = @client.upload("#{@uri}/data", filename, mime_type)
26
-
27
- Data.new(nil, nil, reply)
28
- end
29
- def uploadTest(filename, mime_type = "application/vnd.android.package-archive")
30
- if !File.exist?(filename)
31
- @client.logger.error( "Invalid filename")
32
- return
33
- end
34
- reply = @client.upload("#{@uri}/test", filename, mime_type)
35
-
36
- Test.new(nil, nil, reply)
37
- end
3
+ class Files < CloudResource
4
+ def initialize(uri, client, params= {})
5
+
6
+ super uri, client,"files", params
7
+ @uri, @client = uri, client
8
+
38
9
  end
39
- class Application < CloudResource
40
- def initialize(uri, client, params= {})
41
- super uri, client,"app", params
42
- @uri, @client = uri, client
43
-
10
+
11
+ def uploadApplication(filename, mime_type = "application/vnd.android.package-archive")
12
+ if !File.exist?(filename)
13
+ @client.logger.error( "Invalid filename")
14
+ return
44
15
  end
16
+ reply = @client.upload("#{@uri}/application", filename, mime_type)
17
+
18
+ Application.new(nil, nil, reply)
45
19
  end
46
- class Test < CloudResource
47
- def initialize(uri, client, params= {})
48
- super uri, client,"test", params
49
- @uri, @client = uri, client
50
-
20
+ def uploadData(filename, mime_type = "application/zip")
21
+ if !File.exist?(filename)
22
+ @client.logger.error( "Invalid filename")
23
+ return
51
24
  end
25
+ reply = @client.upload("#{@uri}/data", filename, mime_type)
26
+
27
+ Data.new(nil, nil, reply)
52
28
  end
53
- class Data < CloudResource
54
- def initialize(uri, client, params= {})
55
- super uri, client,"data", params
56
- @uri, @client = uri, client
57
-
29
+ def uploadTest(filename, mime_type = "application/vnd.android.package-archive")
30
+ if !File.exist?(filename)
31
+ @client.logger.error( "Invalid filename")
32
+ return
58
33
  end
34
+ reply = @client.upload("#{@uri}/test", filename, mime_type)
35
+
36
+ Test.new(nil, nil, reply)
37
+ end
38
+ end
39
+ class Application < CloudResource
40
+ def initialize(uri, client, params= {})
41
+ super uri, client,"app", params
42
+ @uri, @client = uri, client
43
+
44
+ end
45
+ end
46
+ class Test < CloudResource
47
+ def initialize(uri, client, params= {})
48
+ super uri, client,"test", params
49
+ @uri, @client = uri, client
50
+
51
+ end
52
+ end
53
+ class Data < CloudResource
54
+ def initialize(uri, client, params= {})
55
+ super uri, client,"data", params
56
+ @uri, @client = uri, client
57
+
59
58
  end
59
+ end
60
60
  end
@@ -1,13 +1,13 @@
1
1
 
2
2
  module TestdroidAPI
3
- class LabelGroups < CloudListResource
4
- end
5
- class LabelGroup < CloudResource
6
- def initialize(uri, client, params= {})
7
- super uri, client,"labelGroup", params
8
- @uri, @client = uri, client
9
- sub_items :labels
10
- end
11
-
3
+ class LabelGroups < CloudListResource
4
+ end
5
+ class LabelGroup < CloudResource
6
+ def initialize(uri, client, params= {})
7
+ super uri, client,"labelGroup", params
8
+ @uri, @client = uri, client
9
+ sub_items :labels
12
10
  end
11
+
12
+ end
13
13
  end
@@ -1,13 +1,13 @@
1
1
 
2
2
  module TestdroidAPI
3
- class Labels < CloudListResource
4
- end
5
- class Label < CloudResource
6
- def initialize(uri, client, params= {})
7
- super uri, client,"label", params
8
- @uri, @client = uri, client
9
- sub_items :devices
10
- end
11
-
3
+ class Labels < CloudListResource
4
+ end
5
+ class Label < CloudResource
6
+ def initialize(uri, client, params= {})
7
+ super uri, client,"label", params
8
+ @uri, @client = uri, client
9
+ sub_items :devices
12
10
  end
11
+
12
+ end
13
13
  end
@@ -5,7 +5,7 @@ module TestdroidAPI
5
5
 
6
6
  class Project < CloudResource
7
7
 
8
- def initialize(uri, client, params= {})
8
+ def initialize(uri, client, params= {})
9
9
  super uri, client,"project", params
10
10
  @uri, @client = uri, client
11
11
  sub_items :runs, :files
@@ -1,11 +1,11 @@
1
1
  module TestdroidAPI
2
- class Runs < CloudListResource
3
- end
4
- class Run < CloudResource
5
- def initialize(uri, client, params= {})
6
- super uri, client,"run", params
7
- @uri, @client = uri, client
8
- sub_items :device_runs
9
- end
2
+ class Runs < CloudListResource
3
+ end
4
+ class Run < CloudResource
5
+ def initialize(uri, client, params= {})
6
+ super uri, client,"run", params
7
+ @uri, @client = uri, client
8
+ sub_items :device_runs
10
9
  end
10
+ end
11
11
  end
@@ -2,7 +2,7 @@ module TestdroidAPI
2
2
  class User < CloudResource
3
3
  def initialize(uri, client, params={})
4
4
  super uri, client,"users", params
5
- sub_items :projects, :device_groups, :device_sessions
5
+ sub_items :projects, :device_groups, :device_sessions, :file_sets
6
6
  end
7
- end
8
- end
7
+ end
8
+ end
Binary file
data/spec/client_spec.rb CHANGED
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  describe TestdroidAPI::Client do
4
4
  context "#initialize" do
5
5
  it "uses cloud.testdroid.com as default host" do
6
- client.instance_variable_get('@cloud_url').should eq "https://cloud.testdroid.com"
6
+ expect(client.instance_variable_get('@cloud_url')).to eq "https://cloud.testdroid.com"
7
7
  end
8
8
  end
9
9
 
@@ -12,7 +12,7 @@ describe TestdroidAPI::DeviceGroup do
12
12
  VCR.use_cassette('dg_all_device_groups') do
13
13
 
14
14
  device_groups = @user.device_groups
15
- device_groups.total.should eq(1)
15
+ expect(device_groups.total).to eq(1)
16
16
 
17
17
  end
18
18
  end
@@ -20,8 +20,8 @@ describe TestdroidAPI::DeviceGroup do
20
20
 
21
21
  VCR.use_cassette('dg_device_group_4165') do
22
22
  device_group_4165 = @user.device_groups.get(4165)
23
- device_group_4165.id.should eq(4165)
24
- device_group_4165.display_name.should eq("testi grouppen")
23
+ expect(device_group_4165.id).to eq(4165)
24
+ expect(device_group_4165.display_name).to eq("testi grouppen")
25
25
 
26
26
  end
27
27
  end
@@ -12,14 +12,14 @@ describe TestdroidAPI::DeviceRun do
12
12
 
13
13
  VCR.use_cassette('dr_run_33044722_device_runs') do
14
14
 
15
- @user.projects.get(33029366).runs.get(33044722).device_runs.should_not be nil
15
+ expect(@user.projects.get(33029366).runs.get(33044722).device_runs).not_to be_nil
16
16
 
17
17
  end
18
18
  end
19
19
  it 'get device run using id' do
20
20
 
21
21
  VCR.use_cassette('dr_device_run_33044722') do
22
- @user.projects.get(33029366).runs.get(33044722).device_runs.get(33044966).id.should be 33044966
22
+ expect(@user.projects.get(33029366).runs.get(33044722).device_runs.get(33044966).id).to be(33044966)
23
23
  end
24
24
  end
25
25
  end
@@ -0,0 +1,47 @@
1
+ require 'spec_helper'
2
+ require 'json'
3
+ describe TestdroidAPI::FileSets do
4
+ before :all do
5
+ VCR.use_cassette('fs_oauth2_auth_files') do
6
+ @user = client_local_host.authorize
7
+ @user.file_sets.list.each{ |fs| fs.delete}
8
+ end
9
+ end
10
+
11
+ it 'get file sets ' do
12
+ VCR.use_cassette('fs_file_sets') do
13
+ fs = @user.file_sets
14
+ expect(fs.total).to be == 0
15
+ end
16
+ end
17
+ it 'Add a new file set ' do
18
+ VCR.use_cassette('fs_add_file_set') do
19
+ fs = @user.file_sets.create({:params => {:name => 'My File Set'}})
20
+ expect(fs.name).to eq "My File Set"
21
+ end
22
+ end
23
+ it 'Get new file set ' do
24
+ VCR.use_cassette('fs_get_file_set') do
25
+ @user.file_sets.list.each{ |fs|
26
+ expect(fs.name).to eq "My File Set"
27
+ }
28
+ end
29
+ end
30
+ it 'Update file set ' do
31
+ VCR.use_cassette('fs_update_file_set') do
32
+ fs1 = @user.file_sets.list.first
33
+ fs1.update({:params => {:name => 'My File Set 2'}})
34
+ expect(fs1.name).to eq "My File Set 2"
35
+ end
36
+ end
37
+
38
+ it 'Delete file set ' do
39
+ VCR.use_cassette('fs_delete_file_set') do
40
+ fs1 = @user.file_sets.list.first
41
+ fs1.delete
42
+ fs1 = @user.file_sets.list.first
43
+ puts fs1
44
+ expect(fs1).to be_nil
45
+ end
46
+ end
47
+ end
data/spec/files_spec.rb CHANGED
@@ -11,7 +11,7 @@ describe TestdroidAPI::Files do
11
11
  project33029366 = nil
12
12
  VCR.use_cassette('f_android_app_file') do
13
13
  project33029366 = @user.projects.get(100800)
14
- project33029366.files.app.should_not eq nil
14
+ expect(project33029366.files.app).to_not be_nil
15
15
 
16
16
  end
17
17
  end
@@ -20,7 +20,7 @@ describe TestdroidAPI::Files do
20
20
  VCR.use_cassette('f_get_project_33029366') do
21
21
 
22
22
  project33029366 = @user.projects.get(100800)
23
- project33029366.should_not eq nil
23
+ expect(project33029366).to_not be_nil
24
24
  end
25
25
  VCR.use_cassette('f_upload_files') do
26
26
  file_name = 'apk.apk'
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets?name=My+File+Set","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 0ebe0890-21e8-4ab8-9669-1d604ea251ce"]}},"response":{"status":{"code":401,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"cache-control":["no-store"],"pragma":["no-cache"],"www-authenticate":["Bearer realm=\"oauth\", error=\"invalid_token\", error_description=\"Access token expired: 0ebe0890-21e8-4ab8-9669-1d604ea251ce\""],"content-type":["application/json"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 07:28:16 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJlcnJvciI6ImludmFsaWRfdG9rZW4iLCJlcnJvcl9kZXNjcmlwdGlvbiI6\nIkFjY2VzcyB0b2tlbiBleHBpcmVkOiAwZWJlMDg5MC0yMWU4LTRhYjgtOTY2\nOS0xZDYwNGVhMjUxY2UifQ==\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 07:28:16 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 72bcacda-3e6b-4085-9ae2-838aea9373f2"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 07:28:40 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbXSwibGltaXQiOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAs\nInByZXZpb3VzIjpudWxsLCJzZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwi\nOjAsImVtcHR5Ijp0cnVlfQ==\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 07:28:40 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets?name=My+File+Set","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":201,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjE4NCwiZmlsZUNvdW50\nIjowLCJuYW1lIjoiTXkgRmlsZSBTZXQifQ==\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbeyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjAwMCwi\nZmlsZUNvdW50IjowLCJuYW1lIjoiTXkgRmlsZSBTZXQgMiJ9XSwibGltaXQi\nOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAsInByZXZpb3VzIjpudWxsLCJz\nZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwiOjEsImVtcHR5IjpmYWxzZX0=\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbeyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjAwMCwi\nZmlsZUNvdW50IjowLCJuYW1lIjoiTXkgRmlsZSBTZXQgMiJ9XSwibGltaXQi\nOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAsInByZXZpb3VzIjpudWxsLCJz\nZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwiOjEsImVtcHR5IjpmYWxzZX0=\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"delete","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets/5","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":204,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"US-ASCII","base64_string":""},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbXSwibGltaXQiOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAs\nInByZXZpb3VzIjpudWxsLCJzZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwi\nOjAsImVtcHR5Ijp0cnVlfQ==\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbXSwibGltaXQiOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAs\nInByZXZpb3VzIjpudWxsLCJzZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwi\nOjAsImVtcHR5Ijp0cnVlfQ==\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbeyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjAwMCwi\nZmlsZUNvdW50IjowLCJuYW1lIjoiTXkgRmlsZSBTZXQifV0sImxpbWl0Ijoy\nMCwibmV4dCI6bnVsbCwib2Zmc2V0IjowLCJwcmV2aW91cyI6bnVsbCwic2Vh\ncmNoIjoiIiwic29ydCI6IiIsInRvdGFsIjoxLCJlbXB0eSI6ZmFsc2V9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/oauth/token","body":{"encoding":"UTF-8","base64_string":"Z3JhbnRfdHlwZT1wYXNzd29yZCZ1c2VybmFtZT1hZG1pbiU0MGxvY2FsaG9z\ndCZwYXNzd29yZD1hZG1pbiZjbGllbnRfaWQ9dGVzdGRyb2lkLWNsb3VkLWFw\naSZjbGllbnRfc2VjcmV0\n"},"headers":{"User-Agent":["Faraday v0.8.9"],"Content-Type":["application/x-www-form-urlencoded"],"Accept":["application/json"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"cache-control":["no-store"],"pragma":["no-cache"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJhY2Nlc3NfdG9rZW4iOiI0YjI3ODYwOC00ZjRjLTQ1ZGItODQ0NC1jYjM3\nM2M0YjA1NGEiLCJ0b2tlbl90eXBlIjoiYmVhcmVyIiwicmVmcmVzaF90b2tl\nbiI6IjIxYWJkZGIwLTQwNDctNGRiMy04M2IwLTgyMDNkM2Q0MTg5MCIsImV4\ncGlyZXNfaW4iOjE4MDAsInNjb3BlIjoicmVhZCB3cml0ZSJ9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/me","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6MTAwMDMwLCJhZGRyZXNzIjpudWxsLCJjaXR5IjpudWxsLCJjb2Rl\nIjpudWxsLCJjb3VudHJ5IjpudWxsLCJlbWFpbCI6ImFkbWluQGxvY2FsaG9z\ndCIsImVuYWJsZWQiOnRydWUsIm5hbWUiOiJBZG1pbiIsIm9yZ2FuaXphdGlv\nbiI6bnVsbCwicGhvbmUiOm51bGwsInJvbGVzIjpbeyJpZCI6MSwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IklPUyIsInVzZUxpbWl0IjpudWxsLCJsaW1p\ndGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6MiwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IkFETUlOIiwidXNlTGltaXQiOm51bGwsImxp\nbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZhbHNlfSx7ImlkIjozLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiQ0xVU1RFUiIsInVzZUxpbWl0IjpudWxs\nLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6NCwi\nZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IlJFQ09SREVSX1JFQyIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6NSwiZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IkNBTEFCQVNIIiwi\ndXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZh\nbHNlfSx7ImlkIjo2LCJleHBpcmVUaW1lIjpudWxsLCJuYW1lIjoiUkVDT1JE\nRVJfT05MSU5FIiwidXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJs\naW1pdFVzZWQiOmZhbHNlfSx7ImlkIjo3LCJleHBpcmVUaW1lIjpudWxsLCJu\nYW1lIjoiU0VMRU5JVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6ZmFs\nc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjgsImV4cGlyZVRpbWUiOm51\nbGwsIm5hbWUiOiJBUFBJVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6\nZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjksImV4cGlyZVRpbWUi\nOm51bGwsIm5hbWUiOiJJTlNQRUNUT1IiLCJ1c2VMaW1pdCI6bnVsbCwibGlt\naXRlZCI6ZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjEwLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiVEVTVF9USU1FT1VUIiwidXNlTGltaXQi\nOjYwMCwibGltaXRlZCI6dHJ1ZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6\nMTEsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJQQUlEX1JVTiIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6MTIsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJURVNUX1JVTl9T\nQ1JFRU5TSE9UUyIsInVzZUxpbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwi\nbGltaXRVc2VkIjpmYWxzZX1dLCJzdGF0ZSI6bnVsbCwidGltZVpvbmUiOm51\nbGwsInZhdElEIjpudWxsLCJjcmVhdGVUaW1lIjoxNDEyOTA2NDYzMDAwLCJl\nbWFpbE5vdGlmaWNhdGlvbiI6IkFMV0FZUyIsImlzTWFpblVzZXIiOnRydWV9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6MTAwMDMwLCJhZGRyZXNzIjpudWxsLCJjaXR5IjpudWxsLCJjb2Rl\nIjpudWxsLCJjb3VudHJ5IjpudWxsLCJlbWFpbCI6ImFkbWluQGxvY2FsaG9z\ndCIsImVuYWJsZWQiOnRydWUsIm5hbWUiOiJBZG1pbiIsIm9yZ2FuaXphdGlv\nbiI6bnVsbCwicGhvbmUiOm51bGwsInJvbGVzIjpbeyJpZCI6MSwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IklPUyIsInVzZUxpbWl0IjpudWxsLCJsaW1p\ndGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6MiwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IkFETUlOIiwidXNlTGltaXQiOm51bGwsImxp\nbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZhbHNlfSx7ImlkIjozLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiQ0xVU1RFUiIsInVzZUxpbWl0IjpudWxs\nLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6NCwi\nZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IlJFQ09SREVSX1JFQyIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6NSwiZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IkNBTEFCQVNIIiwi\ndXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZh\nbHNlfSx7ImlkIjo2LCJleHBpcmVUaW1lIjpudWxsLCJuYW1lIjoiUkVDT1JE\nRVJfT05MSU5FIiwidXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJs\naW1pdFVzZWQiOmZhbHNlfSx7ImlkIjo3LCJleHBpcmVUaW1lIjpudWxsLCJu\nYW1lIjoiU0VMRU5JVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6ZmFs\nc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjgsImV4cGlyZVRpbWUiOm51\nbGwsIm5hbWUiOiJBUFBJVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6\nZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjksImV4cGlyZVRpbWUi\nOm51bGwsIm5hbWUiOiJJTlNQRUNUT1IiLCJ1c2VMaW1pdCI6bnVsbCwibGlt\naXRlZCI6ZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjEwLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiVEVTVF9USU1FT1VUIiwidXNlTGltaXQi\nOjYwMCwibGltaXRlZCI6dHJ1ZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6\nMTEsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJQQUlEX1JVTiIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6MTIsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJURVNUX1JVTl9T\nQ1JFRU5TSE9UUyIsInVzZUxpbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwi\nbGltaXRVc2VkIjpmYWxzZX1dLCJzdGF0ZSI6bnVsbCwidGltZVpvbmUiOm51\nbGwsInZhdElEIjpudWxsLCJjcmVhdGVUaW1lIjoxNDEyOTA2NDYzMDAwLCJl\nbWFpbE5vdGlmaWNhdGlvbiI6IkFMV0FZUyIsImlzTWFpblVzZXIiOnRydWV9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbXSwibGltaXQiOjIwLCJuZXh0IjpudWxsLCJvZmZzZXQiOjAs\nInByZXZpb3VzIjpudWxsLCJzZWFyY2giOiIiLCJzb3J0IjoiIiwidG90YWwi\nOjAsImVtcHR5Ijp0cnVlfQ==\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJkYXRhIjpbeyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjAwMCwi\nZmlsZUNvdW50IjowLCJuYW1lIjoiTXkgRmlsZSBTZXQifV0sImxpbWl0Ijoy\nMCwibmV4dCI6bnVsbCwib2Zmc2V0IjowLCJwcmV2aW91cyI6bnVsbCwic2Vh\ncmNoIjoiIiwic29ydCI6IiIsInRvdGFsIjoxLCJlbXB0eSI6ZmFsc2V9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"},{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/file-sets/5?name=My+File+Set+2","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 4b278608-4f4c-45db-8444-cb373c4b054a"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Mon, 01 Dec 2014 02:03:52 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6NSwiY3JlYXRlVGltZSI6MTQxNzM5OTQzMjAwMCwiZmlsZUNvdW50\nIjowLCJuYW1lIjoiTXkgRmlsZSBTZXQgMiJ9\n"},"http_version":null},"recorded_at":"Mon, 01 Dec 2014 02:03:52 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030/projects?name=My+Project","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 0ebe0890-21e8-4ab8-9669-1d604ea251ce"]}},"response":{"status":{"code":201,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 07:08:53 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6MTAwNjAyLCJhcmNoaXZpbmdJdGVtQ291bnQiOm51bGwsImFyY2hp\ndmluZ1N0cmF0ZWd5IjoiTkVWRVIiLCJjb21tb24iOmZhbHNlLCJkZXNjcmlw\ndGlvbiI6IiIsIm5hbWUiOiJNeSBQcm9qZWN0Iiwic2hhcmVkQnlFbWFpbCI6\nbnVsbCwic2hhcmVkQnlJZCI6bnVsbCwidHlwZSI6IkFORFJPSUQiLCJjcmVh\ndGVUaW1lIjoxNDE3MzMxMzMzMDAwLCJhcmNoaXZpbmdTdHJhdGVneURpc3Bs\nYXlWYWx1ZSI6Im5ldmVyIn0=\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 07:08:53 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -0,0 +1 @@
1
+ {"http_interactions":[{"request":{"method":"post","uri":"http://localhost:8080/testdroid-cloud/oauth/token","body":{"encoding":"UTF-8","base64_string":"Z3JhbnRfdHlwZT1wYXNzd29yZCZ1c2VybmFtZT1hZG1pbiU0MGxvY2FsaG9z\ndCZwYXNzd29yZD1hZG1pbiZjbGllbnRfaWQ9dGVzdGRyb2lkLWNsb3VkLWFw\naSZjbGllbnRfc2VjcmV0\n"},"headers":{"User-Agent":["Faraday v0.8.9"],"Content-Type":["application/x-www-form-urlencoded"],"Accept":["application/json"],"Authorization":["Bearer dce04a30-cb41-4da2-96cd-81992febba22"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"cache-control":["no-store"],"pragma":["no-cache"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 06:52:16 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJhY2Nlc3NfdG9rZW4iOiIwZWJlMDg5MC0yMWU4LTRhYjgtOTY2OS0xZDYw\nNGVhMjUxY2UiLCJ0b2tlbl90eXBlIjoiYmVhcmVyIiwicmVmcmVzaF90b2tl\nbiI6IjUyMDY2MjU1LTE3YzYtNGY0MC1iMWU1LTJjNGY1Y2QwNmYxNSIsImV4\ncGlyZXNfaW4iOjE3OTksInNjb3BlIjoicmVhZCB3cml0ZSJ9\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 06:52:16 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/me","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 0ebe0890-21e8-4ab8-9669-1d604ea251ce"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 06:52:16 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6MTAwMDMwLCJhZGRyZXNzIjpudWxsLCJjaXR5IjpudWxsLCJjb2Rl\nIjpudWxsLCJjb3VudHJ5IjpudWxsLCJlbWFpbCI6ImFkbWluQGxvY2FsaG9z\ndCIsImVuYWJsZWQiOnRydWUsIm5hbWUiOiJBZG1pbiIsIm9yZ2FuaXphdGlv\nbiI6bnVsbCwicGhvbmUiOm51bGwsInJvbGVzIjpbeyJpZCI6MSwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IklPUyIsInVzZUxpbWl0IjpudWxsLCJsaW1p\ndGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6MiwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IkFETUlOIiwidXNlTGltaXQiOm51bGwsImxp\nbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZhbHNlfSx7ImlkIjozLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiQ0xVU1RFUiIsInVzZUxpbWl0IjpudWxs\nLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6NCwi\nZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IlJFQ09SREVSX1JFQyIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6NSwiZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IkNBTEFCQVNIIiwi\ndXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZh\nbHNlfSx7ImlkIjo2LCJleHBpcmVUaW1lIjpudWxsLCJuYW1lIjoiUkVDT1JE\nRVJfT05MSU5FIiwidXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJs\naW1pdFVzZWQiOmZhbHNlfSx7ImlkIjo3LCJleHBpcmVUaW1lIjpudWxsLCJu\nYW1lIjoiU0VMRU5JVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6ZmFs\nc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjgsImV4cGlyZVRpbWUiOm51\nbGwsIm5hbWUiOiJBUFBJVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6\nZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjksImV4cGlyZVRpbWUi\nOm51bGwsIm5hbWUiOiJJTlNQRUNUT1IiLCJ1c2VMaW1pdCI6bnVsbCwibGlt\naXRlZCI6ZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjEwLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiVEVTVF9USU1FT1VUIiwidXNlTGltaXQi\nOjYwMCwibGltaXRlZCI6dHJ1ZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6\nMTEsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJQQUlEX1JVTiIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6MTIsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJURVNUX1JVTl9T\nQ1JFRU5TSE9UUyIsInVzZUxpbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwi\nbGltaXRVc2VkIjpmYWxzZX1dLCJzdGF0ZSI6bnVsbCwidGltZVpvbmUiOm51\nbGwsInZhdElEIjpudWxsLCJjcmVhdGVUaW1lIjoxNDEyOTA2NDYzMDAwLCJl\nbWFpbE5vdGlmaWNhdGlvbiI6IkFMV0FZUyIsImlzTWFpblVzZXIiOnRydWV9\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 06:52:17 GMT"},{"request":{"method":"get","uri":"http://localhost:8080/testdroid-cloud/api/v2/users/100030","body":{"encoding":"US-ASCII","base64_string":""},"headers":{"User-Agent":["Faraday v0.8.9"],"Accept":["application/json"],"Authorization":["Bearer 0ebe0890-21e8-4ab8-9669-1d604ea251ce"]}},"response":{"status":{"code":200,"message":null},"headers":{"server":["Apache-Coyote/1.1"],"content-type":["application/json;charset=UTF-8"],"transfer-encoding":["chunked"],"date":["Sun, 30 Nov 2014 06:52:17 GMT"]},"body":{"encoding":"UTF-8","base64_string":"eyJpZCI6MTAwMDMwLCJhZGRyZXNzIjpudWxsLCJjaXR5IjpudWxsLCJjb2Rl\nIjpudWxsLCJjb3VudHJ5IjpudWxsLCJlbWFpbCI6ImFkbWluQGxvY2FsaG9z\ndCIsImVuYWJsZWQiOnRydWUsIm5hbWUiOiJBZG1pbiIsIm9yZ2FuaXphdGlv\nbiI6bnVsbCwicGhvbmUiOm51bGwsInJvbGVzIjpbeyJpZCI6MSwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IklPUyIsInVzZUxpbWl0IjpudWxsLCJsaW1p\ndGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6MiwiZXhwaXJl\nVGltZSI6bnVsbCwibmFtZSI6IkFETUlOIiwidXNlTGltaXQiOm51bGwsImxp\nbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZhbHNlfSx7ImlkIjozLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiQ0xVU1RFUiIsInVzZUxpbWl0IjpudWxs\nLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6NCwi\nZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IlJFQ09SREVSX1JFQyIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6NSwiZXhwaXJlVGltZSI6bnVsbCwibmFtZSI6IkNBTEFCQVNIIiwi\ndXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJsaW1pdFVzZWQiOmZh\nbHNlfSx7ImlkIjo2LCJleHBpcmVUaW1lIjpudWxsLCJuYW1lIjoiUkVDT1JE\nRVJfT05MSU5FIiwidXNlTGltaXQiOm51bGwsImxpbWl0ZWQiOmZhbHNlLCJs\naW1pdFVzZWQiOmZhbHNlfSx7ImlkIjo3LCJleHBpcmVUaW1lIjpudWxsLCJu\nYW1lIjoiU0VMRU5JVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6ZmFs\nc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjgsImV4cGlyZVRpbWUiOm51\nbGwsIm5hbWUiOiJBUFBJVU0iLCJ1c2VMaW1pdCI6bnVsbCwibGltaXRlZCI6\nZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjksImV4cGlyZVRpbWUi\nOm51bGwsIm5hbWUiOiJJTlNQRUNUT1IiLCJ1c2VMaW1pdCI6bnVsbCwibGlt\naXRlZCI6ZmFsc2UsImxpbWl0VXNlZCI6ZmFsc2V9LHsiaWQiOjEwLCJleHBp\ncmVUaW1lIjpudWxsLCJuYW1lIjoiVEVTVF9USU1FT1VUIiwidXNlTGltaXQi\nOjYwMCwibGltaXRlZCI6dHJ1ZSwibGltaXRVc2VkIjpmYWxzZX0seyJpZCI6\nMTEsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJQQUlEX1JVTiIsInVzZUxp\nbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwibGltaXRVc2VkIjpmYWxzZX0s\neyJpZCI6MTIsImV4cGlyZVRpbWUiOm51bGwsIm5hbWUiOiJURVNUX1JVTl9T\nQ1JFRU5TSE9UUyIsInVzZUxpbWl0IjpudWxsLCJsaW1pdGVkIjpmYWxzZSwi\nbGltaXRVc2VkIjpmYWxzZX1dLCJzdGF0ZSI6bnVsbCwidGltZVpvbmUiOm51\nbGwsInZhdElEIjpudWxsLCJjcmVhdGVUaW1lIjoxNDEyOTA2NDYzMDAwLCJl\nbWFpbE5vdGlmaWNhdGlvbiI6IkFMV0FZUyIsImlzTWFpblVzZXIiOnRydWV9\n"},"http_version":null},"recorded_at":"Sun, 30 Nov 2014 06:52:17 GMT"}],"recorded_with":"VCR 2.9.3"}
@@ -15,7 +15,7 @@ describe TestdroidAPI::LabelGroups do
15
15
  p 'ssdlksldklskdls'
16
16
  p label_groups
17
17
 
18
- label_groups.total.should eq(13)
18
+ expect(label_groups.total).to be(13)
19
19
 
20
20
  end
21
21
  end
@@ -23,8 +23,8 @@ describe TestdroidAPI::LabelGroups do
23
23
 
24
24
  VCR.use_cassette('lg_label_group_1058800') do
25
25
  label_group_1058800 = client.label_groups.get(1058800)
26
- label_group_1058800.id.should eq(1058800)
27
- label_group_1058800.display_name.should eq("API Level")
26
+ expect(label_group_1058800.id).to be(1058800)
27
+ expect(label_group_1058800.display_name).to eq("API Level")
28
28
 
29
29
  end
30
30
  end
data/spec/project_spec.rb CHANGED
@@ -18,14 +18,14 @@ describe TestdroidAPI::Project do
18
18
  it 'get projects using client' do
19
19
 
20
20
  VCR.use_cassette('p_all_projects') do
21
- @user.projects.list.should have(2).projects
21
+ expect(@user.projects.list.length).to be(2)
22
22
  end
23
23
  end
24
24
  it 'get project using id' do
25
25
 
26
26
  VCR.use_cassette('p_project_id_33029366') do
27
- @user.projects.get(33029366).common.should be_false
28
- @user.projects.get(33029366).id.should be 33029366
27
+ expect(@user.projects.get(33029366).common).to be_falsey
28
+ expect(@user.projects.get(33029366).id).to eq 33029366
29
29
  end
30
30
  end
31
31
  it 'run project' do
@@ -37,7 +37,20 @@ describe TestdroidAPI::Project do
37
37
  VCR.use_cassette('p_get_run_devices') do
38
38
 
39
39
  device_run = testRun.device_runs.get(33044968)
40
- device_run.device['displayName'].should eq "Alcatel One Touch 991"
40
+ expect(device_run.device['displayName']).to eq "Alcatel One Touch 991"
41
41
  end
42
42
  end
43
+ it 'creates project' do
44
+
45
+ VCR.use_cassette('p_oauth2_local') do
46
+
47
+ @user_local = client_local_host.authorize
48
+ end
49
+ VCR.use_cassette('p_create_project') do
50
+ puts "Before"
51
+ my_project = @user_local.projects.create({:params => {:name => 'My Project'}})
52
+ expect(my_project.name).to eq 'My Project'
53
+ end
54
+
55
+ end
43
56
  end
data/spec/run_spec.rb CHANGED
@@ -10,14 +10,14 @@ describe TestdroidAPI::Run do
10
10
  it 'get runs' do
11
11
 
12
12
  VCR.use_cassette('r_all_project_33029366_runs') do
13
- @user.projects.get(33029366).runs.list.should_not be nil
13
+ expect(@user.projects.get(33029366).runs.list).to_not be_nil
14
14
 
15
15
  end
16
16
  end
17
17
  it 'get run using id' do
18
18
 
19
19
  VCR.use_cassette('r_run_171221') do
20
- @user.projects.get(33029366).runs.get(33044722).id.should == 33044722
20
+ expect(@user.projects.get(33029366).runs.get(33044722).id).to be 33044722
21
21
  end
22
22
  end
23
23
  it 'delete run using id' do
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,6 @@
1
- gem 'rspec', '~> 2.4'
2
- gem 'faraday', '~> 0.9'
1
+ gem 'rspec'
2
+ gem 'rspec-collection_matchers'
3
+ gem 'faraday', '~> 0.8.8'
3
4
 
4
5
  require 'rspec'
5
6
  require 'json'
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "testdroid-api-client"
3
- s.version = "0.1.2"
3
+ s.version = "0.1.3"
4
4
 
5
5
 
6
6
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
@@ -16,10 +16,11 @@ Gem::Specification.new do |s|
16
16
  s.rubygems_version = %q{2.2.2}
17
17
  s.summary = %q{Testdroid API Client!}
18
18
  s.add_runtime_dependency "oauth2",'~> 0.9'
19
- s.add_runtime_dependency "faraday",'~> 0.9', '>= 0.9'
19
+ s.add_runtime_dependency "faraday",'~> 0.8.8', '>= 0.8.8'
20
20
  s.add_development_dependency "bump",'~> 0.5'
21
21
  s.add_development_dependency "rake"
22
22
  s.add_development_dependency "rspec"
23
+ s.add_development_dependency "rspec-collection_matchers"
23
24
  s.add_development_dependency "vcr", '~> 2.9'
24
25
  s.add_development_dependency "webmock", '~> 1.9'
25
26
  s.add_development_dependency "yard", '~> 0.8'