scalingo 3.4.0 → 3.6.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/.github/workflows/dependabot.yml +17 -0
- data/.github/workflows/publish.yml +1 -1
- data/.github/workflows/ruby.yml +3 -3
- data/.rubocop.yml +9 -21
- data/CHANGELOG.md +10 -0
- data/lib/scalingo/api/client.rb +6 -15
- data/lib/scalingo/api/response.rb +3 -3
- data/lib/scalingo/auth/tokens.rb +2 -2
- data/lib/scalingo/auth.rb +1 -1
- data/lib/scalingo/billing.rb +1 -1
- data/lib/scalingo/client.rb +6 -6
- data/lib/scalingo/configuration.rb +3 -3
- data/lib/scalingo/core_client.rb +2 -3
- data/lib/scalingo/regional/addons.rb +1 -1
- data/lib/scalingo/regional.rb +1 -1
- data/lib/scalingo/regional_database.rb +1 -1
- data/lib/scalingo/token_holder.rb +1 -1
- data/lib/scalingo/version.rb +1 -1
- data/scalingo.gemspec +5 -8
- metadata +13 -97
- data/spec/scalingo/api/client_spec.rb +0 -256
- data/spec/scalingo/api/endpoint_spec.rb +0 -45
- data/spec/scalingo/api/response_spec.rb +0 -301
- data/spec/scalingo/auth/keys_spec.rb +0 -58
- data/spec/scalingo/auth/scm_integrations_spec.rb +0 -58
- data/spec/scalingo/auth/tokens_spec.rb +0 -74
- data/spec/scalingo/auth/two_factor_auth_spec.rb +0 -69
- data/spec/scalingo/auth/user_spec.rb +0 -31
- data/spec/scalingo/auth_spec.rb +0 -15
- data/spec/scalingo/bearer_token_spec.rb +0 -72
- data/spec/scalingo/billing/profile_spec.rb +0 -55
- data/spec/scalingo/billing_spec.rb +0 -11
- data/spec/scalingo/client_spec.rb +0 -93
- data/spec/scalingo/configuration_spec.rb +0 -57
- data/spec/scalingo/core_client_spec.rb +0 -23
- data/spec/scalingo/regional/addons_spec.rb +0 -169
- data/spec/scalingo/regional/apps_spec.rb +0 -137
- data/spec/scalingo/regional/autoscalers_spec.rb +0 -84
- data/spec/scalingo/regional/collaborators_spec.rb +0 -69
- data/spec/scalingo/regional/containers_spec.rb +0 -67
- data/spec/scalingo/regional/deployments_spec.rb +0 -45
- data/spec/scalingo/regional/domains_spec.rb +0 -84
- data/spec/scalingo/regional/environment_spec.rb +0 -77
- data/spec/scalingo/regional/events_spec.rb +0 -65
- data/spec/scalingo/regional/logs_spec.rb +0 -39
- data/spec/scalingo/regional/metrics_spec.rb +0 -46
- data/spec/scalingo/regional/notifiers_spec.rb +0 -113
- data/spec/scalingo/regional/operations_spec.rb +0 -27
- data/spec/scalingo/regional/scm_repo_links_spec.rb +0 -48
- data/spec/scalingo/regional_database/backups_spec.rb +0 -58
- data/spec/scalingo/regional_database/databases_spec.rb +0 -39
- data/spec/scalingo/regional_database_spec.rb +0 -11
- data/spec/scalingo/regional_spec.rb +0 -14
- data/spec/scalingo/token_holder_spec.rb +0 -81
@@ -1,77 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Environment do
|
4
|
-
describe_method "for" do
|
5
|
-
context "success" do
|
6
|
-
let(:arguments) { meta[:app_id] }
|
7
|
-
let(:stub_pattern) { "for-200" }
|
8
|
-
|
9
|
-
it_behaves_like "a collection response"
|
10
|
-
it_behaves_like "a non-paginated collection"
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
describe_method "create" do
|
15
|
-
context "success" do
|
16
|
-
let(:arguments) { [meta[:app_id], meta[:create][:valid]] }
|
17
|
-
let(:stub_pattern) { "create-201" }
|
18
|
-
|
19
|
-
it_behaves_like "a singular object response", 201
|
20
|
-
end
|
21
|
-
|
22
|
-
context "failure" do
|
23
|
-
let(:arguments) { [meta[:app_id], meta[:create][:invalid]] }
|
24
|
-
let(:stub_pattern) { "create-422" }
|
25
|
-
|
26
|
-
it_behaves_like "an unprocessable request"
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
describe_method "update" do
|
31
|
-
context "success" do
|
32
|
-
let(:arguments) { [meta[:app_id], meta[:id], meta[:update][:valid]] }
|
33
|
-
let(:stub_pattern) { "update-200" }
|
34
|
-
|
35
|
-
it_behaves_like "a singular object response"
|
36
|
-
end
|
37
|
-
|
38
|
-
context "not found" do
|
39
|
-
let(:arguments) { [meta[:app_id], meta[:not_found_id], meta[:update][:valid]] }
|
40
|
-
let(:stub_pattern) { "update-404" }
|
41
|
-
|
42
|
-
it_behaves_like "a not found response"
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
describe_method "bulk_update" do
|
47
|
-
let(:arguments) { [meta[:app_id], meta[:update][:bulk]] }
|
48
|
-
let(:expected_count) { 4 }
|
49
|
-
let(:stub_pattern) { "bulk-update-200" }
|
50
|
-
|
51
|
-
it_behaves_like "a collection response"
|
52
|
-
it_behaves_like "a non-paginated collection"
|
53
|
-
end
|
54
|
-
|
55
|
-
describe_method "destroy" do
|
56
|
-
context "success" do
|
57
|
-
let(:arguments) { [meta[:app_id], meta[:id]] }
|
58
|
-
let(:stub_pattern) { "destroy-204" }
|
59
|
-
|
60
|
-
it_behaves_like "an empty response"
|
61
|
-
end
|
62
|
-
|
63
|
-
context "not found" do
|
64
|
-
let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
|
65
|
-
let(:stub_pattern) { "destroy-404" }
|
66
|
-
|
67
|
-
it_behaves_like "a not found response"
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
describe_method "bulk_destroy" do
|
72
|
-
let(:arguments) { [meta[:app_id], meta[:destroy][:bulk]] }
|
73
|
-
let(:stub_pattern) { "bulk-destroy-204" }
|
74
|
-
|
75
|
-
it_behaves_like "an empty response"
|
76
|
-
end
|
77
|
-
end
|
@@ -1,65 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Events do
|
4
|
-
describe_method "categories" do
|
5
|
-
context "guest" do
|
6
|
-
subject { guest_endpoint }
|
7
|
-
|
8
|
-
let(:expected_count) { 7 }
|
9
|
-
let(:stub_pattern) { "categories-guest" }
|
10
|
-
|
11
|
-
it_behaves_like "a collection response"
|
12
|
-
it_behaves_like "a non-paginated collection"
|
13
|
-
end
|
14
|
-
|
15
|
-
context "logged" do
|
16
|
-
let(:expected_count) { 7 }
|
17
|
-
let(:stub_pattern) { "categories-logged" }
|
18
|
-
|
19
|
-
it_behaves_like "a collection response"
|
20
|
-
it_behaves_like "a non-paginated collection"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
describe_method "types" do
|
25
|
-
context "guest" do
|
26
|
-
subject { guest_endpoint }
|
27
|
-
|
28
|
-
let(:expected_count) { 33 }
|
29
|
-
let(:stub_pattern) { "types-guest" }
|
30
|
-
|
31
|
-
it_behaves_like "a collection response"
|
32
|
-
it_behaves_like "a non-paginated collection"
|
33
|
-
end
|
34
|
-
|
35
|
-
context "logged" do
|
36
|
-
let(:expected_count) { 33 }
|
37
|
-
let(:stub_pattern) { "types-logged" }
|
38
|
-
|
39
|
-
it_behaves_like "a collection response"
|
40
|
-
it_behaves_like "a non-paginated collection"
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
describe_method "all" do
|
45
|
-
context "success" do
|
46
|
-
let(:arguments) { {} }
|
47
|
-
let(:expected_count) { 30 }
|
48
|
-
let(:stub_pattern) { "all-200" }
|
49
|
-
|
50
|
-
it_behaves_like "a collection response"
|
51
|
-
it_behaves_like "a paginated collection"
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
describe_method "for" do
|
56
|
-
context "success" do
|
57
|
-
let(:arguments) { [meta[:app_id], {}] }
|
58
|
-
let(:expected_count) { 18 }
|
59
|
-
let(:stub_pattern) { "for-200" }
|
60
|
-
|
61
|
-
it_behaves_like "a collection response"
|
62
|
-
it_behaves_like "a paginated collection"
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Logs do
|
4
|
-
describe_method "get" do
|
5
|
-
context "guest" do
|
6
|
-
subject { guest_endpoint }
|
7
|
-
|
8
|
-
let(:arguments) { [meta[:urls][:guest], {}] }
|
9
|
-
let(:stub_pattern) { "get-guest-200" }
|
10
|
-
|
11
|
-
it_behaves_like "a singular object response"
|
12
|
-
end
|
13
|
-
|
14
|
-
context "logged" do
|
15
|
-
let(:arguments) { [meta[:urls][:logged], {}] }
|
16
|
-
let(:stub_pattern) { "get-logged-200" }
|
17
|
-
|
18
|
-
it_behaves_like "a singular object response"
|
19
|
-
end
|
20
|
-
|
21
|
-
context "with limit" do
|
22
|
-
let(:arguments) { [meta[:urls][:with_limit], meta[:options]] }
|
23
|
-
let(:stub_pattern) { "get-with-limit-200" }
|
24
|
-
|
25
|
-
it_behaves_like "a singular object response"
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
describe_method "archives" do
|
30
|
-
context "success" do
|
31
|
-
let(:arguments) { meta[:app_id] }
|
32
|
-
let(:expected_count) { 0 }
|
33
|
-
let(:stub_pattern) { "archives-200" }
|
34
|
-
|
35
|
-
it_behaves_like "a collection response"
|
36
|
-
it_behaves_like "a non-paginated collection"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,46 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Metrics do
|
4
|
-
describe_method "types" do
|
5
|
-
context "guest" do
|
6
|
-
subject { guest_endpoint }
|
7
|
-
|
8
|
-
let(:stub_pattern) { "types-guest" }
|
9
|
-
|
10
|
-
it_behaves_like "a singular object response"
|
11
|
-
end
|
12
|
-
|
13
|
-
context "logged" do
|
14
|
-
let(:stub_pattern) { "types-logged" }
|
15
|
-
|
16
|
-
it_behaves_like "a singular object response"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe_method "for" do
|
21
|
-
let(:expected_keys) { %i[time value] }
|
22
|
-
|
23
|
-
context "cpu" do
|
24
|
-
let(:arguments) { [meta[:app_id], meta[:for][:valid_cpu]] }
|
25
|
-
let(:expected_count) { 181 }
|
26
|
-
let(:stub_pattern) { "for-valid-cpu-200" }
|
27
|
-
|
28
|
-
it_behaves_like "a collection response"
|
29
|
-
it_behaves_like "a non-paginated collection"
|
30
|
-
end
|
31
|
-
|
32
|
-
context "router" do
|
33
|
-
let(:arguments) { [meta[:app_id], meta[:for][:valid_router]] }
|
34
|
-
let(:stub_pattern) { "for-valid-router-404" }
|
35
|
-
|
36
|
-
it_behaves_like "a not found response"
|
37
|
-
end
|
38
|
-
|
39
|
-
context "invalid" do
|
40
|
-
let(:arguments) { [meta[:app_id], meta[:for][:invalid]] }
|
41
|
-
let(:stub_pattern) { "for-invalid-400" }
|
42
|
-
|
43
|
-
it_behaves_like "a client error"
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
@@ -1,113 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Notifiers do
|
4
|
-
describe_method "platforms" do
|
5
|
-
context "guest" do
|
6
|
-
subject { guest_endpoint }
|
7
|
-
|
8
|
-
let(:expected_count) { 4 }
|
9
|
-
let(:stub_pattern) { "platforms-guest" }
|
10
|
-
|
11
|
-
it_behaves_like "a collection response"
|
12
|
-
it_behaves_like "a non-paginated collection"
|
13
|
-
end
|
14
|
-
|
15
|
-
context "logged" do
|
16
|
-
let(:expected_count) { 4 }
|
17
|
-
let(:stub_pattern) { "platforms-logged" }
|
18
|
-
|
19
|
-
it_behaves_like "a collection response"
|
20
|
-
it_behaves_like "a non-paginated collection"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
describe_method "for" do
|
25
|
-
context "success" do
|
26
|
-
let(:arguments) { meta[:app_id] }
|
27
|
-
let(:stub_pattern) { "for-200" }
|
28
|
-
|
29
|
-
it_behaves_like "a collection response"
|
30
|
-
it_behaves_like "a non-paginated collection"
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
describe_method "find" do
|
35
|
-
context "success" do
|
36
|
-
let(:arguments) { [meta[:app_id], meta[:id]] }
|
37
|
-
let(:stub_pattern) { "find-200" }
|
38
|
-
|
39
|
-
it_behaves_like "a singular object response"
|
40
|
-
end
|
41
|
-
|
42
|
-
context "not found" do
|
43
|
-
let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
|
44
|
-
let(:stub_pattern) { "find-404" }
|
45
|
-
|
46
|
-
it_behaves_like "a not found response"
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
describe_method "create" do
|
51
|
-
context "success" do
|
52
|
-
let(:arguments) { [meta[:app_id], meta[:create][:valid]] }
|
53
|
-
let(:stub_pattern) { "create-201" }
|
54
|
-
|
55
|
-
it_behaves_like "a singular object response", 201
|
56
|
-
end
|
57
|
-
|
58
|
-
context "not found" do
|
59
|
-
let(:arguments) { [meta[:app_id], meta[:create][:not_found]] }
|
60
|
-
let(:stub_pattern) { "create-404" }
|
61
|
-
|
62
|
-
it_behaves_like "a not found response"
|
63
|
-
end
|
64
|
-
|
65
|
-
context "failure" do
|
66
|
-
let(:arguments) { [meta[:app_id], meta[:create][:invalid]] }
|
67
|
-
let(:stub_pattern) { "create-422" }
|
68
|
-
|
69
|
-
it_behaves_like "an unprocessable request"
|
70
|
-
end
|
71
|
-
end
|
72
|
-
|
73
|
-
describe_method "test" do
|
74
|
-
context "success" do
|
75
|
-
let(:arguments) { [meta[:app_id], meta[:id]] }
|
76
|
-
let(:stub_pattern) { "test-200" }
|
77
|
-
|
78
|
-
it_behaves_like "a singular object response"
|
79
|
-
end
|
80
|
-
|
81
|
-
context "not found" do
|
82
|
-
let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
|
83
|
-
let(:stub_pattern) { "test-404" }
|
84
|
-
|
85
|
-
it_behaves_like "a not found response"
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
describe_method "update" do
|
90
|
-
context "success" do
|
91
|
-
let(:arguments) { [meta[:app_id], meta[:id], meta[:update][:valid]] }
|
92
|
-
let(:stub_pattern) { "update-200" }
|
93
|
-
|
94
|
-
it_behaves_like "a singular object response"
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
describe_method "destroy" do
|
99
|
-
context "success" do
|
100
|
-
let(:arguments) { [meta[:app_id], meta[:id]] }
|
101
|
-
let(:stub_pattern) { "destroy-204" }
|
102
|
-
|
103
|
-
it_behaves_like "an empty response"
|
104
|
-
end
|
105
|
-
|
106
|
-
context "not found" do
|
107
|
-
let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
|
108
|
-
let(:stub_pattern) { "destroy-404" }
|
109
|
-
|
110
|
-
it_behaves_like "a not found response"
|
111
|
-
end
|
112
|
-
end
|
113
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::Operations do
|
4
|
-
describe_method "get" do
|
5
|
-
context "success" do
|
6
|
-
let(:arguments) { "apps/#{meta[:app_id]}/operations/#{meta[:id]}" }
|
7
|
-
let(:stub_pattern) { "find-200" }
|
8
|
-
|
9
|
-
it_behaves_like "a singular object response"
|
10
|
-
end
|
11
|
-
|
12
|
-
context "failure" do
|
13
|
-
let(:arguments) { "apps/#{meta[:app_id]}/operations/#{meta[:not_found_id]}" }
|
14
|
-
let(:stub_pattern) { "find-404" }
|
15
|
-
|
16
|
-
it_behaves_like "a not found response"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe_method "find" do
|
21
|
-
it "delegates to get" do
|
22
|
-
expect(subject).to receive(:get).with("apps/a/operations/b", :headers).once
|
23
|
-
|
24
|
-
subject.find(:a, :b, :headers)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
@@ -1,48 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional::ScmRepoLinks do
|
4
|
-
describe_method "show" do
|
5
|
-
context "success" do
|
6
|
-
let(:arguments) { meta[:app_id] }
|
7
|
-
let(:stub_pattern) { "show-200" }
|
8
|
-
|
9
|
-
it_behaves_like "a singular object response"
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
describe_method "create" do
|
14
|
-
context "success" do
|
15
|
-
let(:arguments) { [meta[:app_id], meta[:create][:valid]] }
|
16
|
-
let(:stub_pattern) { "create-201" }
|
17
|
-
|
18
|
-
it_behaves_like "a singular object response", 201
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe_method "update" do
|
23
|
-
context "success" do
|
24
|
-
let(:arguments) { [meta[:app_id], meta[:update][:valid]] }
|
25
|
-
let(:stub_pattern) { "update-200" }
|
26
|
-
|
27
|
-
it_behaves_like "a singular object response"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
describe_method "deploy" do
|
32
|
-
context "success" do
|
33
|
-
let(:arguments) { [meta[:app_id], meta[:deploy][:valid]] }
|
34
|
-
let(:stub_pattern) { "manual-deploy-200" }
|
35
|
-
|
36
|
-
it_behaves_like "a singular object response"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
describe_method "destroy" do
|
41
|
-
context "success" do
|
42
|
-
let(:arguments) { meta[:app_id] }
|
43
|
-
let(:stub_pattern) { "destroy-204" }
|
44
|
-
|
45
|
-
it_behaves_like "an empty response"
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
@@ -1,58 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::RegionalDatabase::Backups do
|
4
|
-
before do
|
5
|
-
scalingo.add_database_token(meta[:addon_id], "the-bearer-token")
|
6
|
-
end
|
7
|
-
|
8
|
-
describe_method "create" do
|
9
|
-
context "success" do
|
10
|
-
let(:arguments) { [meta[:addon_id]] }
|
11
|
-
let(:stub_pattern) { "create-201" }
|
12
|
-
|
13
|
-
it_behaves_like "a singular object response", 201
|
14
|
-
end
|
15
|
-
|
16
|
-
context "failure" do
|
17
|
-
let(:arguments) { [meta[:addon_id]] }
|
18
|
-
let(:stub_pattern) { "create-400" }
|
19
|
-
|
20
|
-
it_behaves_like "a client error"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
describe_method "for" do
|
25
|
-
context "success" do
|
26
|
-
let(:arguments) { [meta[:addon_id]] }
|
27
|
-
let(:stub_pattern) { "for-200" }
|
28
|
-
let(:expected_count) { 3 }
|
29
|
-
|
30
|
-
it_behaves_like "a collection response"
|
31
|
-
it_behaves_like "a non-paginated collection"
|
32
|
-
end
|
33
|
-
|
34
|
-
context "failure" do
|
35
|
-
let(:arguments) { [meta[:addon_id]] }
|
36
|
-
let(:stub_pattern) { "for-400" }
|
37
|
-
|
38
|
-
it_behaves_like "a client error"
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
describe_method "archive" do
|
43
|
-
context "success" do
|
44
|
-
let(:arguments) { [meta[:addon_id], meta[:backup_id]] }
|
45
|
-
let(:stub_pattern) { "archive-200" }
|
46
|
-
let(:expected_keys) { %i[download_url] }
|
47
|
-
|
48
|
-
it_behaves_like "a singular object response"
|
49
|
-
end
|
50
|
-
|
51
|
-
context "failure" do
|
52
|
-
let(:arguments) { [meta[:addon_id], meta[:backup_id]] }
|
53
|
-
let(:stub_pattern) { "archive-400" }
|
54
|
-
|
55
|
-
it_behaves_like "a client error"
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::RegionalDatabase::Databases do
|
4
|
-
before do
|
5
|
-
scalingo.add_database_token(meta[:id], "the-bearer-token")
|
6
|
-
end
|
7
|
-
|
8
|
-
describe_method "find" do
|
9
|
-
context "success" do
|
10
|
-
let(:arguments) { [meta[:id]] }
|
11
|
-
let(:stub_pattern) { "find-200" }
|
12
|
-
|
13
|
-
it_behaves_like "a singular object response"
|
14
|
-
end
|
15
|
-
|
16
|
-
context "failure" do
|
17
|
-
let(:arguments) { [meta[:id]] }
|
18
|
-
let(:stub_pattern) { "find-400" }
|
19
|
-
|
20
|
-
it_behaves_like "a client error"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
describe_method "upgrade" do
|
25
|
-
context "success" do
|
26
|
-
let(:arguments) { [meta[:id]] }
|
27
|
-
let(:stub_pattern) { "upgrade-202" }
|
28
|
-
|
29
|
-
it_behaves_like "a singular object response", 202
|
30
|
-
end
|
31
|
-
|
32
|
-
context "failure" do
|
33
|
-
let(:arguments) { [meta[:id]] }
|
34
|
-
let(:stub_pattern) { "upgrade-400" }
|
35
|
-
|
36
|
-
it_behaves_like "a client error"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::RegionalDatabase do
|
4
|
-
subject { described_class.new("url") }
|
5
|
-
|
6
|
-
%w[databases backups].each do |section|
|
7
|
-
it "handles requests for #{section}" do
|
8
|
-
expect(subject.respond_to?(section)).to be true
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::Regional do
|
4
|
-
subject { described_class.new("url") }
|
5
|
-
|
6
|
-
%w[
|
7
|
-
addons apps autoscalers collaborators containers deployments domains
|
8
|
-
environment events logs metrics notifiers operations scm_repo_links
|
9
|
-
].each do |section|
|
10
|
-
it "handles requests for #{section}" do
|
11
|
-
expect(subject.respond_to?(section)).to be true
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
@@ -1,81 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
RSpec.describe Scalingo::TokenHolder do
|
4
|
-
subject(:token_holder_dummy_class) do
|
5
|
-
Class.new {
|
6
|
-
include(Scalingo::TokenHolder)
|
7
|
-
attr_accessor :config
|
8
|
-
}
|
9
|
-
end
|
10
|
-
|
11
|
-
describe "authenticate_with_bearer_token" do
|
12
|
-
subject { token_holder.authenticate_with_bearer_token(token, expires_at: expires_at, raise_on_expired_token: false) }
|
13
|
-
|
14
|
-
let(:token_holder) do
|
15
|
-
holder = token_holder_dummy_class.new
|
16
|
-
holder.config = Scalingo::Configuration.new
|
17
|
-
|
18
|
-
holder
|
19
|
-
end
|
20
|
-
|
21
|
-
context "without expiration date" do
|
22
|
-
let(:token) { "1234" }
|
23
|
-
let(:expires_at) { nil }
|
24
|
-
|
25
|
-
it "set the auth token" do
|
26
|
-
expect(token_holder.authenticated?).to be false
|
27
|
-
subject
|
28
|
-
expect(token_holder.authenticated?).to be true
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
context "with an expiration date" do
|
33
|
-
let(:token) { "1234" }
|
34
|
-
let(:expires_at) { Time.now + 1.hour }
|
35
|
-
|
36
|
-
it "refresh the auth token" do
|
37
|
-
token_holder.authenticate_with_bearer_token(token, expires_at: 1.hour.ago, raise_on_expired_token: false)
|
38
|
-
expect(token_holder.authenticated?).to be false
|
39
|
-
|
40
|
-
subject
|
41
|
-
expect(token_holder.authenticated?).to be true
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
describe "authenticate_database_with_bearer_token" do
|
47
|
-
subject { token_holder.authenticate_database_with_bearer_token(database_id, token, expires_at: expires_at, raise_on_expired_token: false) }
|
48
|
-
|
49
|
-
let(:token_holder) do
|
50
|
-
holder = token_holder_dummy_class.new
|
51
|
-
holder.config = Scalingo::Configuration.new
|
52
|
-
|
53
|
-
holder
|
54
|
-
end
|
55
|
-
|
56
|
-
let(:database_id) { "db-id-1234" }
|
57
|
-
|
58
|
-
context "without expiration date" do
|
59
|
-
let(:token) { "1234" }
|
60
|
-
let(:expires_at) { nil }
|
61
|
-
|
62
|
-
it "set the database auth token" do
|
63
|
-
expect(token_holder.authenticated_for_database?(database_id)).to be false
|
64
|
-
subject
|
65
|
-
expect(token_holder.authenticated_for_database?(database_id)).to be true
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
context "with an expiration date" do
|
70
|
-
let(:token) { "1234" }
|
71
|
-
let(:expires_at) { Time.now + 1.hour }
|
72
|
-
|
73
|
-
it "refresh the database token" do
|
74
|
-
token_holder.authenticate_database_with_bearer_token(database_id, token, expires_at: 1.hour.ago, raise_on_expired_token: false)
|
75
|
-
expect(token_holder.authenticated_for_database?(database_id)).to be false
|
76
|
-
subject
|
77
|
-
expect(token_holder.authenticated_for_database?(database_id)).to be true
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|