auth0 4.7.0 → 4.8.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 (172) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +50 -0
  3. data/.github/CODEOWNERS +1 -0
  4. data/.gitignore +0 -1
  5. data/CHANGELOG.md +27 -0
  6. data/DEPLOYMENT.md +11 -3
  7. data/Gemfile +2 -1
  8. data/Gemfile.lock +172 -0
  9. data/README.md +2 -2
  10. data/auth0.gemspec +1 -3
  11. data/codecov.yml +22 -0
  12. data/deploy_documentation.sh +1 -1
  13. data/lib/auth0/api/v2.rb +4 -0
  14. data/lib/auth0/api/v2/anomaly.rb +36 -0
  15. data/lib/auth0/api/v2/jobs.rb +22 -3
  16. data/lib/auth0/api/v2/roles.rb +172 -0
  17. data/lib/auth0/api/v2/users.rb +117 -4
  18. data/lib/auth0/exception.rb +33 -7
  19. data/lib/auth0/mixins/httpproxy.rb +10 -7
  20. data/lib/auth0/mixins/permission_struct.rb +3 -0
  21. data/lib/auth0/mixins/validation.rb +25 -0
  22. data/lib/auth0/version.rb +1 -1
  23. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml +65 -0
  24. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml +60 -0
  25. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml +1 -1
  26. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml +1 -1
  27. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml +1 -1
  28. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml +1 -1
  29. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml +1 -1
  30. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client.yml +1 -1
  31. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client_grant.yml +1 -1
  32. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client.yml +1 -1
  33. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client_grant.yml +1 -1
  34. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_exclude_and_include_fields_properly.yml +1 -1
  35. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_include_the_specified_fields.yml +1 -1
  36. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/should_get_the_test_client.yml +1 -1
  37. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_fields_not_specified.yml +1 -1
  38. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_the_specified_fields.yml +1 -1
  39. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_include_the_specified_fields.yml +1 -1
  40. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_paginate_results.yml +1 -1
  41. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/should_get_at_least_one_client.yml +1 -1
  42. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_delete_client/should_delete_the_test_client_without_an_error.yml +1 -1
  43. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_patch_client/should_update_the_client_with_the_correct_attributes.yml +1 -1
  44. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/create_test_client.yml +1 -1
  45. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_exclude_the_fields_indicated.yml +1 -1
  46. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_include_the_fields_indicated.yml +1 -1
  47. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/should_find_the_correct_connection.yml +1 -1
  48. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_include_previously-created_connection_when_filtered.yml +1 -1
  49. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_exclude_the_fields_indicated_from_filtered_results.yml +1 -1
  50. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_include_the_fields_indicated_from_filtered_results.yml +1 -1
  51. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_include_the_previously_created_connection.yml +1 -1
  52. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_not_be_empty.yml +1 -1
  53. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection/should_delete_the_connection.yml +1 -1
  54. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection_user/should_delete_the_user_created.yml +2 -2
  55. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml +1 -1
  56. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml +1 -1
  57. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml +1 -1
  58. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml +1 -1
  59. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml +1 -1
  60. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml +1 -1
  61. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml +1 -1
  62. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml +1 -1
  63. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_throw_an_error_trying_to_get_the_email_provider.yml +1 -1
  64. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_with_specific_fields.yml +1 -1
  65. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_without_specific_fields.yml +1 -1
  66. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/should_get_the_existing_email_provider.yml +1 -1
  67. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_update_provider/should_update_the_existing_email_provider.yml +1 -1
  68. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/delete_existing_provider.yml +1 -1
  69. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_match_the_created_log_entry.yml +2 -2
  70. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_not_be_empty.yml +2 -2
  71. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_fields_not_specified.yml +1 -1
  72. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_the_specified_fields.yml +1 -1
  73. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_have_one_log_entry.yml +1 -1
  74. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_include_the_specified_fields.yml +1 -1
  75. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_from/should_take_one_log_entry.yml +2 -2
  76. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/create_test_user.yml +1 -1
  77. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_disabled_rule.yml +1 -1
  78. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_enabled_rule.yml +1 -1
  79. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_user.yml +1 -1
  80. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml +67 -0
  81. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml +67 -0
  82. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml +60 -0
  83. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml +65 -0
  84. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml +65 -0
  85. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml +65 -0
  86. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml +65 -0
  87. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml +65 -0
  88. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml +65 -0
  89. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml +62 -0
  90. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml +67 -0
  91. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml +67 -0
  92. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml +67 -0
  93. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml +67 -0
  94. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml +60 -0
  95. data/spec/fixtures/vcr_cassettes/{Auth0_Api_V2_Users/_delete_user/should_delete_the_user_successfully.yml → Auth0_Api_V2_Roles/delete_test_user.yml} +14 -8
  96. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml +1 -1
  97. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml +1 -1
  98. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml +1 -1
  99. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_specified_fields.yml +1 -1
  100. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_include_the_specified_fields.yml +1 -1
  101. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/should_get_a_specific_rule.yml +1 -1
  102. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_exclude_fields_not_specified.yml +1 -1
  103. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_include_the_specified_fields.yml +1 -1
  104. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_disabled_rule.yml +1 -1
  105. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_enabled_rule.yml +1 -1
  106. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_paginated_results.yml +2 -2
  107. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/should_return_at_least_1_rule.yml +1 -1
  108. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_update_rule/should_update_the_disabled_rule_to_be_enabled.yml +1 -1
  109. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_disabled_rule.yml +1 -1
  110. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_enabled_rule.yml +1 -1
  111. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_active_users/should_have_at_least_one_active_user.yml +1 -1
  112. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_daily_stats/should_have_at_least_one_stats_entry_for_the_timeframe.yml +1 -1
  113. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings/should_get_the_tenant_settings.yml +1 -1
  114. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_exclude_a_field_not_requested.yml +1 -1
  115. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_include_the_field_requested.yml +1 -1
  116. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_revert_the_tenant_name.yml +1 -1
  117. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_update_the_tenant_settings_with_a_new_tenant_name.yml +1 -1
  118. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_email_verification/should_create_an_email_verification_ticket.yml +1 -1
  119. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml +1 -1
  120. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml +1 -1
  121. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml +1 -1
  122. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml +67 -0
  123. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml +62 -0
  124. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml +60 -0
  125. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml +60 -0
  126. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml +60 -0
  127. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml +65 -0
  128. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml +65 -0
  129. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml +65 -0
  130. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml +65 -0
  131. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml +62 -0
  132. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml +67 -0
  133. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml +68 -0
  134. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml +62 -0
  135. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml +62 -0
  136. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml +65 -0
  137. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml +15 -10
  138. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml +15 -13
  139. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml +15 -13
  140. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml +15 -16
  141. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml +69 -0
  142. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml +14 -8
  143. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml +14 -8
  144. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml +13 -7
  145. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_include_the_indicated_fields_when_paginated.yml +13 -7
  146. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml +13 -7
  147. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml +13 -7
  148. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml +13 -7
  149. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml +67 -0
  150. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml +67 -0
  151. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml +67 -0
  152. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml +15 -16
  153. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml +60 -0
  154. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml +60 -0
  155. data/spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb +17 -0
  156. data/spec/integration/lib/auth0/api/v2/api_roles_spec.rb +145 -0
  157. data/spec/integration/lib/auth0/api/v2/api_users_spec.rb +150 -32
  158. data/spec/integration/lib/auth0/auth0_client_spec.rb +3 -4
  159. data/spec/lib/auth0/api/v2/anomaly_spec.rb +26 -0
  160. data/spec/lib/auth0/api/v2/jobs_spec.rb +33 -1
  161. data/spec/lib/auth0/api/v2/roles_spec.rb +360 -0
  162. data/spec/lib/auth0/api/v2/users_spec.rb +406 -66
  163. data/spec/lib/auth0/mixins/httpproxy_spec.rb +57 -0
  164. data/spec/spec_helper.rb +5 -6
  165. data/spec/support/credentials.rb +4 -13
  166. data/spec/support/dummy_class.rb +1 -1
  167. data/spec/support/stub_response.rb +1 -1
  168. metadata +96 -10
  169. data/.travis.yml +0 -18
  170. data/build_travis.sh +0 -7
  171. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_email_verified_and_return_the_updated_data.yml +0 -68
  172. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_user_metadata_and_return_the_updated_user.yml +0 -69
@@ -89,6 +89,35 @@ describe Auth0::Mixins::HTTPProxy do
89
89
  .and_raise(@exception)
90
90
  expect { @instance.send(http_method, '/test') }.to raise_error(Auth0::AccessDenied)
91
91
  end
92
+
93
+ it "should raise Auth0::RateLimitEncountered on send http #{http_method} method
94
+ to path defined through HTTP when 429 recieved" do
95
+ headers = {
96
+ 'X-RateLimit-Limit' => 10,
97
+ 'X-RateLimit-Remaining' => 0,
98
+ 'X-RateLimit-Reset' => 1560564149
99
+ }
100
+ @exception.response = StubResponse.new({}, false, 429, headers)
101
+ allow(RestClient::Request).to receive(:execute).with(method: http_method,
102
+ url: '/test',
103
+ timeout: nil,
104
+ headers: { params: {} },
105
+ payload: nil)
106
+ .and_raise(@exception)
107
+ expect { @instance.send(http_method, '/test') }.to raise_error { |error|
108
+ expect(error).to be_a(Auth0::RateLimitEncountered)
109
+ expect(error).to have_attributes(
110
+ error_data: {
111
+ headers: headers,
112
+ code: 429
113
+ },
114
+ headers: headers,
115
+ http_code: 429,
116
+ reset: Time.at(1560564149)
117
+ )
118
+ }
119
+ end
120
+
92
121
  it "should raise Auth0::ServerError on send http #{http_method} method
93
122
  to path defined through HTTP when 500 received" do
94
123
  @exception.response = StubResponse.new({}, false, 500)
@@ -148,6 +177,34 @@ describe Auth0::Mixins::HTTPProxy do
148
177
  .and_raise(@exception)
149
178
  expect { @instance.send(http_method, '/test') }.to raise_error(Auth0::Unauthorized)
150
179
  end
180
+
181
+ it "should raise Auth0::RateLimitEncountered on send http #{http_method} method
182
+ to path defined through HTTP when 429 status received" do
183
+ headers = {
184
+ 'X-RateLimit-Limit' => 10,
185
+ 'X-RateLimit-Remaining' => 0,
186
+ 'X-RateLimit-Reset' => 1560564149
187
+ }
188
+ @exception.response = StubResponse.new({}, false, 429,headers)
189
+ allow(RestClient::Request).to receive(:execute).with(method: http_method,
190
+ url: '/test',
191
+ timeout: nil,
192
+ headers: nil,
193
+ payload: '{}')
194
+ .and_raise(@exception)
195
+ expect { @instance.send(http_method, '/test') }.to raise_error { |error|
196
+ expect(error).to be_a(Auth0::RateLimitEncountered)
197
+ expect(error).to have_attributes(
198
+ error_data: {
199
+ headers: headers,
200
+ code: 429
201
+ },
202
+ headers: headers,
203
+ http_code: 429,
204
+ reset: Time.at(1560564149)
205
+ )
206
+ }
207
+ end
151
208
 
152
209
  it "should raise Auth0::NotFound on send http #{http_method} method
153
210
  to path defined through HTTP when 404 status received" do
@@ -4,13 +4,12 @@ require 'faker'
4
4
  require 'auth0'
5
5
 
6
6
  require 'simplecov'
7
- SimpleCov.start do
8
- add_filter '/spec/'
9
- add_filter '/spec/integration'
10
- end
7
+ SimpleCov.start
11
8
 
12
- require 'codecov'
13
- SimpleCov.formatter = SimpleCov::Formatter::Codecov if ENV['TRAVIS']
9
+ if ENV['CI'] == 'true'
10
+ require 'codecov'
11
+ SimpleCov.formatter = SimpleCov::Formatter::Codecov
12
+ end
14
13
 
15
14
  require 'dotenv'
16
15
  Dotenv.load
@@ -21,19 +21,10 @@ module Credentials
21
21
 
22
22
  def v2_creds
23
23
  {
24
- client_id: ENV['CLIENT_ID'],
25
- client_secret: ENV['CLIENT_SECRET'],
26
- token: ENV['MASTER_JWT'],
27
- domain: ENV['DOMAIN']
28
- }
29
- end
30
-
31
- def v2_creds_with_secret
32
- {
33
- client_id: ENV['CLIENT_ID'],
34
- client_secret: ENV['CLIENT_SECRET'],
35
- token: ENV['MASTER_JWT'],
36
- domain: ENV['DOMAIN']
24
+ domain: ENV.fetch( 'DOMAIN', 'DOMAIN' ),
25
+ client_id: ENV.fetch( 'CLIENT_ID', 'CLIENT_ID' ),
26
+ client_secret: ENV.fetch( 'CLIENT_SECRET', 'TEST_CLIENT_SECRET' ),
27
+ token: ENV.fetch( 'MASTER_JWT', 'TEST_MASTER_JWT' )
37
28
  }
38
29
  end
39
30
  end
@@ -10,7 +10,7 @@ class DummyClass
10
10
  @audience = "https://#{@domain}/api/v2/"
11
11
  end
12
12
 
13
- %i(get post put patch delete).each do |method|
13
+ %i(get post put patch delete delete_with_body).each do |method|
14
14
  define_method(method) do |_path, _body = {}|
15
15
  true
16
16
  end
@@ -1 +1 @@
1
- StubResponse = Struct.new(:body, :success?, :code)
1
+ StubResponse = Struct.new(:body, :success?, :code, :headers)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auth0
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.7.0
4
+ version: 4.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Auth0
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2019-03-19 00:00:00.000000000 Z
14
+ date: 2019-08-01 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rest-client
@@ -223,26 +223,28 @@ extensions: []
223
223
  extra_rdoc_files: []
224
224
  files:
225
225
  - ".bundle/config"
226
+ - ".circleci/config.yml"
226
227
  - ".gemrelease"
228
+ - ".github/CODEOWNERS"
227
229
  - ".github/ISSUE_TEMPLATE.md"
228
230
  - ".github/PULL_REQUEST_TEMPLATE.md"
229
231
  - ".gitignore"
230
232
  - ".rspec"
231
233
  - ".rubocop.yml"
232
234
  - ".rubocop_todo.yml"
233
- - ".travis.yml"
234
235
  - CHANGELOG.md
235
236
  - CODE_OF_CONDUCT.md
236
237
  - DEPLOYMENT.md
237
238
  - Dockerfile
238
239
  - Gemfile
240
+ - Gemfile.lock
239
241
  - Guardfile
240
242
  - LICENSE
241
243
  - README.md
242
244
  - RUBYGEM.md
243
245
  - Rakefile
244
246
  - auth0.gemspec
245
- - build_travis.sh
247
+ - codecov.yml
246
248
  - deploy_documentation.sh
247
249
  - doc_config/templates/default/fulldoc/html/css/full_list.css
248
250
  - doc_config/templates/default/fulldoc/html/css/style.css
@@ -326,6 +328,7 @@ files:
326
328
  - lib/auth0/api/v1/rules.rb
327
329
  - lib/auth0/api/v1/users.rb
328
330
  - lib/auth0/api/v2.rb
331
+ - lib/auth0/api/v2/anomaly.rb
329
332
  - lib/auth0/api/v2/blacklists.rb
330
333
  - lib/auth0/api/v2/client_grants.rb
331
334
  - lib/auth0/api/v2/clients.rb
@@ -335,6 +338,7 @@ files:
335
338
  - lib/auth0/api/v2/jobs.rb
336
339
  - lib/auth0/api/v2/logs.rb
337
340
  - lib/auth0/api/v2/resource_servers.rb
341
+ - lib/auth0/api/v2/roles.rb
338
342
  - lib/auth0/api/v2/rules.rb
339
343
  - lib/auth0/api/v2/stats.rb
340
344
  - lib/auth0/api/v2/tenants.rb
@@ -350,6 +354,8 @@ files:
350
354
  - lib/auth0/mixins/headers.rb
351
355
  - lib/auth0/mixins/httpproxy.rb
352
356
  - lib/auth0/mixins/initializer.rb
357
+ - lib/auth0/mixins/permission_struct.rb
358
+ - lib/auth0/mixins/validation.rb
353
359
  - lib/auth0/version.rb
354
360
  - lib/auth0_client.rb
355
361
  - publish_rubygem.sh
@@ -365,6 +371,8 @@ files:
365
371
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml
366
372
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml
367
373
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml
374
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml
375
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml
368
376
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml
369
377
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml
370
378
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml
@@ -444,6 +452,22 @@ files:
444
452
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_the_first_page_of_one_result.yml
445
453
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/create_test_server.yml
446
454
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/delete_test_server.yml
455
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml
456
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml
457
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml
458
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml
459
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml
460
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml
461
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml
462
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml
463
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml
464
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml
465
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml
466
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml
467
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml
468
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml
469
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml
470
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_user.yml
447
471
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml
448
472
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml
449
473
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml
@@ -470,13 +494,26 @@ files:
470
494
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml
471
495
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml
472
496
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml
473
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_user_successfully.yml
474
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_email_verified_and_return_the_updated_data.yml
475
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_user_metadata_and_return_the_updated_user.yml
497
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml
498
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml
499
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml
500
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml
501
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml
502
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml
503
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml
504
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml
505
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml
506
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml
507
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml
508
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml
509
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml
510
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml
511
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml
476
512
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml
477
513
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml
478
514
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml
479
515
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml
516
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml
480
517
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml
481
518
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml
482
519
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml
@@ -484,8 +521,14 @@ files:
484
521
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml
485
522
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml
486
523
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml
524
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml
525
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml
526
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml
487
527
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml
528
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml
529
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml
488
530
  - spec/integration/lib/auth0/api/api_authentication_spec.rb
531
+ - spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb
489
532
  - spec/integration/lib/auth0/api/v2/api_blacklist_spec.rb
490
533
  - spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb
491
534
  - spec/integration/lib/auth0/api/v2/api_clients_spec.rb
@@ -495,6 +538,7 @@ files:
495
538
  - spec/integration/lib/auth0/api/v2/api_jobs_spec.rb
496
539
  - spec/integration/lib/auth0/api/v2/api_logs_spec.rb
497
540
  - spec/integration/lib/auth0/api/v2/api_resource_servers_spec.rb
541
+ - spec/integration/lib/auth0/api/v2/api_roles_spec.rb
498
542
  - spec/integration/lib/auth0/api/v2/api_rules_spec.rb
499
543
  - spec/integration/lib/auth0/api/v2/api_stats_spec.rb
500
544
  - spec/integration/lib/auth0/api/v2/api_tenants_spec.rb
@@ -503,6 +547,7 @@ files:
503
547
  - spec/integration/lib/auth0/api/v2/api_users_spec.rb
504
548
  - spec/integration/lib/auth0/auth0_client_spec.rb
505
549
  - spec/lib/auth0/api/authentication_endpoints_spec.rb
550
+ - spec/lib/auth0/api/v2/anomaly_spec.rb
506
551
  - spec/lib/auth0/api/v2/blacklists_spec.rb
507
552
  - spec/lib/auth0/api/v2/client_grants_spec.rb
508
553
  - spec/lib/auth0/api/v2/clients_spec.rb
@@ -512,6 +557,7 @@ files:
512
557
  - spec/lib/auth0/api/v2/jobs_spec.rb
513
558
  - spec/lib/auth0/api/v2/logs_spec.rb
514
559
  - spec/lib/auth0/api/v2/resource_servers_spec.rb
560
+ - spec/lib/auth0/api/v2/roles_spec.rb
515
561
  - spec/lib/auth0/api/v2/rules_spec.rb
516
562
  - spec/lib/auth0/api/v2/stats_spec.rb
517
563
  - spec/lib/auth0/api/v2/tenants_spec.rb
@@ -565,6 +611,8 @@ test_files:
565
611
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml
566
612
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml
567
613
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml
614
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml
615
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml
568
616
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml
569
617
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml
570
618
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml
@@ -644,6 +692,22 @@ test_files:
644
692
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_the_first_page_of_one_result.yml
645
693
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/create_test_server.yml
646
694
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/delete_test_server.yml
695
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml
696
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml
697
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml
698
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml
699
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml
700
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml
701
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml
702
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml
703
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml
704
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml
705
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml
706
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml
707
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml
708
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml
709
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml
710
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_user.yml
647
711
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml
648
712
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml
649
713
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml
@@ -670,13 +734,26 @@ test_files:
670
734
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml
671
735
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml
672
736
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml
673
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_user_successfully.yml
674
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_email_verified_and_return_the_updated_data.yml
675
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_user_metadata_and_return_the_updated_user.yml
737
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml
738
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml
739
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml
740
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml
741
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml
742
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml
743
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml
744
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml
745
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml
746
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml
747
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml
748
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml
749
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml
750
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml
751
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml
676
752
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml
677
753
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml
678
754
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml
679
755
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml
756
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml
680
757
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml
681
758
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml
682
759
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml
@@ -684,8 +761,14 @@ test_files:
684
761
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml
685
762
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml
686
763
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml
764
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml
765
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml
766
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml
687
767
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml
768
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml
769
+ - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml
688
770
  - spec/integration/lib/auth0/api/api_authentication_spec.rb
771
+ - spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb
689
772
  - spec/integration/lib/auth0/api/v2/api_blacklist_spec.rb
690
773
  - spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb
691
774
  - spec/integration/lib/auth0/api/v2/api_clients_spec.rb
@@ -695,6 +778,7 @@ test_files:
695
778
  - spec/integration/lib/auth0/api/v2/api_jobs_spec.rb
696
779
  - spec/integration/lib/auth0/api/v2/api_logs_spec.rb
697
780
  - spec/integration/lib/auth0/api/v2/api_resource_servers_spec.rb
781
+ - spec/integration/lib/auth0/api/v2/api_roles_spec.rb
698
782
  - spec/integration/lib/auth0/api/v2/api_rules_spec.rb
699
783
  - spec/integration/lib/auth0/api/v2/api_stats_spec.rb
700
784
  - spec/integration/lib/auth0/api/v2/api_tenants_spec.rb
@@ -703,6 +787,7 @@ test_files:
703
787
  - spec/integration/lib/auth0/api/v2/api_users_spec.rb
704
788
  - spec/integration/lib/auth0/auth0_client_spec.rb
705
789
  - spec/lib/auth0/api/authentication_endpoints_spec.rb
790
+ - spec/lib/auth0/api/v2/anomaly_spec.rb
706
791
  - spec/lib/auth0/api/v2/blacklists_spec.rb
707
792
  - spec/lib/auth0/api/v2/client_grants_spec.rb
708
793
  - spec/lib/auth0/api/v2/clients_spec.rb
@@ -712,6 +797,7 @@ test_files:
712
797
  - spec/lib/auth0/api/v2/jobs_spec.rb
713
798
  - spec/lib/auth0/api/v2/logs_spec.rb
714
799
  - spec/lib/auth0/api/v2/resource_servers_spec.rb
800
+ - spec/lib/auth0/api/v2/roles_spec.rb
715
801
  - spec/lib/auth0/api/v2/rules_spec.rb
716
802
  - spec/lib/auth0/api/v2/stats_spec.rb
717
803
  - spec/lib/auth0/api/v2/tenants_spec.rb
@@ -1,18 +0,0 @@
1
- ---
2
- language: ruby
3
- sudo: false
4
- cache: bundler
5
- rvm:
6
- - 2.1.9
7
- - 2.2.5
8
- - 2.3.1
9
- script: "./build_travis.sh"
10
- after_success: "./deploy_documentation.sh"
11
- deploy:
12
- provider: rubygems
13
- api_key: ${RUBYGEMS_API_KEY}
14
- gemspec: auth0.gemspec
15
- on:
16
- tags: true
17
- repo: auth0/ruby-auth0
18
- branch: master
@@ -1,7 +0,0 @@
1
- #!/bin/bash
2
-
3
- if [ "$TRAVIS_SECURE_ENV_VARS" == "true" ]; then
4
- bundle exec rake all
5
- else
6
- bundle exec rake spec
7
- fi
@@ -1,68 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: patch
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/users/auth0%7C5bb7c4425e09334d77899bdc
6
- body:
7
- encoding: UTF-8
8
- string: '{"email_verified":true}'
9
- headers:
10
- Accept:
11
- - "*/*"
12
- Accept-Encoding:
13
- - gzip, deflate
14
- User-Agent:
15
- - Ruby/2.3.1
16
- Content-Type:
17
- - application/json
18
- Auth0-Client:
19
- - eyJuYW1lIjoicnVieS1hdXRoMCIsInZlcnNpb24iOiI0LjUuMCJ9
20
- Authorization:
21
- - Bearer eyJ0eXAiOiJKV1QiLCJhbGc.eyJpc3MiOiJodHRwczovL2F1dGgwLXNkay10ZXN0cy5hdXRoMC5jb20vIiwic3ViIjoiQjRvUEhsMDA3VmExR0JkWlhpU0hhRUNVcVZXa2Q5WGtAY2xpZW50cyIsIm.PxfZjVd4wTb_bFbSTENdTmbj13CDQaPK352w3UNL3i3DnWcVJa6qSiA0hCr_tSU_uC34mHkK52O8tFVeZjxCYSeM9yOZUcKVya5N0I7G90X
22
- Content-Length:
23
- - '23'
24
- Host:
25
- - auth0-sdk-tests.auth0.com
26
- response:
27
- status:
28
- code: 200
29
- message: OK
30
- headers:
31
- Date:
32
- - Fri, 05 Oct 2018 20:06:28 GMT
33
- Content-Type:
34
- - application/json; charset=utf-8
35
- Transfer-Encoding:
36
- - chunked
37
- Connection:
38
- - keep-alive
39
- X-Ratelimit-Limit:
40
- - '10'
41
- X-Ratelimit-Remaining:
42
- - '6'
43
- X-Ratelimit-Reset:
44
- - '1538769991'
45
- Vary:
46
- - origin,accept-encoding
47
- Cache-Control:
48
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
49
- Content-Encoding:
50
- - gzip
51
- Strict-Transport-Security:
52
- - max-age=15724800
53
- X-Robots-Tag:
54
- - noindex, nofollow, nosnippet, noarchive
55
- body:
56
- encoding: ASCII-8BIT
57
- string: !binary |-
58
- H4sIAAAAAAAAA31Ry27CMBD8F0v0RBLHediJhFouPVdqe6GqkGNvwCo4kR9U
59
- FeXfa4eCOCH5MLZnZ2Z3jwj2XO1Qi4zvfhxYl1yBt2A038MT926LUzHs0RzF
60
- h1v2hRS+JqX1AYzqFUjUOuNhjvwouQO55i6UEZyzJMcJrt4IbnHdEpYSSleh
61
- elTCeRO1t86Nts0ym24MP3DHTfTOzjAjdSEw9HlZActzSWpa54IGkDdNyVj/
62
- aBclww9mMW4e5GLSmhXLGXkOR0idXpsJ97OkDcj4dNSbECP2s1YhPZqIv1XX
63
- UVGWpALcFEUpKWVN00kRR6HE151xKAnaKafAovbjiMSgNQinBh347/+05IVb
64
- +z0YmSyDW+QLPlFug9yJMJrhEHzMJW60ta+DUDystOc7C6fPORIG7q2gTpsa
65
- r9DpD4j2v9EMAgAA
66
- http_version:
67
- recorded_at: Fri, 05 Oct 2018 20:06:28 GMT
68
- recorded_with: VCR 4.0.0