scalingo 3.3.0 → 3.5.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.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dependabot.yml +17 -0
  3. data/.github/workflows/publish.yml +6 -3
  4. data/.github/workflows/ruby.yml +3 -3
  5. data/.rubocop.yml +9 -21
  6. data/CHANGELOG.md +10 -0
  7. data/README.md +1 -1
  8. data/lib/scalingo/api/client.rb +6 -15
  9. data/lib/scalingo/api/response.rb +3 -3
  10. data/lib/scalingo/auth/tokens.rb +2 -2
  11. data/lib/scalingo/auth.rb +1 -1
  12. data/lib/scalingo/billing.rb +1 -1
  13. data/lib/scalingo/client.rb +6 -6
  14. data/lib/scalingo/configuration.rb +3 -3
  15. data/lib/scalingo/core_client.rb +2 -3
  16. data/lib/scalingo/regional/addons.rb +1 -1
  17. data/lib/scalingo/regional.rb +1 -1
  18. data/lib/scalingo/regional_database/databases.rb +13 -0
  19. data/lib/scalingo/regional_database.rb +1 -1
  20. data/lib/scalingo/token_holder.rb +1 -1
  21. data/lib/scalingo/version.rb +1 -1
  22. data/samples/regional_database/backups/_meta.json +1 -1
  23. data/samples/regional_database/backups/archive-200.json +2 -2
  24. data/samples/regional_database/backups/archive-400.json +1 -1
  25. data/samples/regional_database/backups/create-201.json +1 -1
  26. data/samples/regional_database/backups/create-400.json +1 -1
  27. data/samples/regional_database/backups/for-200.json +1 -1
  28. data/samples/regional_database/backups/for-400.json +1 -1
  29. data/samples/regional_database/databases/_meta.json +1 -1
  30. data/samples/regional_database/databases/find-200.json +5 -3
  31. data/samples/regional_database/databases/find-400.json +1 -1
  32. data/samples/regional_database/databases/upgrade-202.json +39 -0
  33. data/samples/regional_database/databases/upgrade-400.json +24 -0
  34. data/scalingo.gemspec +4 -7
  35. metadata +13 -92
  36. data/spec/scalingo/api/client_spec.rb +0 -256
  37. data/spec/scalingo/api/endpoint_spec.rb +0 -45
  38. data/spec/scalingo/api/response_spec.rb +0 -301
  39. data/spec/scalingo/auth/keys_spec.rb +0 -58
  40. data/spec/scalingo/auth/scm_integrations_spec.rb +0 -58
  41. data/spec/scalingo/auth/tokens_spec.rb +0 -74
  42. data/spec/scalingo/auth/two_factor_auth_spec.rb +0 -69
  43. data/spec/scalingo/auth/user_spec.rb +0 -31
  44. data/spec/scalingo/auth_spec.rb +0 -15
  45. data/spec/scalingo/bearer_token_spec.rb +0 -72
  46. data/spec/scalingo/billing/profile_spec.rb +0 -55
  47. data/spec/scalingo/billing_spec.rb +0 -11
  48. data/spec/scalingo/client_spec.rb +0 -93
  49. data/spec/scalingo/configuration_spec.rb +0 -57
  50. data/spec/scalingo/core_client_spec.rb +0 -23
  51. data/spec/scalingo/regional/addons_spec.rb +0 -169
  52. data/spec/scalingo/regional/apps_spec.rb +0 -137
  53. data/spec/scalingo/regional/autoscalers_spec.rb +0 -84
  54. data/spec/scalingo/regional/collaborators_spec.rb +0 -69
  55. data/spec/scalingo/regional/containers_spec.rb +0 -67
  56. data/spec/scalingo/regional/deployments_spec.rb +0 -45
  57. data/spec/scalingo/regional/domains_spec.rb +0 -84
  58. data/spec/scalingo/regional/environment_spec.rb +0 -77
  59. data/spec/scalingo/regional/events_spec.rb +0 -65
  60. data/spec/scalingo/regional/logs_spec.rb +0 -39
  61. data/spec/scalingo/regional/metrics_spec.rb +0 -46
  62. data/spec/scalingo/regional/notifiers_spec.rb +0 -113
  63. data/spec/scalingo/regional/operations_spec.rb +0 -27
  64. data/spec/scalingo/regional/scm_repo_links_spec.rb +0 -48
  65. data/spec/scalingo/regional_database/backups_spec.rb +0 -58
  66. data/spec/scalingo/regional_database/databases_spec.rb +0 -23
  67. data/spec/scalingo/regional_database_spec.rb +0 -11
  68. data/spec/scalingo/regional_spec.rb +0 -14
  69. data/spec/scalingo/token_holder_spec.rb +0 -81
@@ -1,67 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Scalingo::Regional::Containers do
4
- describe_method "sizes" do
5
- context "guest" do
6
- subject { guest_endpoint }
7
-
8
- let(:expected_count) { 7 }
9
- let(:stub_pattern) { "sizes-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) { "sizes-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(:expected_count) { 2 }
28
- let(:expected_keys) { %i[name] }
29
- let(:stub_pattern) { "for-200" }
30
-
31
- it_behaves_like "a collection response"
32
- it_behaves_like "a non-paginated collection"
33
- end
34
- end
35
-
36
- describe_method "restart" do
37
- context "success" do
38
- let(:arguments) { [meta[:app_id], meta[:restart][:valid]] }
39
- let(:stub_pattern) { "restart-202" }
40
-
41
- it_behaves_like "a singular object response", 202
42
- end
43
-
44
- context "success" do
45
- let(:arguments) { [meta[:app_id], meta[:restart][:invalid]] }
46
- let(:stub_pattern) { "restart-422" }
47
-
48
- it_behaves_like "an unprocessable request"
49
- end
50
- end
51
-
52
- describe_method "scale" do
53
- context "success" do
54
- let(:arguments) { [meta[:app_id], meta[:scale][:valid]] }
55
- let(:stub_pattern) { "scale-202" }
56
-
57
- it_behaves_like "a singular object response", 202
58
- end
59
-
60
- context "success" do
61
- let(:arguments) { [meta[:app_id], meta[:scale][:invalid]] }
62
- let(:stub_pattern) { "scale-422" }
63
-
64
- it_behaves_like "an unprocessable request"
65
- end
66
- end
67
- end
@@ -1,45 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Scalingo::Regional::Deployments do
4
- describe_method "for" do
5
- context "success" do
6
- let(:arguments) { [meta[:app_id], {}] }
7
- let(:stub_pattern) { "for-without-pages" }
8
-
9
- it_behaves_like "a collection response"
10
- it_behaves_like "a paginated collection"
11
- end
12
- end
13
-
14
- describe_method "find" do
15
- context "success" do
16
- let(:arguments) { [meta[:app_id], meta[:id]] }
17
- let(:stub_pattern) { "find-200" }
18
-
19
- it_behaves_like "a singular object response"
20
- end
21
-
22
- context "failure" do
23
- let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
24
- let(:stub_pattern) { "find-404" }
25
-
26
- it_behaves_like "a not found response"
27
- end
28
- end
29
-
30
- describe_method "logs" do
31
- context "success" do
32
- let(:arguments) { [meta[:app_id], meta[:id]] }
33
- let(:stub_pattern) { "logs-200" }
34
-
35
- it_behaves_like "a singular object response"
36
- end
37
-
38
- context "failure" do
39
- let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
40
- let(:stub_pattern) { "logs-404" }
41
-
42
- it_behaves_like "a not found response"
43
- end
44
- end
45
- end
@@ -1,84 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Scalingo::Regional::Domains 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 "find" do
15
- context "success" do
16
- let(:arguments) { [meta[:app_id], meta[:id]] }
17
- let(:stub_pattern) { "find-200" }
18
-
19
- it_behaves_like "a singular object response"
20
- end
21
-
22
- context "not found" do
23
- let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
24
- let(:stub_pattern) { "find-404" }
25
-
26
- it_behaves_like "a not found response"
27
- end
28
- end
29
-
30
- describe_method "create" do
31
- context "success" do
32
- let(:arguments) { [meta[:app_id], meta[:create][:valid]] }
33
- let(:stub_pattern) { "create-201" }
34
-
35
- it_behaves_like "a singular object response", 201
36
- end
37
-
38
- context "failure" do
39
- let(:arguments) { [meta[:app_id], meta[:create][:invalid]] }
40
- let(:stub_pattern) { "create-422" }
41
-
42
- it_behaves_like "an unprocessable request"
43
- end
44
- end
45
-
46
- describe_method "update" do
47
- context "success" do
48
- let(:arguments) { [meta[:app_id], meta[:id], meta[:update][:valid]] }
49
- let(:stub_pattern) { "update-200" }
50
-
51
- it_behaves_like "a singular object response"
52
- end
53
-
54
- context "not found" do
55
- let(:arguments) { [meta[:app_id], meta[:not_found_id], meta[:update][:valid]] }
56
- let(:stub_pattern) { "update-404" }
57
-
58
- it_behaves_like "a not found response"
59
- end
60
-
61
- context "failure" do
62
- let(:arguments) { [meta[:app_id], meta[:id], meta[:update][:invalid]] }
63
- let(:stub_pattern) { "update-422" }
64
-
65
- it_behaves_like "an unprocessable request"
66
- end
67
- end
68
-
69
- describe_method "destroy" do
70
- context "success" do
71
- let(:arguments) { [meta[:app_id], meta[:id]] }
72
- let(:stub_pattern) { "destroy-204" }
73
-
74
- it_behaves_like "an empty response"
75
- end
76
-
77
- context "not found" do
78
- let(:arguments) { [meta[:app_id], meta[:not_found_id]] }
79
- let(:stub_pattern) { "destroy-404" }
80
-
81
- it_behaves_like "a not found response"
82
- end
83
- end
84
- end
@@ -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,23 +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
- end