auth0 5.3.0 → 5.6.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (214) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +5 -0
  3. data/.shiprc +7 -0
  4. data/CHANGELOG.md +109 -31
  5. data/Gemfile +1 -0
  6. data/README.md +10 -8
  7. data/auth0.gemspec +2 -1
  8. data/lib/auth0/api/authentication_endpoints.rb +40 -16
  9. data/lib/auth0/api/v2/actions.rb +210 -0
  10. data/lib/auth0/api/v2/branding.rb +0 -1
  11. data/lib/auth0/api/v2/grants.rb +49 -0
  12. data/lib/auth0/api/v2.rb +4 -0
  13. data/lib/auth0/exception.rb +12 -0
  14. data/lib/auth0/mixins/api_token_struct.rb +0 -1
  15. data/lib/auth0/mixins/httpproxy.rb +77 -34
  16. data/lib/auth0/mixins/initializer.rb +2 -3
  17. data/lib/auth0/mixins/token_management.rb +32 -0
  18. data/lib/auth0/mixins/validation.rb +1 -1
  19. data/lib/auth0/mixins.rb +2 -0
  20. data/lib/auth0/version.rb +1 -1
  21. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_change_password/should_trigger_a_password_reset.yml +53 -23
  22. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_email.yml +49 -18
  23. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_password.yml +49 -18
  24. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_invalid_audience.yml +46 -15
  25. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_custom_audience.yml +49 -79
  26. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_default_scope.yml +49 -80
  27. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_saml_metadata/should_retrieve_SAML_metadata.yml +74 -21
  28. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_fail_as_not_authorized.yml +53 -14
  29. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_return_the_userinfo.yml +106 -48
  30. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml +62 -19
  31. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml +57 -22
  32. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml +38 -20
  33. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml +37 -19
  34. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml +38 -23
  35. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml +42 -26
  36. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml +42 -26
  37. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml +38 -20
  38. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml +39 -27
  39. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client.yml +44 -82
  40. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client_grant.yml +39 -27
  41. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client.yml +38 -20
  42. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client_grant.yml +38 -20
  43. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_exclude_and_include_fields_properly.yml +43 -56
  44. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_include_the_specified_fields.yml +39 -28
  45. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/should_get_the_test_client.yml +43 -57
  46. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_fields_not_specified.yml +43 -24
  47. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_the_specified_fields.yml +236 -96
  48. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_include_the_specified_fields.yml +52 -27
  49. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_paginate_results.yml +39 -25
  50. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/should_get_at_least_one_client.yml +235 -96
  51. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_delete_client/should_delete_the_test_client_without_an_error.yml +38 -20
  52. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_patch_client/should_update_the_client_with_the_correct_attributes.yml +43 -57
  53. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/create_test_client.yml +45 -82
  54. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_exclude_the_fields_indicated.yml +15 -16
  55. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_include_the_fields_indicated.yml +15 -16
  56. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/should_find_the_correct_connection.yml +15 -16
  57. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_include_previously-created_connection_when_filtered.yml +14 -15
  58. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_exclude_the_fields_indicated_from_filtered_results.yml +14 -15
  59. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_include_the_fields_indicated_from_filtered_results.yml +14 -15
  60. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_include_the_previously_created_connection.yml +15 -15
  61. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_not_be_empty.yml +15 -15
  62. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection/should_delete_the_connection.yml +15 -16
  63. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection_user/should_delete_the_user_created.yml +29 -27
  64. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml +15 -16
  65. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml +16 -17
  66. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml +40 -32
  67. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_credential.yml +40 -30
  68. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml +40 -32
  69. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml +38 -20
  70. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml +37 -28
  71. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml +37 -19
  72. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_throw_an_error_trying_to_get_the_email_provider.yml +34 -16
  73. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_with_specific_fields.yml +36 -27
  74. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_without_specific_fields.yml +36 -28
  75. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/should_get_the_existing_email_provider.yml +36 -28
  76. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_update_provider/should_update_the_existing_email_provider.yml +36 -28
  77. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/delete_existing_provider.yml +37 -19
  78. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_create_an_export_users_job_successfully.yml +38 -23
  79. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_get_the_export_users_job.yml +76 -46
  80. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_create_an_import_users_job_successfully.yml +46 -25
  81. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_get_the_import_users_job.yml +84 -48
  82. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_create_a_new_verification_email_job.yml +77 -47
  83. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_get_the_completed_verification_email.yml +116 -71
  84. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_reject_an_invalid_client_id.yml +76 -39
  85. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/delete_imported_user.yml +76 -43
  86. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/search_for_connection_id.yml +43 -23
  87. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_match_the_created_log_entry.yml +224 -196
  88. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_not_be_empty.yml +224 -196
  89. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_fields_not_specified.yml +38 -25
  90. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_the_specified_fields.yml +39 -39
  91. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_have_one_log_entry.yml +41 -40
  92. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_include_the_specified_fields.yml +38 -26
  93. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_from/should_take_one_log_entry.yml +229 -189
  94. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/create_test_user.yml +40 -32
  95. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_disabled_rule.yml +38 -20
  96. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_enabled_rule.yml +38 -20
  97. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_user.yml +38 -20
  98. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_delete_resource_server/should_delete_the_test_server_without_an_error.yml +38 -20
  99. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_patch_resource_server/should_update_the_resource_server_with_the_correct_attributes.yml +39 -24
  100. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_server/should_get_the_test_server.yml +39 -24
  101. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_get_the_test_server.yml +146 -23
  102. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_at_least_1_result.yml +146 -23
  103. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_the_first_page_of_one_result.yml +131 -24
  104. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/create_test_server.yml +40 -25
  105. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/delete_test_server.yml +38 -20
  106. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml +39 -32
  107. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml +38 -31
  108. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml +42 -30
  109. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml +38 -30
  110. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml +37 -30
  111. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml +37 -30
  112. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml +37 -30
  113. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml +37 -30
  114. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml +37 -29
  115. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml +39 -29
  116. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml +37 -30
  117. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml +38 -31
  118. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml +39 -31
  119. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml +38 -31
  120. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml +36 -26
  121. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_user.yml +36 -26
  122. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml +38 -20
  123. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml +38 -20
  124. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml +40 -27
  125. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_specified_fields.yml +40 -27
  126. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_include_the_specified_fields.yml +39 -26
  127. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/should_get_a_specific_rule.yml +40 -27
  128. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_exclude_fields_not_specified.yml +80 -24
  129. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_include_the_specified_fields.yml +82 -25
  130. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_disabled_rule.yml +59 -27
  131. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_enabled_rule.yml +68 -26
  132. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_paginated_results.yml +78 -49
  133. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/should_return_at_least_1_rule.yml +84 -28
  134. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_update_rule/should_update_the_disabled_rule_to_be_enabled.yml +40 -27
  135. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_disabled_rule.yml +42 -29
  136. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_enabled_rule.yml +42 -29
  137. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_active_users/should_have_at_least_one_active_user.yml +38 -23
  138. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_daily_stats/should_have_at_least_one_stats_entry_for_the_timeframe.yml +38 -27
  139. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings/should_get_the_tenant_settings.yml +72 -59
  140. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_exclude_a_field_not_requested.yml +38 -25
  141. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_include_the_field_requested.yml +38 -25
  142. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_revert_the_tenant_name.yml +72 -58
  143. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_update_the_tenant_settings_with_a_new_tenant_name.yml +72 -58
  144. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_email_verification/should_create_an_email_verification_ticket.yml +39 -26
  145. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml +39 -26
  146. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml +40 -32
  147. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml +38 -20
  148. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml +39 -35
  149. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml +37 -25
  150. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml +36 -24
  151. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml +36 -24
  152. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml +36 -24
  153. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml +37 -28
  154. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml +37 -28
  155. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml +37 -28
  156. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml +38 -28
  157. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml +36 -24
  158. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml +38 -29
  159. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml +38 -28
  160. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml +39 -27
  161. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml +39 -27
  162. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml +37 -28
  163. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml +37 -28
  164. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml +37 -28
  165. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml +37 -28
  166. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml +37 -28
  167. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml +42 -30
  168. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml +36 -27
  169. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml +36 -27
  170. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml +36 -27
  171. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_include_the_indicated_fields_when_paginated.yml +36 -27
  172. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml +36 -27
  173. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml +36 -27
  174. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml +37 -27
  175. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml +38 -29
  176. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml +38 -29
  177. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml +39 -29
  178. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml +38 -29
  179. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml +36 -24
  180. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml +42 -28
  181. data/spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb +0 -9
  182. data/spec/integration/lib/auth0/api/v2/api_connections_spec.rb +3 -3
  183. data/spec/integration/lib/auth0/api/v2/api_email_spec.rb +0 -31
  184. data/spec/integration/lib/auth0/api/v2/api_jobs_spec.rb +4 -4
  185. data/spec/integration/lib/auth0/api/v2/api_logs_spec.rb +5 -5
  186. data/spec/integration/lib/auth0/api/v2/api_roles_spec.rb +3 -3
  187. data/spec/integration/lib/auth0/api/v2/api_tickets_spec.rb +4 -4
  188. data/spec/integration/lib/auth0/api/v2/api_user_blocks_spec.rb +8 -5
  189. data/spec/integration/lib/auth0/api/v2/api_users_spec.rb +6 -33
  190. data/spec/lib/auth0/api/v2/actions_spec.rb +312 -0
  191. data/spec/lib/auth0/api/v2/grants_spec.rb +91 -0
  192. data/spec/lib/auth0/client_spec.rb +3 -3
  193. data/spec/lib/auth0/mixins/httpproxy_spec.rb +320 -25
  194. data/spec/lib/auth0/mixins/initializer_spec.rb +87 -0
  195. data/spec/lib/auth0/mixins/token_management_spec.rb +125 -0
  196. data/spec/spec_helper.rb +1 -1
  197. data/spec/support/dummy_class_for_proxy.rb +2 -2
  198. data/spec/support/dummy_class_for_tokens.rb +17 -0
  199. metadata +31 -30
  200. data/.yardoc/checksums +0 -22
  201. data/.yardoc/complete +0 -0
  202. data/.yardoc/object_types +0 -0
  203. data/.yardoc/objects/root.dat +0 -0
  204. data/.yardoc/proxy_types +0 -0
  205. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml +0 -65
  206. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml +0 -60
  207. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml +0 -66
  208. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_delete_device_credential/should_delete_the_test_credential_without_an_error.yml +0 -54
  209. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/_filter_by_type/should_exclude_the_test_credential.yml +0 -59
  210. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_have_at_least_1_entry.yml +0 -62
  211. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_include_the_test_credential.yml +0 -62
  212. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml +0 -54
  213. data/spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb +0 -17
  214. data/spec/integration/lib/auth0/api/v2/api_device_credentials_spec.rb +0 -128
@@ -1,54 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: delete
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/device-credentials/dcr_GppmjtmDWWY7RRS5
6
- body:
7
- encoding: US-ASCII
8
- string: ''
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
- - Basic VXNlcm5hbWUtUGFzc3dvcmQtQXV0aGVudGljYXRpb25ccnVieXRlc3QtcnVieXRlc3QtdXNlcm5hbWVAYXV0aDAuY29tOlN3R3pFeEozWjkwa0kwSTA=
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 204
27
- message: No Content
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 18:16:57 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Connection:
34
- - keep-alive
35
- X-Ratelimit-Limit:
36
- - '10'
37
- X-Ratelimit-Remaining:
38
- - '9'
39
- X-Ratelimit-Reset:
40
- - '1538763419'
41
- Vary:
42
- - origin,accept-encoding
43
- Cache-Control:
44
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
45
- Strict-Transport-Security:
46
- - max-age=15724800
47
- X-Robots-Tag:
48
- - noindex, nofollow, nosnippet, noarchive
49
- body:
50
- encoding: UTF-8
51
- string: ''
52
- http_version:
53
- recorded_at: Fri, 05 Oct 2018 18:16:57 GMT
54
- recorded_with: VCR 3.0.3
@@ -1,59 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/device-credentials?client_id=2cnWuug6zaFX1j0ge1P99jAUn0F4XSuI&type=refresh_token
6
- body:
7
- encoding: US-ASCII
8
- string: ''
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
- - Basic VXNlcm5hbWUtUGFzc3dvcmQtQXV0aGVudGljYXRpb25ccnVieXRlc3QtcnVieXRlc3QtdXNlcm5hbWVAYXV0aDAuY29tOlN3R3pFeEozWjkwa0kwSTA=
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 200
27
- message: OK
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 18:16:56 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Transfer-Encoding:
34
- - chunked
35
- Connection:
36
- - keep-alive
37
- X-Ratelimit-Limit:
38
- - '10'
39
- X-Ratelimit-Remaining:
40
- - '9'
41
- X-Ratelimit-Reset:
42
- - '1538763418'
43
- Vary:
44
- - origin,accept-encoding
45
- Cache-Control:
46
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
47
- Content-Encoding:
48
- - gzip
49
- Strict-Transport-Security:
50
- - max-age=15724800
51
- X-Robots-Tag:
52
- - noindex, nofollow, nosnippet, noarchive
53
- body:
54
- encoding: ASCII-8BIT
55
- string: !binary |-
56
- H4sIAAAAAAAAA4uOBQApu0wNAgAAAA==
57
- http_version:
58
- recorded_at: Fri, 05 Oct 2018 18:16:56 GMT
59
- recorded_with: VCR 3.0.3
@@ -1,62 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/device-credentials?client_id=2cnWuug6zaFX1j0ge1P99jAUn0F4XSuI
6
- body:
7
- encoding: US-ASCII
8
- string: ''
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
- - Basic VXNlcm5hbWUtUGFzc3dvcmQtQXV0aGVudGljYXRpb25ccnVieXRlc3QtcnVieXRlc3QtdXNlcm5hbWVAYXV0aDAuY29tOlN3R3pFeEozWjkwa0kwSTA=
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 200
27
- message: OK
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 18:16:54 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Transfer-Encoding:
34
- - chunked
35
- Connection:
36
- - keep-alive
37
- X-Ratelimit-Limit:
38
- - '10'
39
- X-Ratelimit-Remaining:
40
- - '9'
41
- X-Ratelimit-Reset:
42
- - '1538763416'
43
- Vary:
44
- - origin,accept-encoding
45
- Cache-Control:
46
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
47
- Content-Encoding:
48
- - gzip
49
- Strict-Transport-Security:
50
- - max-age=15724800
51
- X-Robots-Tag:
52
- - noindex, nofollow, nosnippet, noarchive
53
- body:
54
- encoding: ASCII-8BIT
55
- string: !binary |-
56
- H4sIAAAAAAAAA0WOyw6CMBQF/6Vrm1xqH+LOgLrHBTHGNC3cBFSwgdaEqP8u
57
- 1YXbk5nJOT1JW5M1qatB753rLr7Ly/KoiuIgyILU+Ggr1L3pcIaGYCePo6dh
58
- xCFu2jX3HnXyJ78xuVJiueGc8lzuaMKYpGkmgQII2PIMAKSalVj5CSb4Bl7C
59
- WmVMytBwyTkoZhNjESLqJxcPuGBvbaWvOJH3+QNVhWe1uwAAAA==
60
- http_version:
61
- recorded_at: Fri, 05 Oct 2018 18:16:54 GMT
62
- recorded_with: VCR 3.0.3
@@ -1,62 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/device-credentials?client_id=2cnWuug6zaFX1j0ge1P99jAUn0F4XSuI
6
- body:
7
- encoding: US-ASCII
8
- string: ''
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
- - Basic VXNlcm5hbWUtUGFzc3dvcmQtQXV0aGVudGljYXRpb25ccnVieXRlc3QtcnVieXRlc3QtdXNlcm5hbWVAYXV0aDAuY29tOlN3R3pFeEozWjkwa0kwSTA=
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 200
27
- message: OK
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 18:16:56 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Transfer-Encoding:
34
- - chunked
35
- Connection:
36
- - keep-alive
37
- X-Ratelimit-Limit:
38
- - '10'
39
- X-Ratelimit-Remaining:
40
- - '9'
41
- X-Ratelimit-Reset:
42
- - '1538763417'
43
- Vary:
44
- - origin,accept-encoding
45
- Cache-Control:
46
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
47
- Content-Encoding:
48
- - gzip
49
- Strict-Transport-Security:
50
- - max-age=15724800
51
- X-Robots-Tag:
52
- - noindex, nofollow, nosnippet, noarchive
53
- body:
54
- encoding: ASCII-8BIT
55
- string: !binary |-
56
- H4sIAAAAAAAAA0WOyw6CMBQF/6Vrm1xqH+LOgLrHBTHGNC3cBFSwgdaEqP8u
57
- 1YXbk5nJOT1JW5M1qatB753rLr7Ly/KoiuIgyILU+Ggr1L3pcIaGYCePo6dh
58
- xCFu2jX3HnXyJ78xuVJiueGc8lzuaMKYpGkmgQII2PIMAKSalVj5CSb4Bl7C
59
- WmVMytBwyTkoZhNjESLqJxcPuGBvbaWvOJH3+QNVhWe1uwAAAA==
60
- http_version:
61
- recorded_at: Fri, 05 Oct 2018 18:16:56 GMT
62
- recorded_with: VCR 3.0.3
@@ -1,54 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: delete
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/device-credentials/dcr_GppmjtmDWWY7RRS5
6
- body:
7
- encoding: US-ASCII
8
- string: ''
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 API_TOKEN
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 204
27
- message: No Content
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 18:16:59 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Connection:
34
- - keep-alive
35
- X-Ratelimit-Limit:
36
- - '10'
37
- X-Ratelimit-Remaining:
38
- - '9'
39
- X-Ratelimit-Reset:
40
- - '1538763420'
41
- Vary:
42
- - origin,accept-encoding
43
- Cache-Control:
44
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
45
- Strict-Transport-Security:
46
- - max-age=15724800
47
- X-Robots-Tag:
48
- - noindex, nofollow, nosnippet, noarchive
49
- body:
50
- encoding: UTF-8
51
- string: ''
52
- http_version:
53
- recorded_at: Fri, 05 Oct 2018 18:16:59 GMT
54
- recorded_with: VCR 3.0.3
@@ -1,17 +0,0 @@
1
- require 'spec_helper'
2
- describe Auth0::Api::V2::Anomaly do
3
- let(:client) { Auth0Client.new(v2_creds) }
4
- let(:ip) { '192.0.2.0' }
5
-
6
- describe '.check_if_ip_is_blocked', vcr: true do
7
- it 'should return 200 response code' do
8
- expect { client.check_if_ip_is_blocked(ip) }.to_not raise_error
9
- end
10
- end
11
-
12
- describe '.remove_ip_block', vcr: true do
13
- it 'should remove an IP successfully' do
14
- expect { client.remove_ip_block(ip) }.to_not raise_error
15
- end
16
- end
17
- end
@@ -1,128 +0,0 @@
1
- require 'spec_helper'
2
- require 'base64'
3
- describe Auth0::Api::V2::DeviceCredentials do
4
- attr_reader :test_user, :client, :basic_client, :test_credential
5
-
6
- before(:all) do
7
- @client = Auth0Client.new(v2_creds)
8
- test_user_name = "#{entity_suffix}-username"
9
- email = "#{entity_suffix}-#{test_user_name}@auth0.com"
10
- password = Faker::Internet.password
11
-
12
- VCR.use_cassette('Auth0_Api_V2_DeviceCredentials/create_test_user') do
13
- @test_user = client.create_user(
14
- test_user_name,
15
- 'email' => email,
16
- 'password' => password,
17
- 'email_verified' => true,
18
- 'connection' => Auth0::Api::AuthenticationEndpoints::UP_AUTH
19
- )
20
- end
21
-
22
-
23
- basic_creds = {
24
- connection_id: Auth0::Api::AuthenticationEndpoints::UP_AUTH,
25
- user: email,
26
- password: password,
27
- authorization: 'Basic'
28
- }
29
-
30
- @basic_client = Auth0Client.new(v2_creds.merge(basic_creds))
31
-
32
- VCR.use_cassette('Auth0_Api_V2_DeviceCredentials/create_test_credential') do
33
- @test_credential = basic_client.create_device_credential(
34
- "#{test_user['name']}_phone_1",
35
- 'dmFsdWU=',
36
- '68753A44-4D6F-1226-9C60-0050E4C00067',
37
- v2_creds[:client_id]
38
- )
39
- end
40
-
41
- end
42
-
43
- after(:all) do
44
- VCR.use_cassette('Auth0_Api_V2_DeviceCredentials/delete_test_user') do
45
- client.delete_user(test_user['user_id'])
46
- end
47
-
48
- VCR.use_cassette('Auth0_Api_V2_DeviceCredentials/delete_test_credential') do
49
- client.delete_device_credential(test_credential['id'])
50
- end
51
- end
52
-
53
- describe '.create_device_credential', vcr: true do
54
- it 'should create the test credentials' do
55
- expect(test_credential).to(
56
- include('id' => test_credential['id'])
57
- )
58
- end
59
-
60
- it 'should raise an error if the device_name is empty' do
61
- expect do
62
- basic_client.create_device_credential(
63
- '', 'value', 'device_id', 'client_id'
64
- )
65
- end.to raise_error Auth0::InvalidParameter
66
- end
67
-
68
- it 'should raise an error if the value is empty' do
69
- expect do
70
- basic_client.create_device_credential(
71
- 'device_name', '', 'device_id', 'client_id'
72
- )
73
- end.to raise_error Auth0::InvalidParameter
74
- end
75
-
76
- it 'should raise an error if the device_id is empty' do
77
- expect do
78
- basic_client.create_device_credential(
79
- 'device_name', 'value', '', 'client_id'
80
- )
81
- end.to raise_error Auth0::InvalidParameter
82
- end
83
-
84
- it 'should raise an error if the client_id is empty' do
85
- expect do
86
- basic_client.create_device_credential(
87
- 'device_name', 'value', 'device_id', ''
88
- )
89
- end.to raise_error Auth0::InvalidParameter
90
- end
91
- end
92
-
93
- describe '.device_credentials', vcr: true do
94
- let(:device_credentials) do
95
- basic_client.device_credentials(v2_creds[:client_id])
96
- end
97
-
98
- it 'should have at least 1 entry' do
99
- expect(device_credentials.size).to be > 0
100
- end
101
-
102
- it 'should include the test credential' do
103
- expect(
104
- device_credentials.find do |cred|
105
- cred['id'] == test_credential['id']
106
- end).to_not be_empty
107
- end
108
-
109
- context '#filter_by_type' do
110
- it 'should exclude the test credential' do
111
- expect(
112
- basic_client.device_credentials(
113
- v2_creds[:client_id],
114
- type: 'refresh_token'
115
- )
116
- ).to be_empty
117
- end
118
- end
119
- end
120
-
121
- describe '.delete_device_credential', vcr: true do
122
- it 'should delete the test credential without an error' do
123
- expect do
124
- basic_client.delete_device_credential(test_credential['id'])
125
- end.to_not raise_error
126
- end
127
- end
128
- end