twilio-ruby 5.50.0 → 5.51.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +32 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1 -4
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +2 -2
- data/lib/twilio-ruby/rest/messaging.rb +12 -0
- data/lib/twilio-ruby/rest/messaging/v1.rb +14 -0
- data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +143 -0
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +43 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +266 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +125 -0
- data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
- data/lib/twilio-ruby/rest/supersim/v1/sim.rb +16 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +12 -13
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +10 -2
- data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +24 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +0 -62
- data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +269 -0
- data/lib/twilio-ruby/version.rb +1 -1
- data/twilio-ruby.gemspec +1 -1
- metadata +8 -849
- data/spec/framework/request_spec.rb +0 -36
- data/spec/framework/serialize_spec.rb +0 -80
- data/spec/framework/version_spec.rb +0 -219
- data/spec/holodeck/holodeck.rb +0 -66
- data/spec/holodeck/hologram.rb +0 -4
- data/spec/http/http_client_spec.rb +0 -122
- data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
- data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
- data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
- data/spec/integration/accounts/v1/credential_spec.rb +0 -12
- data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
- data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
- data/spec/integration/api/v2010/account/address_spec.rb +0 -269
- data/spec/integration/api/v2010/account/application_spec.rb +0 -274
- data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
- data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
- data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
- data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
- data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
- data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
- data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
- data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
- data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
- data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
- data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
- data/spec/integration/api/v2010/account/call_spec.rb +0 -660
- data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
- data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
- data/spec/integration/api/v2010/account/conference_spec.rb +0 -716
- data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
- data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
- data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
- data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
- data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -358
- data/spec/integration/api/v2010/account/key_spec.rb +0 -176
- data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
- data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
- data/spec/integration/api/v2010/account/message_spec.rb +0 -544
- data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
- data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
- data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
- data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
- data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
- data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
- data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
- data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
- data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
- data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
- data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
- data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
- data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
- data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
- data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
- data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
- data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
- data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
- data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
- data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
- data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
- data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
- data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
- data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
- data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
- data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
- data/spec/integration/api/v2010/account/token_spec.rb +0 -71
- data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
- data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
- data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
- data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
- data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
- data/spec/integration/api/v2010/account_spec.rb +0 -327
- data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
- data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
- data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
- data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
- data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
- data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
- data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
- data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
- data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
- data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
- data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
- data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
- data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
- data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
- data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
- data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
- data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -133
- data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -80
- data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
- data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
- data/spec/integration/chat/v1/credential_spec.rb +0 -219
- data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
- data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
- data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
- data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
- data/spec/integration/chat/v1/service/role_spec.rb +0 -260
- data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
- data/spec/integration/chat/v1/service/user_spec.rb +0 -262
- data/spec/integration/chat/v1/service_spec.rb +0 -295
- data/spec/integration/chat/v2/credential_spec.rb +0 -219
- data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
- data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
- data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
- data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
- data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
- data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
- data/spec/integration/chat/v2/service/role_spec.rb +0 -260
- data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
- data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
- data/spec/integration/chat/v2/service/user_spec.rb +0 -270
- data/spec/integration/chat/v2/service_spec.rb +0 -350
- data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
- data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
- data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
- data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
- data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
- data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
- data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
- data/spec/integration/conversations/v1/credential_spec.rb +0 -219
- data/spec/integration/conversations/v1/role_spec.rb +0 -249
- data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
- data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
- data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
- data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
- data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
- data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
- data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
- data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
- data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
- data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
- data/spec/integration/conversations/v1/service_spec.rb +0 -174
- data/spec/integration/conversations/v1/user_spec.rb +0 -231
- data/spec/integration/events/v1/event_type_spec.rb +0 -133
- data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
- data/spec/integration/events/v1/schema_spec.rb +0 -46
- data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
- data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
- data/spec/integration/events/v1/sink_spec.rb +0 -231
- data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -225
- data/spec/integration/events/v1/subscription_spec.rb +0 -292
- data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
- data/spec/integration/fax/v1/fax_spec.rb +0 -267
- data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
- data/spec/integration/flex_api/v1/configuration_spec.rb +0 -578
- data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
- data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
- data/spec/integration/insights/v1/call/event_spec.rb +0 -166
- data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
- data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
- data/spec/integration/insights/v1/call_spec.rb +0 -46
- data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
- data/spec/integration/insights/v1/room_spec.rb +0 -164
- data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
- data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
- data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
- data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
- data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
- data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
- data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
- data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
- data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
- data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
- data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
- data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
- data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
- data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
- data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
- data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
- data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
- data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
- data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
- data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
- data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
- data/spec/integration/messaging/v1/brand_registration_spec.rb +0 -143
- data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
- data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
- data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
- data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
- data/spec/integration/messaging/v1/service_spec.rb +0 -267
- data/spec/integration/monitor/v1/alert_spec.rb +0 -138
- data/spec/integration/monitor/v1/event_spec.rb +0 -148
- data/spec/integration/notify/v1/credential_spec.rb +0 -219
- data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
- data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
- data/spec/integration/notify/v1/service_spec.rb +0 -289
- data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
- data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
- data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
- data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
- data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
- data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
- data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
- data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
- data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
- data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
- data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
- data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
- data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
- data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
- data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
- data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
- data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
- data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
- data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
- data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
- data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
- data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
- data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
- data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
- data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
- data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
- data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
- data/spec/integration/preview/sync/service/document_spec.rb +0 -252
- data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
- data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
- data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
- data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
- data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
- data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
- data/spec/integration/preview/sync/service_spec.rb +0 -241
- data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
- data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
- data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
- data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
- data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
- data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
- data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
- data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
- data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
- data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
- data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
- data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
- data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
- data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
- data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
- data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
- data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
- data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
- data/spec/integration/preview/understand/assistant_spec.rb +0 -269
- data/spec/integration/preview/wireless/command_spec.rb +0 -167
- data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
- data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
- data/spec/integration/preview/wireless/sim_spec.rb +0 -207
- data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
- data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
- data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
- data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
- data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
- data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
- data/spec/integration/pricing/v1/voice_spec.rb +0 -12
- data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
- data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
- data/spec/integration/pricing/v2/voice_spec.rb +0 -12
- data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
- data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
- data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
- data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
- data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
- data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
- data/spec/integration/proxy/v1/service_spec.rb +0 -214
- data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
- data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
- data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
- data/spec/integration/serverless/v1/service/build_spec.rb +0 -224
- data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
- data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
- data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
- data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
- data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
- data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
- data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
- data/spec/integration/serverless/v1/service_spec.rb +0 -205
- data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
- data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
- data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
- data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
- data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
- data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
- data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
- data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
- data/spec/integration/studio/v1/flow_spec.rb +0 -114
- data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
- data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
- data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
- data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
- data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
- data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
- data/spec/integration/studio/v2/flow_spec.rb +0 -251
- data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
- data/spec/integration/supersim/v1/command_spec.rb +0 -184
- data/spec/integration/supersim/v1/fleet_spec.rb +0 -234
- data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
- data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
- data/spec/integration/supersim/v1/network_spec.rb +0 -137
- data/spec/integration/supersim/v1/sim_spec.rb +0 -323
- data/spec/integration/supersim/v1/sms_command_spec.rb +0 -184
- data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
- data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
- data/spec/integration/sync/v1/service/document_spec.rb +0 -254
- data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
- data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
- data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
- data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
- data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
- data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
- data/spec/integration/sync/v1/service_spec.rb +0 -261
- data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
- data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
- data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
- data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
- data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
- data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -327
- data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
- data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
- data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
- data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
- data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
- data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
- data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
- data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
- data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
- data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
- data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
- data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
- data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
- data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
- data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
- data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
- data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
- data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
- data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment_spec.rb +0 -192
- data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_entity_assignments_spec.rb +0 -186
- data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_evaluations_spec.rb +0 -615
- data/spec/integration/trusthub/v1/customer_profiles_spec.rb +0 -255
- data/spec/integration/trusthub/v1/end_user_spec.rb +0 -247
- data/spec/integration/trusthub/v1/end_user_type_spec.rb +0 -176
- data/spec/integration/trusthub/v1/policies_spec.rb +0 -252
- data/spec/integration/trusthub/v1/supporting_document_spec.rb +0 -235
- data/spec/integration/trusthub/v1/supporting_document_type_spec.rb +0 -159
- data/spec/integration/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment_spec.rb +0 -192
- data/spec/integration/trusthub/v1/trust_products/trust_products_entity_assignments_spec.rb +0 -186
- data/spec/integration/trusthub/v1/trust_products/trust_products_evaluations_spec.rb +0 -615
- data/spec/integration/trusthub/v1/trust_products_spec.rb +0 -255
- data/spec/integration/verify/v2/form_spec.rb +0 -47
- data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
- data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
- data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
- data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
- data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
- data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
- data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
- data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
- data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
- data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
- data/spec/integration/verify/v2/service_spec.rb +0 -279
- data/spec/integration/verify/v2/verification_attempt_spec.rb +0 -146
- data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
- data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
- data/spec/integration/video/v1/composition_spec.rb +0 -347
- data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
- data/spec/integration/video/v1/recording_spec.rb +0 -176
- data/spec/integration/video/v1/room/recording_spec.rb +0 -185
- data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
- data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
- data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
- data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
- data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
- data/spec/integration/video/v1/room_spec.rb +0 -340
- data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
- data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
- data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
- data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
- data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
- data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
- data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
- data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
- data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
- data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
- data/spec/integration/wireless/v1/command_spec.rb +0 -286
- data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
- data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
- data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
- data/spec/integration/wireless/v1/sim_spec.rb +0 -325
- data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
- data/spec/jwt/access_token_spec.rb +0 -159
- data/spec/jwt/client_capability_spec.rb +0 -104
- data/spec/jwt/task_router_spec.rb +0 -172
- data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
- data/spec/rest/client_spec.rb +0 -255
- data/spec/security/request_validator_spec.rb +0 -125
- data/spec/spec_helper.rb +0 -38
- data/spec/support/fakeweb.rb +0 -2
- data/spec/twilio_spec.rb +0 -17
- data/spec/twiml/messaging_response_spec.rb +0 -235
- data/spec/twiml/voice_response_spec.rb +0 -847
- data/spec/util/configuration_spec.rb +0 -33
- data/spec/util/url_encode_spec.rb +0 -12
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Twilio::Request do
|
4
|
-
before do
|
5
|
-
@request = Twilio::Request.new('host',
|
6
|
-
'port',
|
7
|
-
'POST',
|
8
|
-
'url',
|
9
|
-
{ 'param-key' => 'param-value', 'param-keytwo' => 'param-valuetwo' },
|
10
|
-
{ 'data-key' => 'data-value', 'data-keytwo' => 'data-valuetwo' },
|
11
|
-
{ 'header-key' => 'header-value', 'header-keytwo' => 'header-valuetwo' },
|
12
|
-
['a', 'b'],
|
13
|
-
'timeout')
|
14
|
-
end
|
15
|
-
|
16
|
-
it 'should initialize readers correctly' do
|
17
|
-
expect(@request.host).to eq('host')
|
18
|
-
expect(@request.port).to eq('port')
|
19
|
-
expect(@request.method).to eq('POST')
|
20
|
-
expect(@request.url).to eq('url')
|
21
|
-
expect(@request.params).to eq('param-key' => 'param-value', 'param-keytwo' => 'param-valuetwo')
|
22
|
-
expect(@request.data).to eq('data-key' => 'data-value', 'data-keytwo' => 'data-valuetwo')
|
23
|
-
expect(@request.headers).to eq('header-key' => 'header-value', 'header-keytwo' => 'header-valuetwo')
|
24
|
-
expect(@request.auth).to eq(['a', 'b'])
|
25
|
-
expect(@request.timeout).to eq('timeout')
|
26
|
-
end
|
27
|
-
|
28
|
-
it 'should be represented correctly' do
|
29
|
-
expected_string = %((a,b) POST url?param-key=param-value¶m-keytwo=param-valuetwo) +
|
30
|
-
%(\n-d "data-key"="data-value") +
|
31
|
-
%(\n-d "data-keytwo"="data-valuetwo") +
|
32
|
-
%(\n-H "header-key": "header-value") +
|
33
|
-
%(\n-H "header-keytwo": "header-valuetwo")
|
34
|
-
expect(@request.to_s).to eq(expected_string)
|
35
|
-
end
|
36
|
-
end
|
@@ -1,80 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Twilio do
|
4
|
-
describe 'prefixed_collapsible_map' do
|
5
|
-
it 'should serialize nil' do
|
6
|
-
actual = Twilio.prefixed_collapsible_map(nil, 'Prefix')
|
7
|
-
expect(actual).to eq({})
|
8
|
-
end
|
9
|
-
|
10
|
-
it 'should serialize a single key' do
|
11
|
-
actual = Twilio.prefixed_collapsible_map({ 'foo' => 'bar' }, 'Prefix')
|
12
|
-
expect(actual).to eq('Prefix.foo' => 'bar')
|
13
|
-
end
|
14
|
-
|
15
|
-
it 'should serialize nested key' do
|
16
|
-
actual = Twilio.prefixed_collapsible_map({
|
17
|
-
'foo' => {
|
18
|
-
'bar' => 'baz'
|
19
|
-
}
|
20
|
-
}, 'Prefix')
|
21
|
-
expect(actual).to eq('Prefix.foo.bar' => 'baz')
|
22
|
-
end
|
23
|
-
|
24
|
-
it 'should serialize multiple keys' do
|
25
|
-
actual = Twilio.prefixed_collapsible_map({
|
26
|
-
'watson' => {
|
27
|
-
'language' => 'en',
|
28
|
-
'alice' => 'bob'
|
29
|
-
},
|
30
|
-
'foo' => 'bar'
|
31
|
-
}, 'Prefix')
|
32
|
-
expect(actual).to eq('Prefix.watson.language' => 'en',
|
33
|
-
'Prefix.watson.alice' => 'bob',
|
34
|
-
'Prefix.foo' => 'bar')
|
35
|
-
end
|
36
|
-
|
37
|
-
it 'should serialize list' do
|
38
|
-
actual = Twilio.prefixed_collapsible_map(['foo', 'bar'], 'Prefix')
|
39
|
-
expect(actual).to eq({})
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
describe 'serialize_object' do
|
44
|
-
it 'should jsonify hashes' do
|
45
|
-
actual = Twilio.serialize_object({ twilio: "rocks" })
|
46
|
-
expect(actual).to eq('{"twilio":"rocks"}')
|
47
|
-
end
|
48
|
-
|
49
|
-
it 'should jsonify arrays' do
|
50
|
-
actual = Twilio.serialize_object(["twilio", "rocks"])
|
51
|
-
expect(actual).to eq('["twilio","rocks"]')
|
52
|
-
end
|
53
|
-
|
54
|
-
it 'should not modify other types' do
|
55
|
-
actual = Twilio.serialize_object(123)
|
56
|
-
expect(actual).to eq(123)
|
57
|
-
end
|
58
|
-
end
|
59
|
-
|
60
|
-
describe 'serialize_list' do
|
61
|
-
it 'should only operate on things with .each method' do
|
62
|
-
actual = Twilio.serialize_list(nil)
|
63
|
-
expect(actual).to eq(nil)
|
64
|
-
|
65
|
-
actual = Twilio.serialize_list("something")
|
66
|
-
expect(actual).to eq("something")
|
67
|
-
|
68
|
-
actual = Twilio.serialize_list(1)
|
69
|
-
expect(actual).to eq(1)
|
70
|
-
|
71
|
-
actual = Twilio.serialize_list({ some_obj: 'some_val' })
|
72
|
-
expect(actual).to eq({ some_obj: 'some_val' })
|
73
|
-
end
|
74
|
-
|
75
|
-
it 'should apply block to every element in list' do
|
76
|
-
actual = Twilio.serialize_list([1, 2, 3, 4]) { |e| e * 2 }
|
77
|
-
expect(actual).to eq([2, 4, 6, 8])
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
@@ -1,219 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe 'Version Action Methods' do
|
4
|
-
it 'receives fetch responses' do
|
5
|
-
@holodeck.mock(
|
6
|
-
Twilio::Response.new(
|
7
|
-
200,
|
8
|
-
'{
|
9
|
-
"caller_name": null,
|
10
|
-
"carrier": null,
|
11
|
-
"fraud": null,
|
12
|
-
"add_ons": null,
|
13
|
-
"country_code": "US",
|
14
|
-
"national_format": "(510) 867-5310",
|
15
|
-
"phone_number": "+15108675310",
|
16
|
-
"url": "https://lookups.twilio.com/v1/PhoneNumbers/+15108675310"
|
17
|
-
}'
|
18
|
-
)
|
19
|
-
)
|
20
|
-
actual = @client.lookups.v1.phone_numbers('+15017122661').fetch(type: 'sms')
|
21
|
-
expect(actual).to_not eq(nil)
|
22
|
-
end
|
23
|
-
|
24
|
-
it 'handles redirect fetch responses' do
|
25
|
-
@holodeck.mock(
|
26
|
-
Twilio::Response.new(
|
27
|
-
307,
|
28
|
-
'{"phone_number": "+15108675310"}'
|
29
|
-
)
|
30
|
-
)
|
31
|
-
actual = @client.lookups.v1.phone_numbers('+15017122661').fetch
|
32
|
-
expect(actual).to_not eq(nil)
|
33
|
-
end
|
34
|
-
|
35
|
-
describe 'stream' do
|
36
|
-
before(:each) do
|
37
|
-
@holodeck.mock(
|
38
|
-
Twilio::Response.new(
|
39
|
-
200,
|
40
|
-
'{
|
41
|
-
"next_page_uri": "/2010-04-01/Accounts/AC123/Messages.json?Page=1",
|
42
|
-
"messages": [{"body": "payload0"}, {"body": "payload1"}]
|
43
|
-
}'
|
44
|
-
)
|
45
|
-
)
|
46
|
-
@holodeck.mock(
|
47
|
-
Twilio::Response.new(
|
48
|
-
200,
|
49
|
-
'{
|
50
|
-
"next_page_uri": "/2010-04-01/Accounts/AC123/Messages.json?Page=2",
|
51
|
-
"messages": [{"body": "payload2"}, {"body": "payload3"}]
|
52
|
-
}'
|
53
|
-
)
|
54
|
-
)
|
55
|
-
@holodeck.mock(
|
56
|
-
Twilio::Response.new(
|
57
|
-
200,
|
58
|
-
'{
|
59
|
-
"next_page_uri": null,
|
60
|
-
"messages": [{"body": "payload4"}]
|
61
|
-
}'
|
62
|
-
)
|
63
|
-
)
|
64
|
-
end
|
65
|
-
|
66
|
-
it 'streams all results' do
|
67
|
-
actual = @client.messages.stream
|
68
|
-
expect(actual.count).to eq(5)
|
69
|
-
end
|
70
|
-
|
71
|
-
it 'limits results' do
|
72
|
-
actual = @client.messages.stream(limit: 3)
|
73
|
-
expect(actual.count).to eq(3)
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
it 'receives create responses' do
|
78
|
-
@holodeck.mock(
|
79
|
-
Twilio::Response.new(
|
80
|
-
201,
|
81
|
-
'{
|
82
|
-
"auth_token": "auth_token",
|
83
|
-
"date_created": "Thu, 30 Jul 2015 20:00:00 +0000",
|
84
|
-
"date_updated": "Thu, 30 Jul 2015 20:00:00 +0000",
|
85
|
-
"friendly_name": "friendly_name",
|
86
|
-
"owner_account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
87
|
-
"sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
88
|
-
"status": "active",
|
89
|
-
"subresource_uris": {
|
90
|
-
"available_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AvailablePhoneNumbers.json",
|
91
|
-
"calls": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls.json",
|
92
|
-
"conferences": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json",
|
93
|
-
"incoming_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/IncomingPhoneNumbers.json",
|
94
|
-
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Notifications.json",
|
95
|
-
"outgoing_caller_ids": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json",
|
96
|
-
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
97
|
-
"transcriptions": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Transcriptions.json",
|
98
|
-
"addresses": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Addresses.json",
|
99
|
-
"signing_keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SigningKeys.json",
|
100
|
-
"connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/ConnectApps.json",
|
101
|
-
"sip": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SIP.json",
|
102
|
-
"authorized_connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AuthorizedConnectApps.json",
|
103
|
-
"usage": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Usage.json",
|
104
|
-
"keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Keys.json",
|
105
|
-
"applications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Applications.json",
|
106
|
-
"short_codes": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SMS/ShortCodes.json",
|
107
|
-
"queues": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Queues.json",
|
108
|
-
"messages": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Messages.json",
|
109
|
-
"balance": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Balance.json"
|
110
|
-
},
|
111
|
-
"type": "Full",
|
112
|
-
"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"
|
113
|
-
}'
|
114
|
-
)
|
115
|
-
)
|
116
|
-
actual = @client.api.v2010.accounts.create(friendly_name: 'friendly_name')
|
117
|
-
expect(actual).to_not eq(nil)
|
118
|
-
end
|
119
|
-
|
120
|
-
it 'receives update responses' do
|
121
|
-
@holodeck.mock(
|
122
|
-
Twilio::Response.new(
|
123
|
-
200,
|
124
|
-
'{
|
125
|
-
"auth_token": "auth_token",
|
126
|
-
"date_created": "Thu, 30 Jul 2015 20:00:00 +0000",
|
127
|
-
"date_updated": "Thu, 30 Jul 2015 20:00:00 +0000",
|
128
|
-
"friendly_name": "friendly_name",
|
129
|
-
"owner_account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
130
|
-
"sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
131
|
-
"status": "active",
|
132
|
-
"subresource_uris": {
|
133
|
-
"available_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AvailablePhoneNumbers.json",
|
134
|
-
"calls": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls.json",
|
135
|
-
"conferences": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json",
|
136
|
-
"incoming_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/IncomingPhoneNumbers.json",
|
137
|
-
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Notifications.json",
|
138
|
-
"outgoing_caller_ids": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json",
|
139
|
-
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
140
|
-
"transcriptions": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Transcriptions.json",
|
141
|
-
"addresses": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Addresses.json",
|
142
|
-
"signing_keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SigningKeys.json",
|
143
|
-
"connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/ConnectApps.json",
|
144
|
-
"sip": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SIP.json",
|
145
|
-
"authorized_connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AuthorizedConnectApps.json",
|
146
|
-
"usage": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Usage.json",
|
147
|
-
"keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Keys.json",
|
148
|
-
"applications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Applications.json",
|
149
|
-
"short_codes": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SMS/ShortCodes.json",
|
150
|
-
"queues": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Queues.json",
|
151
|
-
"messages": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Messages.json",
|
152
|
-
"balance": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Balance.json"
|
153
|
-
},
|
154
|
-
"type": "Full",
|
155
|
-
"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"
|
156
|
-
}'
|
157
|
-
)
|
158
|
-
)
|
159
|
-
actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').update(friendly_name: 'friendly_name')
|
160
|
-
expect(actual).to_not eq(nil)
|
161
|
-
end
|
162
|
-
|
163
|
-
it 'receives read_full responses' do
|
164
|
-
@holodeck.mock(
|
165
|
-
Twilio::Response.new(
|
166
|
-
200,
|
167
|
-
'{
|
168
|
-
"first_page_uri": "/2010-04-01/Accounts.json?FriendlyName=friendly_name&Status=active&PageSize=50&Page=0",
|
169
|
-
"end": 0,
|
170
|
-
"previous_page_uri": null,
|
171
|
-
"accounts": [
|
172
|
-
{
|
173
|
-
"auth_token": "auth_token",
|
174
|
-
"date_created": "Thu, 30 Jul 2015 20:00:00 +0000",
|
175
|
-
"date_updated": "Thu, 30 Jul 2015 20:00:00 +0000",
|
176
|
-
"friendly_name": "friendly_name",
|
177
|
-
"owner_account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
178
|
-
"sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
179
|
-
"status": "active",
|
180
|
-
"subresource_uris": {
|
181
|
-
"available_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AvailablePhoneNumbers.json",
|
182
|
-
"calls": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls.json",
|
183
|
-
"conferences": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json",
|
184
|
-
"incoming_phone_numbers": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/IncomingPhoneNumbers.json",
|
185
|
-
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Notifications.json",
|
186
|
-
"outgoing_caller_ids": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json",
|
187
|
-
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
188
|
-
"transcriptions": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Transcriptions.json",
|
189
|
-
"addresses": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Addresses.json",
|
190
|
-
"signing_keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SigningKeys.json",
|
191
|
-
"connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/ConnectApps.json",
|
192
|
-
"sip": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SIP.json",
|
193
|
-
"authorized_connect_apps": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/AuthorizedConnectApps.json",
|
194
|
-
"usage": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Usage.json",
|
195
|
-
"keys": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Keys.json",
|
196
|
-
"applications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Applications.json",
|
197
|
-
"short_codes": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SMS/ShortCodes.json",
|
198
|
-
"queues": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Queues.json",
|
199
|
-
"messages": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Messages.json",
|
200
|
-
"balance": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Balance.json"
|
201
|
-
},
|
202
|
-
"type": "Full",
|
203
|
-
"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"
|
204
|
-
}
|
205
|
-
],
|
206
|
-
"uri": "/2010-04-01/Accounts.json?FriendlyName=friendly_name&Status=active&PageSize=50&Page=0",
|
207
|
-
"page_size": 50,
|
208
|
-
"start": 0,
|
209
|
-
"next_page_uri": null,
|
210
|
-
"page": 0
|
211
|
-
}'
|
212
|
-
)
|
213
|
-
)
|
214
|
-
|
215
|
-
actual = @client.api.v2010.accounts.list(friendly_name: 'friendly_name')
|
216
|
-
|
217
|
-
expect(actual).to_not eq(nil)
|
218
|
-
end
|
219
|
-
end
|
data/spec/holodeck/holodeck.rb
DELETED
@@ -1,66 +0,0 @@
|
|
1
|
-
require 'base64'
|
2
|
-
|
3
|
-
class Holodeck
|
4
|
-
attr_accessor :host, :port
|
5
|
-
|
6
|
-
class Request
|
7
|
-
attr_reader :method, :url, :auth, :params, :data, :headers, :any
|
8
|
-
|
9
|
-
def initialize(method: nil, url: nil, auth: nil, params: {}, data: {}, headers: {}, any: false)
|
10
|
-
@method = method
|
11
|
-
@url = url
|
12
|
-
@auth = auth
|
13
|
-
@params = params
|
14
|
-
@data = data
|
15
|
-
@headers = headers
|
16
|
-
@any = any
|
17
|
-
end
|
18
|
-
|
19
|
-
def any?
|
20
|
-
@any
|
21
|
-
end
|
22
|
-
|
23
|
-
def ==(other)
|
24
|
-
if method.casecmp(other.method.upcase).zero? &&
|
25
|
-
url == other.url &&
|
26
|
-
params == other.params &&
|
27
|
-
data == other.data
|
28
|
-
other.headers.each do |h, value|
|
29
|
-
return false unless headers[h] == value
|
30
|
-
end
|
31
|
-
true
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
def to_s
|
36
|
-
"#<Holodeck::Request method:#{method} url:#{url} params:#{params} data:#{data} headers:#{headers}>"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
ANY = Request.new(any: true)
|
41
|
-
|
42
|
-
def initialize
|
43
|
-
@responses = []
|
44
|
-
@requests = []
|
45
|
-
end
|
46
|
-
|
47
|
-
def mock(response)
|
48
|
-
@responses << response
|
49
|
-
end
|
50
|
-
|
51
|
-
def request(host, port, method, url, params = {}, data = {}, headers = {}, auth = nil, _timeout = nil)
|
52
|
-
@requests << Request.new(
|
53
|
-
method: method,
|
54
|
-
url: url,
|
55
|
-
params: params,
|
56
|
-
data: data,
|
57
|
-
headers: headers,
|
58
|
-
auth: auth
|
59
|
-
)
|
60
|
-
@responses.shift
|
61
|
-
end
|
62
|
-
|
63
|
-
def has_request?(request)
|
64
|
-
@requests.include?(request)
|
65
|
-
end
|
66
|
-
end
|
data/spec/holodeck/hologram.rb
DELETED
@@ -1,122 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'rack/mock'
|
3
|
-
|
4
|
-
describe Twilio::HTTP::Client do
|
5
|
-
before do
|
6
|
-
@client = Twilio::HTTP::Client.new
|
7
|
-
end
|
8
|
-
|
9
|
-
it 'should allow setting a global timeout' do
|
10
|
-
@client = Twilio::HTTP::Client.new(timeout: 10)
|
11
|
-
@connection = Faraday::Connection.new
|
12
|
-
|
13
|
-
expect(Faraday).to receive(:new).and_yield(@connection).and_return(@connection)
|
14
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 301, body: {}, headers: {}))
|
15
|
-
|
16
|
-
@client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b'])
|
17
|
-
|
18
|
-
expect(@client.timeout).to eq(10)
|
19
|
-
expect(@connection.options.open_timeout).to eq(10)
|
20
|
-
expect(@connection.options.timeout).to eq(10)
|
21
|
-
end
|
22
|
-
|
23
|
-
it 'should allow overriding timeout per request' do
|
24
|
-
@client = Twilio::HTTP::Client.new(timeout: 10)
|
25
|
-
@connection = Faraday::Connection.new
|
26
|
-
|
27
|
-
expect(Faraday).to receive(:new).and_yield(@connection).and_return(@connection)
|
28
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 301, body: {}, headers: {}))
|
29
|
-
|
30
|
-
@client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b'], 20)
|
31
|
-
|
32
|
-
expect(@client.timeout).to eq(10)
|
33
|
-
expect(@connection.options.open_timeout).to eq(20)
|
34
|
-
expect(@connection.options.timeout).to eq(20)
|
35
|
-
end
|
36
|
-
|
37
|
-
it 'should contain a last response' do
|
38
|
-
expect(Faraday).to receive(:new).and_return(Faraday::Connection.new)
|
39
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 301, body: {}, headers: { something: '1' }))
|
40
|
-
|
41
|
-
@client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b'])
|
42
|
-
|
43
|
-
expect(@client.last_response).to_not be_nil
|
44
|
-
expect(@client.last_response.is_a?(Twilio::Response)).to be(true)
|
45
|
-
expect(@client.last_response.status_code).to eq(301)
|
46
|
-
expect(@client.last_response.headers).to eq(something: '1')
|
47
|
-
end
|
48
|
-
|
49
|
-
it 'should contain a last request' do
|
50
|
-
expect(Faraday).to receive(:new).and_return(Faraday::Connection.new)
|
51
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 301, body: {}, headers: {}))
|
52
|
-
|
53
|
-
@client.request('host',
|
54
|
-
'port',
|
55
|
-
'GET',
|
56
|
-
'url',
|
57
|
-
{ 'param-key' => 'param-value' },
|
58
|
-
{ 'data-key' => 'data-value' },
|
59
|
-
{ 'header-key' => 'header-value' },
|
60
|
-
['a', 'b'],
|
61
|
-
'timeout')
|
62
|
-
|
63
|
-
expect(@client.last_request).to_not be_nil
|
64
|
-
expect(@client.last_request.is_a?(Twilio::Request)).to be(true)
|
65
|
-
expect(@client.last_request.host).to eq('host')
|
66
|
-
expect(@client.last_request.port).to eq('port')
|
67
|
-
expect(@client.last_request.method).to eq('GET')
|
68
|
-
expect(@client.last_request.url).to eq('url')
|
69
|
-
expect(@client.last_request.params).to eq('param-key' => 'param-value')
|
70
|
-
expect(@client.last_request.data).to eq('data-key' => 'data-value')
|
71
|
-
expect(@client.last_request.headers).to eq('header-key' => 'header-value')
|
72
|
-
expect(@client.last_request.auth).to eq(['a', 'b'])
|
73
|
-
expect(@client.last_request.timeout).to eq('timeout')
|
74
|
-
end
|
75
|
-
|
76
|
-
it 'should contain a last response for 5XX status classes' do
|
77
|
-
expect(Faraday).to receive(:new).and_return(Faraday::Connection.new)
|
78
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 500, body: {}, headers: {}))
|
79
|
-
|
80
|
-
@client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b'])
|
81
|
-
expect(@client.last_response).to_not be_nil
|
82
|
-
expect(@client.last_request.host).to eq('host')
|
83
|
-
expect(@client.last_request.port).to eq('port')
|
84
|
-
expect(@client.last_request.method).to eq('GET')
|
85
|
-
expect(@client.last_request.url).to eq('url')
|
86
|
-
expect(@client.last_request.params).to be_nil
|
87
|
-
expect(@client.last_request.data).to be_nil
|
88
|
-
expect(@client.last_request.headers).to eq({})
|
89
|
-
expect(@client.last_request.auth).to eq(['a', 'b'])
|
90
|
-
expect(@client.last_request.timeout).to be_nil
|
91
|
-
expect(@client.last_response.is_a?(Twilio::Response)).to be(true)
|
92
|
-
expect(@client.last_response.status_code).to eq(500)
|
93
|
-
end
|
94
|
-
|
95
|
-
it 'should contain a last_response but no response on a connection error' do
|
96
|
-
expect(Faraday).to receive(:new).and_return(Faraday::Connection.new)
|
97
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_raise(Faraday::ConnectionFailed.new('BOOM'))
|
98
|
-
|
99
|
-
expect { @client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b']) }.to raise_exception(Twilio::REST::TwilioError)
|
100
|
-
expect(@client.last_response).to be_nil
|
101
|
-
expect(@client.last_request).to_not be_nil
|
102
|
-
expect(@client.last_request.host).to eq('host')
|
103
|
-
expect(@client.last_request.port).to eq('port')
|
104
|
-
expect(@client.last_request.method).to eq('GET')
|
105
|
-
expect(@client.last_request.url).to eq('url')
|
106
|
-
expect(@client.last_request.params).to be_nil
|
107
|
-
expect(@client.last_request.data).to be_nil
|
108
|
-
expect(@client.last_request.headers).to eq({})
|
109
|
-
expect(@client.last_request.auth).to eq(['a', 'b'])
|
110
|
-
expect(@client.last_request.timeout).to be_nil
|
111
|
-
end
|
112
|
-
|
113
|
-
describe 'last_response' do
|
114
|
-
let(:last_response) { Twilio::Response.new(200, 'body') }
|
115
|
-
end
|
116
|
-
it 'previous last_response should be cleared' do
|
117
|
-
expect(Faraday).to receive(:new).and_return(Faraday::Connection.new)
|
118
|
-
allow_any_instance_of(Faraday::Connection).to receive(:send).and_raise(Faraday::ConnectionFailed.new('BOOM'))
|
119
|
-
expect { @client.request('host', 'port', 'GET', 'url', nil, nil, {}, ['a', 'b']) }.to raise_exception(Twilio::REST::TwilioError)
|
120
|
-
expect(@client.last_response).to be_nil
|
121
|
-
end
|
122
|
-
end
|