auth0 5.6.1 → 5.8.1
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/.circleci/config.yml +16 -2
- data/.github/dependabot.yml +10 -0
- data/.github/workflows/semgrep.yml +28 -0
- data/.gitignore +0 -1
- data/CHANGELOG.md +43 -1
- data/Gemfile +1 -0
- data/Gemfile.lock +241 -0
- data/README.md +1 -1
- data/auth0.gemspec +1 -1
- data/lib/auth0/api/authentication_endpoints.rb +1 -1
- data/lib/auth0/api/v2/attack_protection.rb +79 -0
- data/lib/auth0/api/v2/device_credentials.rb +8 -3
- data/lib/auth0/api/v2/organizations.rb +2 -2
- data/lib/auth0/api/v2.rb +2 -0
- data/lib/auth0/mixins/validation.rb +4 -4
- data/lib/auth0/version.rb +1 -1
- data/spec/lib/auth0/api/v2/actions_spec.rb +13 -13
- data/spec/lib/auth0/api/v2/attack_protection_spec.rb +132 -0
- data/spec/lib/auth0/api/v2/blacklists_spec.rb +2 -2
- data/spec/lib/auth0/api/v2/branding_spec.rb +4 -3
- data/spec/lib/auth0/api/v2/client_grants_spec.rb +8 -8
- data/spec/lib/auth0/api/v2/clients_spec.rb +12 -12
- data/spec/lib/auth0/api/v2/connections_spec.rb +10 -10
- data/spec/lib/auth0/api/v2/device_credentials_spec.rb +39 -10
- data/spec/lib/auth0/api/v2/emails_spec.rb +2 -2
- data/spec/lib/auth0/api/v2/grants_spec.rb +10 -10
- data/spec/lib/auth0/api/v2/jobs_spec.rb +18 -17
- data/spec/lib/auth0/api/v2/log_streams_spec.rb +3 -3
- data/spec/lib/auth0/api/v2/logs_spec.rb +2 -2
- data/spec/lib/auth0/api/v2/organizations_spec.rb +14 -14
- data/spec/lib/auth0/api/v2/resource_servers_spec.rb +5 -5
- data/spec/lib/auth0/api/v2/roles_spec.rb +22 -22
- data/spec/lib/auth0/api/v2/rules_spec.rb +7 -7
- data/spec/lib/auth0/api/v2/stats_spec.rb +1 -1
- data/spec/lib/auth0/api/v2/tenants_spec.rb +1 -1
- data/spec/lib/auth0/api/v2/tickets_spec.rb +14 -14
- data/spec/lib/auth0/api/v2/user_blocks_spec.rb +2 -2
- data/spec/lib/auth0/api/v2/users_by_email_spec.rb +2 -2
- data/spec/lib/auth0/api/v2/users_spec.rb +23 -23
- data/spec/lib/auth0/mixins/validation_spec.rb +16 -2
- metadata +11 -5
@@ -17,14 +17,14 @@ describe Auth0::Api::V2::Actions do
|
|
17
17
|
|
18
18
|
it 'is expected to get /api/v2/actions with custom parameters' do
|
19
19
|
expect(@instance).to receive(:get).with(
|
20
|
-
'/api/v2/actions/actions',
|
20
|
+
'/api/v2/actions/actions', {
|
21
21
|
trigger_id: 'post-login',
|
22
22
|
action_name: 'loginHandler',
|
23
23
|
deployed: true,
|
24
24
|
per_page: 10,
|
25
25
|
page: 1,
|
26
26
|
installed: true
|
27
|
-
)
|
27
|
+
})
|
28
28
|
expect do
|
29
29
|
@instance.actions(
|
30
30
|
'post-login',
|
@@ -71,9 +71,9 @@ describe Auth0::Api::V2::Actions do
|
|
71
71
|
|
72
72
|
it 'is expected to post to /api/v2/actions' do
|
73
73
|
expect(@instance).to receive(:post).with(
|
74
|
-
'/api/v2/actions',
|
74
|
+
'/api/v2/actions', {
|
75
75
|
name: 'test_org'
|
76
|
-
)
|
76
|
+
})
|
77
77
|
expect do
|
78
78
|
@instance.create_action(
|
79
79
|
name: 'test_org'
|
@@ -141,10 +141,10 @@ describe Auth0::Api::V2::Actions do
|
|
141
141
|
|
142
142
|
it 'is expected to call get request to /api/v2/actions/actions/{id}/versions' do
|
143
143
|
expect(@instance).to receive(:get).with(
|
144
|
-
'/api/v2/actions/actions/123/versions',
|
144
|
+
'/api/v2/actions/actions/123/versions', {
|
145
145
|
per_page: nil,
|
146
146
|
page: nil
|
147
|
-
)
|
147
|
+
})
|
148
148
|
expect { @instance.actions_versions('123') }.not_to raise_error
|
149
149
|
end
|
150
150
|
|
@@ -154,10 +154,10 @@ describe Auth0::Api::V2::Actions do
|
|
154
154
|
|
155
155
|
it 'is expected to get /api/v2/actions/actions/{id}/versions with custom parameters' do
|
156
156
|
expect(@instance).to receive(:get).with(
|
157
|
-
'/api/v2/actions/actions/123/versions',
|
157
|
+
'/api/v2/actions/actions/123/versions', {
|
158
158
|
per_page: 10,
|
159
159
|
page: 1
|
160
|
-
)
|
160
|
+
})
|
161
161
|
expect do
|
162
162
|
@instance.actions_versions(
|
163
163
|
'123',
|
@@ -176,10 +176,10 @@ describe Auth0::Api::V2::Actions do
|
|
176
176
|
|
177
177
|
it 'is expected to call get request to /api/v2/actions/triggers/{id}/bindings' do
|
178
178
|
expect(@instance).to receive(:get).with(
|
179
|
-
'/api/v2/actions/triggers/123/bindings',
|
179
|
+
'/api/v2/actions/triggers/123/bindings', {
|
180
180
|
per_page: nil,
|
181
181
|
page: nil
|
182
|
-
)
|
182
|
+
})
|
183
183
|
expect { @instance.trigger_bindings('123') }.not_to raise_error
|
184
184
|
end
|
185
185
|
|
@@ -189,10 +189,10 @@ describe Auth0::Api::V2::Actions do
|
|
189
189
|
|
190
190
|
it 'is expected to get /api/v2/actions/triggers/{id}/bindings with custom parameters' do
|
191
191
|
expect(@instance).to receive(:get).with(
|
192
|
-
'/api/v2/actions/triggers/123/bindings',
|
192
|
+
'/api/v2/actions/triggers/123/bindings', {
|
193
193
|
per_page: 10,
|
194
194
|
page: 1
|
195
|
-
)
|
195
|
+
})
|
196
196
|
expect do
|
197
197
|
@instance.trigger_bindings(
|
198
198
|
'123',
|
@@ -278,7 +278,7 @@ describe Auth0::Api::V2::Actions do
|
|
278
278
|
it 'is expected to post to /api/v2/actions/{id}/test' do
|
279
279
|
expect(@instance).to receive(:post).with(
|
280
280
|
'/api/v2/actions/actions/123/test',
|
281
|
-
name: 'test_org'
|
281
|
+
{ name: 'test_org' }
|
282
282
|
)
|
283
283
|
expect do
|
284
284
|
@instance.test_action(
|
@@ -0,0 +1,132 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Auth0::Api::V2::AttackProtection do
|
4
|
+
before :all do
|
5
|
+
dummy_instance = DummyClass.new
|
6
|
+
dummy_instance.extend(Auth0::Api::V2::AttackProtection)
|
7
|
+
@instance = dummy_instance
|
8
|
+
end
|
9
|
+
|
10
|
+
context '.get breached-password-detection' do
|
11
|
+
it 'responds to a breached_password_detection method' do
|
12
|
+
expect(@instance).to respond_to(:breached_password_detection)
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'responds to get_breached_password_detection_settings' do
|
16
|
+
expect(@instance).to respond_to(:get_breached_password_detection_settings)
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'is expected to get /api/v2/attack-protection/breached-password' do
|
20
|
+
expect(@instance).to receive(:get).with(
|
21
|
+
'/api/v2/attack-protection/breached-password-detection'
|
22
|
+
)
|
23
|
+
|
24
|
+
expect { @instance.breached_password_detection }.not_to raise_error
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
context '.patch breached-password-detection' do
|
29
|
+
it 'responds to a patch_breached_password_detection method' do
|
30
|
+
expect(@instance).to respond_to(:patch_breached_password_detection)
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'responds to a update_breached_password_detection_settings method' do
|
34
|
+
expect(@instance).to respond_to(:update_breached_password_detection_settings)
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'is expected to patch /api/v2/attack-protection/breached-password-detection' do
|
38
|
+
expect(@instance).to receive(:patch).with(
|
39
|
+
'/api/v2/attack-protection/breached-password-detection',
|
40
|
+
{
|
41
|
+
enabled: true
|
42
|
+
}
|
43
|
+
)
|
44
|
+
|
45
|
+
@instance.patch_breached_password_detection({
|
46
|
+
enabled: true
|
47
|
+
})
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
context '.get brute_force_protection' do
|
52
|
+
it 'responds to brute_force_protection' do
|
53
|
+
expect(@instance).to respond_to(:brute_force_protection)
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'responds to get_brute_force_protection_settings' do
|
57
|
+
expect(@instance).to respond_to(:get_brute_force_protection_settings)
|
58
|
+
end
|
59
|
+
|
60
|
+
it 'is expected to get /api/v2/attack-protection/brute-force-protection' do
|
61
|
+
expect(@instance).to receive(:get).with(
|
62
|
+
'/api/v2/attack-protection/brute-force-protection'
|
63
|
+
)
|
64
|
+
|
65
|
+
expect { @instance.brute_force_protection }.not_to raise_error
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
context '.patch brute-force-protection' do
|
70
|
+
it 'responds to patch_brute-force-protection' do
|
71
|
+
expect(@instance).to respond_to(:patch_brute_force_protection)
|
72
|
+
end
|
73
|
+
|
74
|
+
it 'responds to update_brute_force_protection_settings' do
|
75
|
+
expect(@instance).to respond_to(:update_brute_force_protection_settings)
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'is expected to respond to patch /api/v2/attack-protection/brute-force-protection' do
|
79
|
+
expect(@instance).to receive(:patch).with(
|
80
|
+
'/api/v2/attack-protection/brute-force-protection',
|
81
|
+
{
|
82
|
+
enabled: true
|
83
|
+
}
|
84
|
+
)
|
85
|
+
|
86
|
+
@instance.patch_brute_force_protection({
|
87
|
+
enabled: true
|
88
|
+
})
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
context '.get suspicious-ip-throttling' do
|
93
|
+
it 'responds to suspicious_ip_throttling' do
|
94
|
+
expect(@instance).to respond_to(:suspicious_ip_throttling)
|
95
|
+
end
|
96
|
+
|
97
|
+
it 'responds to get_suspicious_ip_throttling_settings' do
|
98
|
+
expect(@instance).to respond_to(:get_suspicious_ip_throttling_settings)
|
99
|
+
end
|
100
|
+
|
101
|
+
it 'is expected to get /api/v2/attack-protection/suspicious-ip-throttling' do
|
102
|
+
expect(@instance).to receive(:get).with(
|
103
|
+
'/api/v2/attack-protection/suspicious-ip-throttling'
|
104
|
+
)
|
105
|
+
|
106
|
+
expect { @instance.suspicious_ip_throttling }.not_to raise_error
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
context '.patch suspicious-ip-throttling' do
|
111
|
+
it 'responds to patch_suspicious_ip_throttling' do
|
112
|
+
expect(@instance).to respond_to(:patch_suspicious_ip_throttling)
|
113
|
+
end
|
114
|
+
|
115
|
+
it 'responds to update_suspicious_ip_throttling_settings' do
|
116
|
+
expect(@instance).to respond_to(:update_suspicious_ip_throttling_settings)
|
117
|
+
end
|
118
|
+
|
119
|
+
it 'is expected to patch /api/v2/attack-protection/suspicious-ip-throttling' do
|
120
|
+
expect(@instance).to receive(:patch).with(
|
121
|
+
'/api/v2/attack-protection/suspicious-ip-throttling',
|
122
|
+
{
|
123
|
+
enabled: true
|
124
|
+
}
|
125
|
+
)
|
126
|
+
|
127
|
+
@instance.patch_suspicious_ip_throttling({
|
128
|
+
enabled: true
|
129
|
+
})
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
@@ -9,7 +9,7 @@ describe Auth0::Api::V2::Blacklists do
|
|
9
9
|
context '.blacklisted_tokens' do
|
10
10
|
it { expect(@instance).to respond_to(:blacklisted_tokens) }
|
11
11
|
it 'is expected to call /api/v2/blacklists/tokens' do
|
12
|
-
expect(@instance).to receive(:get).with('/api/v2/blacklists/tokens', aud: nil)
|
12
|
+
expect(@instance).to receive(:get).with('/api/v2/blacklists/tokens', { aud: nil })
|
13
13
|
expect { @instance.blacklisted_tokens }.not_to raise_error
|
14
14
|
end
|
15
15
|
end
|
@@ -17,7 +17,7 @@ describe Auth0::Api::V2::Blacklists do
|
|
17
17
|
context '.add_token.to_blacklist' do
|
18
18
|
it { expect(@instance).to respond_to(:add_token_to_blacklist) }
|
19
19
|
it 'is expected to call post to /api/v2/blacklists/tokens' do
|
20
|
-
expect(@instance).to receive(:post).with('/api/v2/blacklists/tokens', aud: 'aud', jti: 'jti')
|
20
|
+
expect(@instance).to receive(:post).with('/api/v2/blacklists/tokens', { aud: 'aud', jti: 'jti' })
|
21
21
|
@instance.add_token_to_blacklist('jti', 'aud')
|
22
22
|
end
|
23
23
|
it { expect { @instance.add_token_to_blacklist('', '') }.to raise_error 'Must specify a valid JTI' }
|
@@ -24,8 +24,9 @@ describe Auth0::Api::V2::Branding do
|
|
24
24
|
it { expect(@instance).to respond_to(:patch_branding) }
|
25
25
|
it 'is expected to call post /api/v2/branding' do
|
26
26
|
expect(@instance).to receive(:patch).with(
|
27
|
-
'/api/v2/branding',
|
28
|
-
|
27
|
+
'/api/v2/branding', {
|
28
|
+
template: 'Test'
|
29
|
+
}
|
29
30
|
)
|
30
31
|
expect { @instance.patch_branding({ template: 'Test' }) }.not_to raise_error
|
31
32
|
end
|
@@ -52,7 +53,7 @@ describe Auth0::Api::V2::Branding do
|
|
52
53
|
it { expect(@instance).to respond_to(:put_branding_templates_for_universal_login) }
|
53
54
|
it 'is expected to call put /api/v2/branding/templates/universal-login' do
|
54
55
|
expect(@instance).to receive(:put).with(
|
55
|
-
'/api/v2/branding/templates/universal-login', template: 'Template'
|
56
|
+
'/api/v2/branding/templates/universal-login', { template: 'Template' }
|
56
57
|
)
|
57
58
|
expect do
|
58
59
|
@instance.put_branding_templates_for_universal_login(template: 'Template')
|
@@ -12,12 +12,12 @@ describe Auth0::Api::V2::ClientGrants do
|
|
12
12
|
|
13
13
|
it 'is expected to get /api/v2/client-grants/' do
|
14
14
|
expect(@instance).to receive(:get).with(
|
15
|
-
'/api/v2/client-grants',
|
15
|
+
'/api/v2/client-grants', {
|
16
16
|
client_id: nil,
|
17
17
|
audience: nil,
|
18
18
|
page: nil,
|
19
19
|
per_page: nil
|
20
|
-
)
|
20
|
+
})
|
21
21
|
expect { @instance.client_grants }.not_to raise_error
|
22
22
|
end
|
23
23
|
|
@@ -25,23 +25,23 @@ describe Auth0::Api::V2::ClientGrants do
|
|
25
25
|
audience = "https://samples.auth0.com/api/v2/"
|
26
26
|
|
27
27
|
expect(@instance).to receive(:get).with(
|
28
|
-
'/api/v2/client-grants',
|
28
|
+
'/api/v2/client-grants', {
|
29
29
|
client_id: '1',
|
30
30
|
audience: audience,
|
31
31
|
page: nil,
|
32
32
|
per_page: nil
|
33
|
-
)
|
34
|
-
expect { @instance.client_grants(client_id: '1', audience: audience) }.not_to raise_error
|
33
|
+
})
|
34
|
+
expect { @instance.client_grants(client_id: '1', audience: audience ) }.not_to raise_error
|
35
35
|
end
|
36
36
|
|
37
37
|
it 'is expected to send get /api/v2/client-grants/ with pagination' do
|
38
38
|
expect(@instance).to receive(:get).with(
|
39
|
-
'/api/v2/client-grants',
|
39
|
+
'/api/v2/client-grants', {
|
40
40
|
client_id: nil,
|
41
41
|
audience: nil,
|
42
42
|
page: 1,
|
43
43
|
per_page: 2
|
44
|
-
)
|
44
|
+
})
|
45
45
|
expect { @instance.client_grants(page: 1, per_page: 2) }.not_to raise_error
|
46
46
|
end
|
47
47
|
end
|
@@ -49,7 +49,7 @@ describe Auth0::Api::V2::ClientGrants do
|
|
49
49
|
context '.create_client_grant' do
|
50
50
|
it { expect(@instance).to respond_to(:create_client_grant) }
|
51
51
|
it 'is expected to send post to /api/v2/client-grants' do
|
52
|
-
expect(@instance).to receive(:post).with('/api/v2/client-grants', opt: 'test body')
|
52
|
+
expect(@instance).to receive(:post).with('/api/v2/client-grants', { opt: 'test body' })
|
53
53
|
expect { @instance.create_client_grant(opt: 'test body') }.not_to raise_error
|
54
54
|
end
|
55
55
|
end
|
@@ -12,23 +12,23 @@ describe Auth0::Api::V2::Clients do
|
|
12
12
|
|
13
13
|
it 'is expected to send get request to the Clients endpoint' do
|
14
14
|
expect(@instance).to receive(:get).with(
|
15
|
-
'/api/v2/clients',
|
15
|
+
'/api/v2/clients', {
|
16
16
|
fields: nil,
|
17
17
|
include_fields: nil,
|
18
18
|
page: nil,
|
19
19
|
per_page: nil
|
20
|
-
)
|
20
|
+
})
|
21
21
|
expect { @instance.clients }.not_to raise_error
|
22
22
|
end
|
23
23
|
|
24
24
|
it 'is expected to send get request to the Clients endpoint with a name parameter' do
|
25
25
|
expect(@instance).to receive(:get).with(
|
26
|
-
'/api/v2/clients',
|
26
|
+
'/api/v2/clients', {
|
27
27
|
include_fields: true,
|
28
28
|
fields: 'name',
|
29
29
|
page: nil,
|
30
30
|
per_page: nil
|
31
|
-
)
|
31
|
+
})
|
32
32
|
expect {
|
33
33
|
@instance.clients(fields: 'name', include_fields: true)
|
34
34
|
}.not_to raise_error
|
@@ -36,12 +36,12 @@ describe Auth0::Api::V2::Clients do
|
|
36
36
|
|
37
37
|
it 'is expected to send get request to Clients endpoint using an array of fields' do
|
38
38
|
expect(@instance).to receive(:get).with(
|
39
|
-
'/api/v2/clients',
|
39
|
+
'/api/v2/clients', {
|
40
40
|
include_fields: true,
|
41
41
|
fields: 'name,app_type',
|
42
42
|
page: nil,
|
43
43
|
per_page: nil
|
44
|
-
)
|
44
|
+
})
|
45
45
|
expect {
|
46
46
|
@instance.clients(fields: ['name','app_type'], include_fields: true)
|
47
47
|
}.not_to raise_error
|
@@ -49,12 +49,12 @@ describe Auth0::Api::V2::Clients do
|
|
49
49
|
|
50
50
|
it 'is expected to send get request to Clients endpoint with pagination' do
|
51
51
|
expect(@instance).to receive(:get).with(
|
52
|
-
'/api/v2/clients',
|
52
|
+
'/api/v2/clients', {
|
53
53
|
page: 1,
|
54
54
|
per_page: 10,
|
55
55
|
fields: nil,
|
56
56
|
include_fields: nil
|
57
|
-
)
|
57
|
+
})
|
58
58
|
expect {
|
59
59
|
@instance.clients(page: 1, per_page: 10)
|
60
60
|
}.not_to raise_error
|
@@ -64,11 +64,11 @@ describe Auth0::Api::V2::Clients do
|
|
64
64
|
context '.client' do
|
65
65
|
it { expect(@instance).to respond_to(:client) }
|
66
66
|
it 'is expected to send get request to /api/v2/clients/1' do
|
67
|
-
expect(@instance).to receive(:get).with('/api/v2/clients/1', fields: nil, include_fields: nil)
|
67
|
+
expect(@instance).to receive(:get).with('/api/v2/clients/1', { fields: nil, include_fields: nil })
|
68
68
|
expect { @instance.client(1) }.not_to raise_error
|
69
69
|
end
|
70
70
|
it 'is expected to send get request to /api/v2/clients?fields=name&include_fields=true' do
|
71
|
-
expect(@instance).to receive(:get).with('/api/v2/clients/1', include_fields: true, fields: [:name])
|
71
|
+
expect(@instance).to receive(:get).with('/api/v2/clients/1', { include_fields: true, fields: [:name] })
|
72
72
|
expect { @instance.client(1, include_fields: true, fields: [:name]) }.not_to raise_error
|
73
73
|
end
|
74
74
|
it { expect { @instance.client('') }.to raise_error 'Must specify a client id' }
|
@@ -77,7 +77,7 @@ describe Auth0::Api::V2::Clients do
|
|
77
77
|
context '.create_client' do
|
78
78
|
it { expect(@instance).to respond_to(:create_client) }
|
79
79
|
it 'is expected to send post to /api/v2/clients' do
|
80
|
-
expect(@instance).to receive(:post).with('/api/v2/clients', name: 'name', opt: 'opt')
|
80
|
+
expect(@instance).to receive(:post).with('/api/v2/clients', { name: 'name', opt: 'opt' })
|
81
81
|
expect { @instance.create_client('name', name: '/name1', opt: 'opt') }.not_to raise_error
|
82
82
|
end
|
83
83
|
it { expect { @instance.create_client('') }.to raise_error 'Must specify a valid client name' }
|
@@ -95,7 +95,7 @@ describe Auth0::Api::V2::Clients do
|
|
95
95
|
context '.patch_client' do
|
96
96
|
it { expect(@instance).to respond_to(:patch_client) }
|
97
97
|
it 'is expected to send patch to /api/v2/clients/1' do
|
98
|
-
expect(@instance).to receive(:patch).with('/api/v2/clients/1', fields: 'fields')
|
98
|
+
expect(@instance).to receive(:patch).with('/api/v2/clients/1', { fields: 'fields' })
|
99
99
|
expect { @instance.patch_client('1', fields: 'fields') }.not_to raise_error
|
100
100
|
end
|
101
101
|
it { expect { @instance.patch_client('', nil) }.to raise_error 'Must specify a client id' }
|
@@ -12,27 +12,27 @@ describe Auth0::Api::V2::Connections do
|
|
12
12
|
|
13
13
|
it 'is expected to call /api/v2/connections' do
|
14
14
|
expect(@instance).to receive(:get).with(
|
15
|
-
'/api/v2/connections',
|
15
|
+
'/api/v2/connections', {
|
16
16
|
strategy: nil,
|
17
17
|
name: nil,
|
18
18
|
fields: nil,
|
19
19
|
include_fields: nil,
|
20
20
|
page: nil,
|
21
21
|
per_page: nil
|
22
|
-
)
|
22
|
+
})
|
23
23
|
expect { @instance.connections }.not_to raise_error
|
24
24
|
end
|
25
25
|
|
26
26
|
it 'is expected to send get request to /api/v2/connections?fields=name' do
|
27
27
|
expect(@instance).to receive(:get).with(
|
28
|
-
'/api/v2/connections',
|
28
|
+
'/api/v2/connections', {
|
29
29
|
include_fields: true,
|
30
30
|
fields: 'name',
|
31
31
|
strategy: nil,
|
32
32
|
name: nil,
|
33
33
|
page: nil,
|
34
34
|
per_page: nil
|
35
|
-
)
|
35
|
+
})
|
36
36
|
expect {
|
37
37
|
@instance.connections(fields: 'name', include_fields: true)
|
38
38
|
}.not_to raise_error
|
@@ -40,14 +40,14 @@ describe Auth0::Api::V2::Connections do
|
|
40
40
|
|
41
41
|
it 'is expected to convert fields param from Array to string' do
|
42
42
|
expect(@instance).to receive(:get).with(
|
43
|
-
'/api/v2/connections',
|
43
|
+
'/api/v2/connections', {
|
44
44
|
include_fields: true,
|
45
45
|
fields: 'name,strategy',
|
46
46
|
strategy: nil,
|
47
47
|
name: nil,
|
48
48
|
page: nil,
|
49
49
|
per_page: nil
|
50
|
-
)
|
50
|
+
})
|
51
51
|
expect {
|
52
52
|
@instance.connections(fields: ['name','strategy'], include_fields: true)
|
53
53
|
}.not_to raise_error
|
@@ -55,14 +55,14 @@ describe Auth0::Api::V2::Connections do
|
|
55
55
|
|
56
56
|
it 'is expected to add pagination' do
|
57
57
|
expect(@instance).to receive(:get).with(
|
58
|
-
'/api/v2/connections',
|
58
|
+
'/api/v2/connections', {
|
59
59
|
page: 1,
|
60
60
|
per_page: 10,
|
61
61
|
strategy: nil,
|
62
62
|
name: nil,
|
63
63
|
fields: nil,
|
64
64
|
include_fields: nil
|
65
|
-
)
|
65
|
+
})
|
66
66
|
expect {
|
67
67
|
@instance.connections(page: 1, per_page: 10)
|
68
68
|
}.not_to raise_error
|
@@ -88,7 +88,7 @@ describe Auth0::Api::V2::Connections do
|
|
88
88
|
context '.connection' do
|
89
89
|
it { expect(@instance).to respond_to(:connection) }
|
90
90
|
it 'is expected to call get request to /api/v2/connection/connectionId' do
|
91
|
-
expect(@instance).to receive(:get).with('/api/v2/connections/connectionId', fields: nil, include_fields: true)
|
91
|
+
expect(@instance).to receive(:get).with('/api/v2/connections/connectionId', { fields: nil, include_fields: true })
|
92
92
|
expect { @instance.connection('connectionId') }.not_to raise_error
|
93
93
|
end
|
94
94
|
it 'is expected raise an error when calling with empty id' do
|
@@ -113,7 +113,7 @@ describe Auth0::Api::V2::Connections do
|
|
113
113
|
context '.delete_connection_user' do
|
114
114
|
it { expect(@instance).to respond_to(:delete_connection_user) }
|
115
115
|
it 'is expected to call delete to /api/v2/connections/connectionId/users' do
|
116
|
-
expect(@instance).to receive(:delete).with('/api/v2/connections/connectionId/users', email: 'email@test.com')
|
116
|
+
expect(@instance).to receive(:delete).with('/api/v2/connections/connectionId/users', { email: 'email@test.com' })
|
117
117
|
@instance.delete_connection_user('connectionId', 'email@test.com')
|
118
118
|
end
|
119
119
|
|
@@ -1,29 +1,58 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
describe Auth0::Api::V2::DeviceCredentials do
|
3
|
-
attr_reader :client_id
|
4
|
-
|
5
3
|
before :all do
|
6
4
|
dummy_instance = DummyClass.new
|
7
5
|
dummy_instance.extend(Auth0::Api::V2::DeviceCredentials)
|
8
6
|
@instance = dummy_instance
|
9
|
-
@client_id = Faker::Lorem.word
|
10
7
|
end
|
11
8
|
context '.device_credentials' do
|
12
9
|
it { expect(@instance).to respond_to(:device_credentials) }
|
13
10
|
it { expect(@instance).to respond_to(:list_device_credentials) }
|
14
|
-
it 'is expected to send get request to /api/v2/device-credentials' do
|
11
|
+
it 'is expected to send get request with no parameters to /api/v2/device-credentials' do
|
12
|
+
expect(@instance).to receive(:get).with(
|
13
|
+
'/api/v2/device-credentials', {
|
14
|
+
fields: nil,
|
15
|
+
include_fields: nil,
|
16
|
+
user_id: nil,
|
17
|
+
client_id: nil,
|
18
|
+
type: nil,
|
19
|
+
page: nil,
|
20
|
+
per_page: nil,
|
21
|
+
include_totals: nil
|
22
|
+
})
|
23
|
+
expect { @instance.device_credentials }.not_to raise_error
|
24
|
+
end
|
25
|
+
it 'is expected to send get request with client_id to /api/v2/device-credentials' do
|
26
|
+
client_id = Faker::Lorem.word
|
15
27
|
expect(@instance).to receive(:get).with(
|
16
|
-
'/api/v2/device-credentials',
|
28
|
+
'/api/v2/device-credentials', {
|
17
29
|
fields: nil,
|
18
30
|
include_fields: nil,
|
19
31
|
user_id: nil,
|
20
32
|
client_id: client_id,
|
21
|
-
type: nil
|
22
|
-
|
33
|
+
type: nil,
|
34
|
+
page: nil,
|
35
|
+
per_page: nil,
|
36
|
+
include_totals: nil
|
37
|
+
})
|
23
38
|
expect { @instance.device_credentials(client_id) }.not_to raise_error
|
24
39
|
end
|
40
|
+
it 'is expected to send get request with options to /api/v2/device-credentials' do
|
41
|
+
expect(@instance).to receive(:get).with(
|
42
|
+
'/api/v2/device-credentials', {
|
43
|
+
fields: 'name',
|
44
|
+
include_fields: true,
|
45
|
+
user_id: '1',
|
46
|
+
client_id: 'client_id',
|
47
|
+
type: 'rotating_refresh_token',
|
48
|
+
page: 1,
|
49
|
+
per_page: 10,
|
50
|
+
include_totals: true
|
51
|
+
})
|
52
|
+
expect { @instance.device_credentials('client_id', fields: 'name', include_fields: true, user_id: '1', type: 'rotating_refresh_token', page: 1, per_page: 10, include_totals: true) }.not_to raise_error
|
53
|
+
end
|
25
54
|
it 'is expect to raise an error when type is not one of \'public_key\', \'refresh_token\', \'rotating_refresh_token\'' do
|
26
|
-
expect { @instance.device_credentials(client_id, type: 'invalid_type') }.to raise_error(
|
55
|
+
expect { @instance.device_credentials('client_id', type: 'invalid_type') }.to raise_error(
|
27
56
|
'Type must be one of \'public_key\', \'refresh_token\', \'rotating_refresh_token\''
|
28
57
|
)
|
29
58
|
end
|
@@ -34,13 +63,13 @@ describe Auth0::Api::V2::DeviceCredentials do
|
|
34
63
|
it { expect(@instance).to respond_to(:create_device_public_key) }
|
35
64
|
it 'is expected to send post to /api/v2/device-credentials' do
|
36
65
|
expect(@instance).to receive(:post).with(
|
37
|
-
'/api/v2/device-credentials',
|
66
|
+
'/api/v2/device-credentials', {
|
38
67
|
device_name: 'device_name',
|
39
68
|
value: 'value',
|
40
69
|
device_id: 'device_id',
|
41
70
|
client_id: 'client_id',
|
42
71
|
type: 'public_key'
|
43
|
-
)
|
72
|
+
})
|
44
73
|
expect { @instance.create_device_credential('device_name', 'value', 'device_id', 'client_id') }
|
45
74
|
.not_to raise_error
|
46
75
|
end
|
@@ -9,11 +9,11 @@ describe Auth0::Api::V2::Emails do
|
|
9
9
|
context '.get_email' do
|
10
10
|
it { expect(@instance).to respond_to(:get_provider) }
|
11
11
|
it 'expect client to send get to /api/v2/emails/provider with fields' do
|
12
|
-
expect(@instance).to receive(:get).with('/api/v2/emails/provider', fields: 'some', include_fields: true)
|
12
|
+
expect(@instance).to receive(:get).with('/api/v2/emails/provider', { fields: 'some', include_fields: true })
|
13
13
|
expect { @instance.get_provider(fields: 'some', include_fields: true) }.not_to raise_error
|
14
14
|
end
|
15
15
|
it 'expect client to send get to /api/v2/emails/provider with empty fields' do
|
16
|
-
expect(@instance).to receive(:get).with('/api/v2/emails/provider', fields: nil, include_fields: nil)
|
16
|
+
expect(@instance).to receive(:get).with('/api/v2/emails/provider', { fields: nil, include_fields: nil })
|
17
17
|
expect { @instance.get_provider }.not_to raise_error
|
18
18
|
end
|
19
19
|
end
|
@@ -12,14 +12,14 @@ describe Auth0::Api::V2::Grants do
|
|
12
12
|
|
13
13
|
it 'is expected to get /api/v2/grants/' do
|
14
14
|
expect(@instance).to receive(:get).with(
|
15
|
-
'/api/v2/grants',
|
15
|
+
'/api/v2/grants', {
|
16
16
|
client_id: nil,
|
17
17
|
user_id: nil,
|
18
18
|
audience: nil,
|
19
19
|
page: nil,
|
20
20
|
per_page: nil,
|
21
21
|
include_totals: nil
|
22
|
-
)
|
22
|
+
})
|
23
23
|
expect { @instance.grants }.not_to raise_error
|
24
24
|
end
|
25
25
|
|
@@ -27,53 +27,53 @@ describe Auth0::Api::V2::Grants do
|
|
27
27
|
audience = "https://samples.auth0.com/api/v2/"
|
28
28
|
|
29
29
|
expect(@instance).to receive(:get).with(
|
30
|
-
'/api/v2/grants',
|
30
|
+
'/api/v2/grants', {
|
31
31
|
client_id: '1',
|
32
32
|
user_id: nil,
|
33
33
|
audience: audience,
|
34
34
|
page: nil,
|
35
35
|
per_page: nil,
|
36
36
|
include_totals: nil
|
37
|
-
)
|
37
|
+
})
|
38
38
|
expect { @instance.grants(client_id: '1', audience: audience) }.not_to raise_error
|
39
39
|
end
|
40
40
|
|
41
41
|
it 'is expected to send get /api/v2/grants/ with client_id and user_id' do
|
42
42
|
expect(@instance).to receive(:get).with(
|
43
|
-
'/api/v2/grants',
|
43
|
+
'/api/v2/grants', {
|
44
44
|
client_id: '1',
|
45
45
|
user_id: '1',
|
46
46
|
audience: nil,
|
47
47
|
page: nil,
|
48
48
|
per_page: nil,
|
49
49
|
include_totals: nil
|
50
|
-
)
|
50
|
+
})
|
51
51
|
expect { @instance.grants(client_id: '1', user_id: '1') }.not_to raise_error
|
52
52
|
end
|
53
53
|
|
54
54
|
it 'is expected to send get /api/v2/grants/ with pagination' do
|
55
55
|
expect(@instance).to receive(:get).with(
|
56
|
-
'/api/v2/grants',
|
56
|
+
'/api/v2/grants', {
|
57
57
|
client_id: nil,
|
58
58
|
user_id: nil,
|
59
59
|
audience: nil,
|
60
60
|
page: 1,
|
61
61
|
per_page: 2,
|
62
62
|
include_totals: nil
|
63
|
-
)
|
63
|
+
})
|
64
64
|
expect { @instance.grants(page: 1, per_page: 2) }.not_to raise_error
|
65
65
|
end
|
66
66
|
|
67
67
|
it 'is expected to send get /api/v2/grants/ with include_totals' do
|
68
68
|
expect(@instance).to receive(:get).with(
|
69
|
-
'/api/v2/grants',
|
69
|
+
'/api/v2/grants', {
|
70
70
|
client_id: nil,
|
71
71
|
user_id: nil,
|
72
72
|
audience: nil,
|
73
73
|
page: 1,
|
74
74
|
per_page: 2,
|
75
75
|
include_totals: true
|
76
|
-
)
|
76
|
+
})
|
77
77
|
expect { @instance.grants(page: 1, per_page: 2, include_totals: true) }.not_to raise_error
|
78
78
|
end
|
79
79
|
end
|