code42 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/.rspec +2 -0
- data/Gemfile +4 -0
- data/LICENSE +203 -0
- data/README.md +182 -0
- data/Rakefile +1 -0
- data/code42.gemspec +26 -0
- data/examples/Gemfile +6 -0
- data/examples/computers.rb +88 -0
- data/examples/diagnostic.rb +82 -0
- data/examples/orgs.rb +88 -0
- data/examples/parser.rb +51 -0
- data/examples/parser_test.rb +64 -0
- data/examples/users.rb +88 -0
- data/lib/code42.rb +46 -0
- data/lib/code42/attribute.rb +13 -0
- data/lib/code42/attribute_serializer.rb +129 -0
- data/lib/code42/client.rb +301 -0
- data/lib/code42/computer.rb +15 -0
- data/lib/code42/connection.rb +124 -0
- data/lib/code42/diagnostic.rb +8 -0
- data/lib/code42/error.rb +21 -0
- data/lib/code42/org.rb +38 -0
- data/lib/code42/ping.rb +14 -0
- data/lib/code42/resource.rb +58 -0
- data/lib/code42/role.rb +26 -0
- data/lib/code42/role_collection.rb +35 -0
- data/lib/code42/settings.rb +42 -0
- data/lib/code42/token.rb +31 -0
- data/lib/code42/token_validation.rb +10 -0
- data/lib/code42/user.rb +40 -0
- data/lib/code42/version.rb +3 -0
- data/spec/cassettes/Code42_Client/_create_org/returns_created_org.yml +47 -0
- data/spec/cassettes/Code42_Client/_create_user/returns_created_user.yml +44 -0
- data/spec/cassettes/Code42_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml +37 -0
- data/spec/cassettes/Code42_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml +101 -0
- data/spec/cassettes/Code42_Client/_get_token/returns_valid_tokens.yml +38 -0
- data/spec/cassettes/Code42_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml +37 -0
- data/spec/cassettes/Code42_Client/_org/when_ID_is_not_passed/returns_my_org.yml +54 -0
- data/spec/cassettes/Code42_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml +54 -0
- data/spec/cassettes/Code42_Client/_ping/returns_a_ping.yml +48 -0
- data/spec/cassettes/Code42_Client/_user/when_ID_is_not_passed/returns_my_user.yml +53 -0
- data/spec/cassettes/Code42_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml +53 -0
- data/spec/cassettes/Code42_Client/_user_roles/returns_an_enumerable.yml +50 -0
- data/spec/cassettes/Code42_Client/_validate_token/returns_a_valid_response.yml +83 -0
- data/spec/cassettes/Crashplan_Client/_create_org/returns_created_org.yml +47 -0
- data/spec/cassettes/Crashplan_Client/_create_user/returns_created_user.yml +44 -0
- data/spec/cassettes/Crashplan_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml +37 -0
- data/spec/cassettes/Crashplan_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml +55 -0
- data/spec/cassettes/Crashplan_Client/_get_token/returns_valid_tokens.yml +38 -0
- data/spec/cassettes/Crashplan_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml +37 -0
- data/spec/cassettes/Crashplan_Client/_org/when_ID_is_not_passed/returns_my_org.yml +54 -0
- data/spec/cassettes/Crashplan_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml +54 -0
- data/spec/cassettes/Crashplan_Client/_ping/returns_a_ping.yml +48 -0
- data/spec/cassettes/Crashplan_Client/_user/when_ID_is_not_passed/returns_my_user.yml +99 -0
- data/spec/cassettes/Crashplan_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml +53 -0
- data/spec/cassettes/Crashplan_Client/_user_roles/returns_an_enumerable.yml +50 -0
- data/spec/cassettes/Crashplan_Client/_validate_token/returns_a_valid_response.yml +128 -0
- data/spec/crashplan/client_spec.rb +135 -0
- data/spec/crashplan/connection_spec.rb +45 -0
- data/spec/crashplan/org_spec.rb +63 -0
- data/spec/crashplan/ping_spec.rb +14 -0
- data/spec/crashplan/resource_spec.rb +56 -0
- data/spec/crashplan/role_spec.rb +28 -0
- data/spec/crashplan/settings_spec.rb +118 -0
- data/spec/crashplan/token_spec.rb +33 -0
- data/spec/crashplan/user_spec.rb +21 -0
- data/spec/fixtures/auth/bad_password.json +1 -0
- data/spec/fixtures/authToken.json +10 -0
- data/spec/fixtures/org.1.json +36 -0
- data/spec/fixtures/org.create.json +36 -0
- data/spec/fixtures/org.my.json +36 -0
- data/spec/fixtures/ping.json +7 -0
- data/spec/fixtures/user.1.json +27 -0
- data/spec/fixtures/user.create.json +27 -0
- data/spec/fixtures/user.my.json +27 -0
- data/spec/fixtures/user_roles.json +32 -0
- data/spec/fixtures/validate_token.json +10 -0
- data/spec/spec_helper.rb +67 -0
- metadata +268 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Code42::Token do
|
4
|
+
describe "#deserialize" do
|
5
|
+
it "turns json data into ruby data" do
|
6
|
+
data = [
|
7
|
+
"06zavyo44u0bv00dpqvrba2mkh",
|
8
|
+
"0a3xef19j13kr0xgtehwba1b3w"
|
9
|
+
]
|
10
|
+
result = Code42::Token.deserialize(data)
|
11
|
+
result[:cookie_token].should == "06zavyo44u0bv00dpqvrba2mkh"
|
12
|
+
result[:url_token].should == "0a3xef19j13kr0xgtehwba1b3w"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
describe "#from_string" do
|
17
|
+
it "returns an AuthResource" do
|
18
|
+
auth = Code42::Token.from_string '06zavyo44u0bv00dpqvrba2mkh-0a3xef19j13kr0xgtehwba1b3w'
|
19
|
+
auth.cookie_token.should == '06zavyo44u0bv00dpqvrba2mkh'
|
20
|
+
auth.url_token.should == '0a3xef19j13kr0xgtehwba1b3w'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
describe "#token_string" do
|
25
|
+
it "returns concatenated token string" do
|
26
|
+
auth = Code42::Token.new(
|
27
|
+
cookie_token: '06zavyo44u0bv00dpqvrba2mkh',
|
28
|
+
url_token: '0a3xef19j13kr0xgtehwba1b3w'
|
29
|
+
)
|
30
|
+
auth.token_string.should == "06zavyo44u0bv00dpqvrba2mkh-0a3xef19j13kr0xgtehwba1b3w"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'spec_helper.rb'
|
2
|
+
|
3
|
+
describe Code42::User do
|
4
|
+
let(:valid_attributes) do
|
5
|
+
{
|
6
|
+
:id => 1,
|
7
|
+
:uid => "thwlhuOyiq2svbdcqfmm2demndi",
|
8
|
+
:status => "Active"
|
9
|
+
}
|
10
|
+
end
|
11
|
+
|
12
|
+
subject(:user) do
|
13
|
+
Code42::User.new(valid_attributes)
|
14
|
+
end
|
15
|
+
|
16
|
+
describe "#id" do
|
17
|
+
it "should return correct id" do
|
18
|
+
user.id.should == 1
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
[{"name":"SYSTEM","description":"Invalid or missing credentials"}]
|
@@ -0,0 +1,36 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-01-28T14:07:24.255-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"orgId": 1,
|
8
|
+
"orgUid": "ADMIN",
|
9
|
+
"orgName": "ADMIN",
|
10
|
+
"status": "Active",
|
11
|
+
"active": true,
|
12
|
+
"blocked": false,
|
13
|
+
"parentOrgId": null,
|
14
|
+
"type": "ENTERPRISE",
|
15
|
+
"externalId": "ADMIN",
|
16
|
+
"hierarchyCounts": {},
|
17
|
+
"configInheritanceCounts": {},
|
18
|
+
"creationDate": "2006-05-23T15:11:39.159-05:00",
|
19
|
+
"modificationDate": "2010-03-09T15:06:37.724-06:00",
|
20
|
+
"registrationKey": "9P4U-MTKU-4C2C-J9KH",
|
21
|
+
"reporting": {},
|
22
|
+
"customConfig": true,
|
23
|
+
"settings": {
|
24
|
+
"maxSeats": -1,
|
25
|
+
"maxBytes": -1
|
26
|
+
},
|
27
|
+
"settingsInherited": {
|
28
|
+
"maxSeats": "",
|
29
|
+
"maxBytes": ""
|
30
|
+
},
|
31
|
+
"settingsSummary": {
|
32
|
+
"maxSeats": -1,
|
33
|
+
"maxBytes": -1
|
34
|
+
}
|
35
|
+
}
|
36
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-02-01T10:54:46.040-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"orgId": 8,
|
8
|
+
"orgUid": "568730989110015845",
|
9
|
+
"orgName": "Google",
|
10
|
+
"status": "Active",
|
11
|
+
"active": true,
|
12
|
+
"blocked": false,
|
13
|
+
"parentOrgId": null,
|
14
|
+
"type": "ENTERPRISE",
|
15
|
+
"externalId": "568730989110015845",
|
16
|
+
"hierarchyCounts": {},
|
17
|
+
"configInheritanceCounts": {},
|
18
|
+
"creationDate": "2013-02-01T10:54:45.920-06:00",
|
19
|
+
"modificationDate": "2013-02-01T10:54:46.000-06:00",
|
20
|
+
"registrationKey": "UKSH-WK9J-SURC-49J4",
|
21
|
+
"reporting": {},
|
22
|
+
"customConfig": false,
|
23
|
+
"settings": {
|
24
|
+
"maxSeats": null,
|
25
|
+
"maxBytes": null
|
26
|
+
},
|
27
|
+
"settingsInherited": {
|
28
|
+
"maxSeats": "",
|
29
|
+
"maxBytes": ""
|
30
|
+
},
|
31
|
+
"settingsSummary": {
|
32
|
+
"maxSeats": "",
|
33
|
+
"maxBytes": ""
|
34
|
+
}
|
35
|
+
}
|
36
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-01-25T15:36:11.875-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"orgId": 1,
|
8
|
+
"orgUid": "ADMIN",
|
9
|
+
"orgName": "ADMIN",
|
10
|
+
"status": "Active",
|
11
|
+
"active": true,
|
12
|
+
"blocked": false,
|
13
|
+
"parentOrgId": null,
|
14
|
+
"type": "ENTERPRISE",
|
15
|
+
"externalId": "ADMIN",
|
16
|
+
"hierarchyCounts": {},
|
17
|
+
"configInheritanceCounts": {},
|
18
|
+
"creationDate": "2006-05-23T15:11:39.159-05:00",
|
19
|
+
"modificationDate": "2010-03-09T15:06:37.724-06:00",
|
20
|
+
"registrationKey": "9P4U-MTKU-4C2C-J9KH",
|
21
|
+
"reporting": {},
|
22
|
+
"customConfig": true,
|
23
|
+
"settings": {
|
24
|
+
"maxSeats": -1,
|
25
|
+
"maxBytes": -1
|
26
|
+
},
|
27
|
+
"settingsInherited": {
|
28
|
+
"maxSeats": "",
|
29
|
+
"maxBytes": ""
|
30
|
+
},
|
31
|
+
"settingsSummary": {
|
32
|
+
"maxSeats": -1,
|
33
|
+
"maxBytes": -1
|
34
|
+
}
|
35
|
+
}
|
36
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-01-28T13:57:00.888-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"userId": 1,
|
8
|
+
"userUid": "thwlhuOyiq2svbdcqfmm2demndi",
|
9
|
+
"status": "Active",
|
10
|
+
"username": "admin",
|
11
|
+
"email": null,
|
12
|
+
"firstName": "Admin",
|
13
|
+
"lastName": "Admin",
|
14
|
+
"quotaInBytes": -1,
|
15
|
+
"orgId": 1,
|
16
|
+
"orgUid": "ADMIN",
|
17
|
+
"orgName": "ADMIN",
|
18
|
+
"active": true,
|
19
|
+
"blocked": false,
|
20
|
+
"emailPromo": true,
|
21
|
+
"invited": false,
|
22
|
+
"orgType": "ENTERPRISE",
|
23
|
+
"usernameIsAnEmail": true,
|
24
|
+
"creationDate": "2007-01-06T15:39:46.472-06:00",
|
25
|
+
"modificationDate": "2012-12-11T16:22:26.075-06:00"
|
26
|
+
}
|
27
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-01-31T21:53:41.950-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"userId": 2,
|
8
|
+
"userUid": "832e716e813650cb",
|
9
|
+
"status": "Active",
|
10
|
+
"username": "testuser",
|
11
|
+
"email": null,
|
12
|
+
"firstName": null,
|
13
|
+
"lastName": null,
|
14
|
+
"quotaInBytes": -1,
|
15
|
+
"orgId": 2,
|
16
|
+
"orgUid": "DEFAULT_CUSTOMER_ORG_ID",
|
17
|
+
"orgName": "Default",
|
18
|
+
"active": true,
|
19
|
+
"blocked": false,
|
20
|
+
"emailPromo": true,
|
21
|
+
"invited": true,
|
22
|
+
"orgType": "ENTERPRISE",
|
23
|
+
"usernameIsAnEmail": null,
|
24
|
+
"creationDate": "2013-01-31T21:53:41.862-06:00",
|
25
|
+
"modificationDate": "2013-01-31T21:53:41.870-06:00"
|
26
|
+
}
|
27
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-01-28T11:26:16.992-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": {
|
7
|
+
"userId": 1,
|
8
|
+
"userUid": "thwlhuOyiq2svbdcqfmm2demndi",
|
9
|
+
"status": "Active",
|
10
|
+
"username": "admin",
|
11
|
+
"email": null,
|
12
|
+
"firstName": "Admin",
|
13
|
+
"lastName": "Admin",
|
14
|
+
"quotaInBytes": -1,
|
15
|
+
"orgId": 1,
|
16
|
+
"orgUid": "ADMIN",
|
17
|
+
"orgName": "ADMIN",
|
18
|
+
"active": true,
|
19
|
+
"blocked": false,
|
20
|
+
"emailPromo": true,
|
21
|
+
"invited": false,
|
22
|
+
"orgType": "ENTERPRISE",
|
23
|
+
"usernameIsAnEmail": true,
|
24
|
+
"creationDate": "2007-01-06T15:39:46.472-06:00",
|
25
|
+
"modificationDate": "2012-12-11T16:22:26.075-06:00"
|
26
|
+
}
|
27
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"timestamp": "2013-02-06T09:22:17.070-06:00",
|
4
|
+
"params": {}
|
5
|
+
},
|
6
|
+
"data": [
|
7
|
+
{
|
8
|
+
"roleId": 3,
|
9
|
+
"roleName": "PROe User",
|
10
|
+
"locked": true,
|
11
|
+
"creationDate": "2013-01-31T15:51:07.810-06:00",
|
12
|
+
"modificationDate": "2013-01-31T15:51:07.810-06:00",
|
13
|
+
"permissions": [
|
14
|
+
{"permission": "admin.cpp.login"},
|
15
|
+
{"permission": "admin.console.login"}
|
16
|
+
]
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"roleId": 16,
|
20
|
+
"roleName": "Desktop User",
|
21
|
+
"locked": true,
|
22
|
+
"creationDate": "2013-01-31T15:51:07.904-06:00",
|
23
|
+
"modificationDate": "2013-01-31T15:51:07.904-06:00",
|
24
|
+
"permissions": [
|
25
|
+
{"permission": "admin.cps.login"},
|
26
|
+
{"permission": "admin.restore.personal"},
|
27
|
+
{"permission": "admin.select.personal"},
|
28
|
+
{"permission": "admin.cpd.login"}
|
29
|
+
]
|
30
|
+
}
|
31
|
+
]
|
32
|
+
}
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
require 'code42'
|
2
|
+
require 'rspec/autorun'
|
3
|
+
require 'vcr'
|
4
|
+
require 'net/http'
|
5
|
+
|
6
|
+
RSpec.configure do |config|
|
7
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
8
|
+
config.run_all_when_everything_filtered = true
|
9
|
+
config.filter_run :focus
|
10
|
+
|
11
|
+
# Run specs in random order to surface order dependencies. If you find an
|
12
|
+
# order dependency and want to debug it, you can fix the order by providing
|
13
|
+
# the seed, which is printed after each run.
|
14
|
+
# --seed 1234
|
15
|
+
config.order = 'random'
|
16
|
+
end
|
17
|
+
|
18
|
+
VCR.configure do |config|
|
19
|
+
config.cassette_library_dir = 'spec/cassettes'
|
20
|
+
config.hook_into :webmock
|
21
|
+
config.default_cassette_options = { :record => :new_episodes }
|
22
|
+
config.configure_rspec_metadata!
|
23
|
+
end
|
24
|
+
|
25
|
+
Code42.configure do |config|
|
26
|
+
config.host = "localhost"
|
27
|
+
config.port = 7280
|
28
|
+
config.username = "admin"
|
29
|
+
config.password = "admin"
|
30
|
+
config.api_root = "/api"
|
31
|
+
end
|
32
|
+
|
33
|
+
def a_get(path)
|
34
|
+
a_request(:get, path)
|
35
|
+
end
|
36
|
+
|
37
|
+
def a_post(path)
|
38
|
+
a_request(:post, path)
|
39
|
+
end
|
40
|
+
|
41
|
+
def a_delete(path)
|
42
|
+
a_request(:delete, path)
|
43
|
+
end
|
44
|
+
|
45
|
+
def a_put(path)
|
46
|
+
a_request(:put, path)
|
47
|
+
end
|
48
|
+
|
49
|
+
def stub_get(path)
|
50
|
+
stub_request(:get, path)
|
51
|
+
end
|
52
|
+
|
53
|
+
def stub_post(path)
|
54
|
+
stub_request(:post, path)
|
55
|
+
end
|
56
|
+
|
57
|
+
def stub_delete(path)
|
58
|
+
stub_request(:delete, path)
|
59
|
+
end
|
60
|
+
|
61
|
+
def stub_put(path)
|
62
|
+
stub_request(:put, path)
|
63
|
+
end
|
64
|
+
|
65
|
+
def fixture(file)
|
66
|
+
File.new("spec/fixtures/#{file}")
|
67
|
+
end
|
metadata
ADDED
@@ -0,0 +1,268 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: code42
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.2
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Code 42
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-05-16 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rspec
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: webmock
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: vcr
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: faraday
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: activesupport
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ~>
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 3.2.0
|
86
|
+
type: :runtime
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 3.2.0
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: faraday_middleware
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
description: Provides a Ruby interface to the Code42 API
|
111
|
+
email:
|
112
|
+
- dev-ruby@code42.com
|
113
|
+
executables: []
|
114
|
+
extensions: []
|
115
|
+
extra_rdoc_files: []
|
116
|
+
files:
|
117
|
+
- .gitignore
|
118
|
+
- .rspec
|
119
|
+
- Gemfile
|
120
|
+
- LICENSE
|
121
|
+
- README.md
|
122
|
+
- Rakefile
|
123
|
+
- code42.gemspec
|
124
|
+
- examples/Gemfile
|
125
|
+
- examples/computers.rb
|
126
|
+
- examples/diagnostic.rb
|
127
|
+
- examples/orgs.rb
|
128
|
+
- examples/parser.rb
|
129
|
+
- examples/parser_test.rb
|
130
|
+
- examples/users.rb
|
131
|
+
- lib/code42.rb
|
132
|
+
- lib/code42/attribute.rb
|
133
|
+
- lib/code42/attribute_serializer.rb
|
134
|
+
- lib/code42/client.rb
|
135
|
+
- lib/code42/computer.rb
|
136
|
+
- lib/code42/connection.rb
|
137
|
+
- lib/code42/diagnostic.rb
|
138
|
+
- lib/code42/error.rb
|
139
|
+
- lib/code42/org.rb
|
140
|
+
- lib/code42/ping.rb
|
141
|
+
- lib/code42/resource.rb
|
142
|
+
- lib/code42/role.rb
|
143
|
+
- lib/code42/role_collection.rb
|
144
|
+
- lib/code42/settings.rb
|
145
|
+
- lib/code42/token.rb
|
146
|
+
- lib/code42/token_validation.rb
|
147
|
+
- lib/code42/user.rb
|
148
|
+
- lib/code42/version.rb
|
149
|
+
- spec/cassettes/Code42_Client/_create_org/returns_created_org.yml
|
150
|
+
- spec/cassettes/Code42_Client/_create_user/returns_created_user.yml
|
151
|
+
- spec/cassettes/Code42_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml
|
152
|
+
- spec/cassettes/Code42_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml
|
153
|
+
- spec/cassettes/Code42_Client/_get_token/returns_valid_tokens.yml
|
154
|
+
- spec/cassettes/Code42_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml
|
155
|
+
- spec/cassettes/Code42_Client/_org/when_ID_is_not_passed/returns_my_org.yml
|
156
|
+
- spec/cassettes/Code42_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml
|
157
|
+
- spec/cassettes/Code42_Client/_ping/returns_a_ping.yml
|
158
|
+
- spec/cassettes/Code42_Client/_user/when_ID_is_not_passed/returns_my_user.yml
|
159
|
+
- spec/cassettes/Code42_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml
|
160
|
+
- spec/cassettes/Code42_Client/_user_roles/returns_an_enumerable.yml
|
161
|
+
- spec/cassettes/Code42_Client/_validate_token/returns_a_valid_response.yml
|
162
|
+
- spec/cassettes/Crashplan_Client/_create_org/returns_created_org.yml
|
163
|
+
- spec/cassettes/Crashplan_Client/_create_user/returns_created_user.yml
|
164
|
+
- spec/cassettes/Crashplan_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml
|
165
|
+
- spec/cassettes/Crashplan_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml
|
166
|
+
- spec/cassettes/Crashplan_Client/_get_token/returns_valid_tokens.yml
|
167
|
+
- spec/cassettes/Crashplan_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml
|
168
|
+
- spec/cassettes/Crashplan_Client/_org/when_ID_is_not_passed/returns_my_org.yml
|
169
|
+
- spec/cassettes/Crashplan_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml
|
170
|
+
- spec/cassettes/Crashplan_Client/_ping/returns_a_ping.yml
|
171
|
+
- spec/cassettes/Crashplan_Client/_user/when_ID_is_not_passed/returns_my_user.yml
|
172
|
+
- spec/cassettes/Crashplan_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml
|
173
|
+
- spec/cassettes/Crashplan_Client/_user_roles/returns_an_enumerable.yml
|
174
|
+
- spec/cassettes/Crashplan_Client/_validate_token/returns_a_valid_response.yml
|
175
|
+
- spec/crashplan/client_spec.rb
|
176
|
+
- spec/crashplan/connection_spec.rb
|
177
|
+
- spec/crashplan/org_spec.rb
|
178
|
+
- spec/crashplan/ping_spec.rb
|
179
|
+
- spec/crashplan/resource_spec.rb
|
180
|
+
- spec/crashplan/role_spec.rb
|
181
|
+
- spec/crashplan/settings_spec.rb
|
182
|
+
- spec/crashplan/token_spec.rb
|
183
|
+
- spec/crashplan/user_spec.rb
|
184
|
+
- spec/fixtures/auth/bad_password.json
|
185
|
+
- spec/fixtures/authToken.json
|
186
|
+
- spec/fixtures/org.1.json
|
187
|
+
- spec/fixtures/org.create.json
|
188
|
+
- spec/fixtures/org.my.json
|
189
|
+
- spec/fixtures/ping.json
|
190
|
+
- spec/fixtures/user.1.json
|
191
|
+
- spec/fixtures/user.create.json
|
192
|
+
- spec/fixtures/user.my.json
|
193
|
+
- spec/fixtures/user_roles.json
|
194
|
+
- spec/fixtures/validate_token.json
|
195
|
+
- spec/spec_helper.rb
|
196
|
+
homepage: ''
|
197
|
+
licenses: []
|
198
|
+
post_install_message:
|
199
|
+
rdoc_options: []
|
200
|
+
require_paths:
|
201
|
+
- lib
|
202
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
203
|
+
none: false
|
204
|
+
requirements:
|
205
|
+
- - ! '>='
|
206
|
+
- !ruby/object:Gem::Version
|
207
|
+
version: '0'
|
208
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
210
|
+
requirements:
|
211
|
+
- - ! '>='
|
212
|
+
- !ruby/object:Gem::Version
|
213
|
+
version: '0'
|
214
|
+
requirements: []
|
215
|
+
rubyforge_project:
|
216
|
+
rubygems_version: 1.8.24
|
217
|
+
signing_key:
|
218
|
+
specification_version: 3
|
219
|
+
summary: ! '...'
|
220
|
+
test_files:
|
221
|
+
- spec/cassettes/Code42_Client/_create_org/returns_created_org.yml
|
222
|
+
- spec/cassettes/Code42_Client/_create_user/returns_created_user.yml
|
223
|
+
- spec/cassettes/Code42_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml
|
224
|
+
- spec/cassettes/Code42_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml
|
225
|
+
- spec/cassettes/Code42_Client/_get_token/returns_valid_tokens.yml
|
226
|
+
- spec/cassettes/Code42_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml
|
227
|
+
- spec/cassettes/Code42_Client/_org/when_ID_is_not_passed/returns_my_org.yml
|
228
|
+
- spec/cassettes/Code42_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml
|
229
|
+
- spec/cassettes/Code42_Client/_ping/returns_a_ping.yml
|
230
|
+
- spec/cassettes/Code42_Client/_user/when_ID_is_not_passed/returns_my_user.yml
|
231
|
+
- spec/cassettes/Code42_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml
|
232
|
+
- spec/cassettes/Code42_Client/_user_roles/returns_an_enumerable.yml
|
233
|
+
- spec/cassettes/Code42_Client/_validate_token/returns_a_valid_response.yml
|
234
|
+
- spec/cassettes/Crashplan_Client/_create_org/returns_created_org.yml
|
235
|
+
- spec/cassettes/Crashplan_Client/_create_user/returns_created_user.yml
|
236
|
+
- spec/cassettes/Crashplan_Client/_create_user/when_sending_an_invalid_email/raises_an_exception.yml
|
237
|
+
- spec/cassettes/Crashplan_Client/_find_org_by_name/returns_the_org_with_the_specified_name.yml
|
238
|
+
- spec/cassettes/Crashplan_Client/_get_token/returns_valid_tokens.yml
|
239
|
+
- spec/cassettes/Crashplan_Client/_get_token/when_providing_invalid_credentials/should_raise_an_exception.yml
|
240
|
+
- spec/cassettes/Crashplan_Client/_org/when_ID_is_not_passed/returns_my_org.yml
|
241
|
+
- spec/cassettes/Crashplan_Client/_org/when_ID_is_passed_in/returns_a_specific_org.yml
|
242
|
+
- spec/cassettes/Crashplan_Client/_ping/returns_a_ping.yml
|
243
|
+
- spec/cassettes/Crashplan_Client/_user/when_ID_is_not_passed/returns_my_user.yml
|
244
|
+
- spec/cassettes/Crashplan_Client/_user/when_ID_is_passed_in/returns_a_specific_user.yml
|
245
|
+
- spec/cassettes/Crashplan_Client/_user_roles/returns_an_enumerable.yml
|
246
|
+
- spec/cassettes/Crashplan_Client/_validate_token/returns_a_valid_response.yml
|
247
|
+
- spec/crashplan/client_spec.rb
|
248
|
+
- spec/crashplan/connection_spec.rb
|
249
|
+
- spec/crashplan/org_spec.rb
|
250
|
+
- spec/crashplan/ping_spec.rb
|
251
|
+
- spec/crashplan/resource_spec.rb
|
252
|
+
- spec/crashplan/role_spec.rb
|
253
|
+
- spec/crashplan/settings_spec.rb
|
254
|
+
- spec/crashplan/token_spec.rb
|
255
|
+
- spec/crashplan/user_spec.rb
|
256
|
+
- spec/fixtures/auth/bad_password.json
|
257
|
+
- spec/fixtures/authToken.json
|
258
|
+
- spec/fixtures/org.1.json
|
259
|
+
- spec/fixtures/org.create.json
|
260
|
+
- spec/fixtures/org.my.json
|
261
|
+
- spec/fixtures/ping.json
|
262
|
+
- spec/fixtures/user.1.json
|
263
|
+
- spec/fixtures/user.create.json
|
264
|
+
- spec/fixtures/user.my.json
|
265
|
+
- spec/fixtures/user_roles.json
|
266
|
+
- spec/fixtures/validate_token.json
|
267
|
+
- spec/spec_helper.rb
|
268
|
+
has_rdoc:
|