twilio-ruby 5.3.1 → 5.4.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 (48) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +17 -0
  3. data/README.md +2 -2
  4. data/lib/rack/twilio_webhook_authentication.rb +46 -0
  5. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +10 -1
  6. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +10 -1
  7. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +10 -1
  8. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +22 -3
  9. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +3 -1
  10. data/lib/twilio-ruby/rest/client.rb +7 -0
  11. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +417 -0
  12. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +8 -7
  13. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +16 -0
  14. data/lib/twilio-ruby/rest/preview.rb +9 -0
  15. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +384 -0
  16. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +456 -0
  17. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +465 -0
  18. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +541 -0
  19. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +578 -0
  20. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +377 -0
  21. data/lib/twilio-ruby/rest/proxy/v1/service.rb +509 -0
  22. data/lib/twilio-ruby/rest/proxy/v1.rb +41 -0
  23. data/lib/twilio-ruby/rest/proxy.rb +44 -0
  24. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +7 -0
  25. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  26. data/lib/twilio-ruby/twiml/messaging_response.rb +5 -5
  27. data/lib/twilio-ruby/twiml/voice_response.rb +9 -7
  28. data/lib/twilio-ruby/util/configuration.rb +0 -3
  29. data/lib/twilio-ruby/version.rb +1 -1
  30. data/lib/twilio-ruby.rb +1 -0
  31. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +2 -0
  32. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +2 -0
  33. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +2 -0
  34. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +4 -0
  35. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +211 -0
  36. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +35 -4
  37. data/spec/integration/proxy/v1/service/phone_number_spec.rb +176 -0
  38. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +104 -0
  39. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +164 -0
  40. data/spec/integration/proxy/v1/service/session/participant_spec.rb +232 -0
  41. data/spec/integration/proxy/v1/service/session_spec.rb +225 -0
  42. data/spec/integration/proxy/v1/service/short_code_spec.rb +173 -0
  43. data/spec/integration/proxy/v1/service_spec.rb +200 -0
  44. data/spec/integration/wireless/v1/sim_spec.rb +6 -3
  45. data/spec/rack/twilio_webhook_authentication_spec.rb +106 -0
  46. data/spec/security/request_validator_spec.rb +28 -0
  47. data/spec/twiml/messaging_response_spec.rb +6 -6
  48. metadata +31 -2
@@ -1,6 +1,34 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Twilio::Security::RequestValidator do
4
+ describe 'configuration' do
5
+ after(:each) do
6
+ Twilio.instance_variable_set('@configuration', nil)
7
+ end
8
+
9
+ it 'should set the auth token from a configuration block' do
10
+ Twilio.configure do |config|
11
+ config.auth_token = 'someToken'
12
+ end
13
+
14
+ validator = Twilio::Security::RequestValidator.new
15
+ expect(validator.instance_variable_get('@auth_token')).to eq('someToken')
16
+ end
17
+
18
+ it 'should overwrite the auth token if passed to initializer' do
19
+ Twilio.configure do |config|
20
+ config.auth_token = 'someToken'
21
+ end
22
+
23
+ validator = Twilio::Security::RequestValidator.new 'otherToken'
24
+ expect(validator.instance_variable_get('@auth_token')).to eq('otherToken')
25
+ end
26
+
27
+ it 'should throw an argument error if the auth token isn\'t set' do
28
+ expect { Twilio::Security::RequestValidator.new }.to raise_error(ArgumentError)
29
+ end
30
+ end
31
+
4
32
  describe 'validations' do
5
33
  let(:token) { '2bd9e9638872de601313dc77410d3b23' }
6
34
 
@@ -14,21 +14,21 @@ describe Twilio::TwiML::MessagingResponse do
14
14
 
15
15
  it 'should allow populated response' do
16
16
  r = Twilio::TwiML::MessagingResponse.new
17
- r.message(message: 'Hello')
17
+ r.message(body: 'Hello')
18
18
  r.redirect('example.com')
19
19
 
20
20
  expect(r.to_s).to eq('<?xml version="1.0" encoding="UTF-8"?><Response><Message>Hello</Message><Redirect>example.com</Redirect></Response>')
21
21
  end
22
22
 
23
23
  it 'should allow chaining' do
24
- r = Twilio::TwiML::MessagingResponse.new.message(message: 'Hello').redirect('example.com')
24
+ r = Twilio::TwiML::MessagingResponse.new.message(body: 'Hello').redirect('example.com')
25
25
 
26
26
  expect(r.to_s).to eq('<?xml version="1.0" encoding="UTF-8"?><Response><Message>Hello</Message><Redirect>example.com</Redirect></Response>')
27
27
  end
28
28
 
29
29
  it 'should allow nesting' do
30
30
  r = Twilio::TwiML::MessagingResponse.new
31
- r.message(message: 'Hello') do |m|
31
+ r.message(body: 'Hello') do |m|
32
32
  m.media('foobar')
33
33
  end
34
34
 
@@ -37,7 +37,7 @@ describe Twilio::TwiML::MessagingResponse do
37
37
 
38
38
  it 'should allow nesting and chaining' do
39
39
  r = Twilio::TwiML::MessagingResponse.new
40
- r.message(message: 'Hello') do |m|
40
+ r.message(body: 'Hello') do |m|
41
41
  m.media('foobar')
42
42
  end
43
43
 
@@ -48,7 +48,7 @@ describe Twilio::TwiML::MessagingResponse do
48
48
 
49
49
  it 'should allow nesting from the initializer' do
50
50
  response = Twilio::TwiML::MessagingResponse.new do |r|
51
- r.message(message: 'Hello')
51
+ r.message(body: 'Hello')
52
52
  r.redirect('example.com')
53
53
  end
54
54
  expect(response.to_s).to eq('<?xml version="1.0" encoding="UTF-8"?><Response><Message>Hello</Message><Redirect>example.com</Redirect></Response>')
@@ -58,7 +58,7 @@ describe Twilio::TwiML::MessagingResponse do
58
58
  context 'Testing Message' do
59
59
  it 'should allow a body' do
60
60
  r = Twilio::TwiML::MessagingResponse.new
61
- r.message(message: 'Hello')
61
+ r.message(body: 'Hello')
62
62
 
63
63
  expect(r.to_s).to eq('<?xml version="1.0" encoding="UTF-8"?><Response><Message>Hello</Message></Response>')
64
64
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twilio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.3.1
4
+ version: 5.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twilio API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-06 00:00:00.000000000 Z
11
+ date: 2017-10-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: libxml-ruby
@@ -128,6 +128,7 @@ files:
128
128
  - examples/examples.rb
129
129
  - examples/print_call_log.rb
130
130
  - githooks/pre-commit
131
+ - lib/rack/twilio_webhook_authentication.rb
131
132
  - lib/twilio-ruby.rb
132
133
  - lib/twilio-ruby/framework/domain.rb
133
134
  - lib/twilio-ruby/framework/error.rb
@@ -299,6 +300,7 @@ files:
299
300
  - lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb
300
301
  - lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb
301
302
  - lib/twilio-ruby/rest/preview/hosted_numbers.rb
303
+ - lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb
302
304
  - lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb
303
305
  - lib/twilio-ruby/rest/preview/marketplace.rb
304
306
  - lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb
@@ -337,6 +339,15 @@ files:
337
339
  - lib/twilio-ruby/rest/pricing/v1/voice.rb
338
340
  - lib/twilio-ruby/rest/pricing/v1/voice/country.rb
339
341
  - lib/twilio-ruby/rest/pricing/v1/voice/number.rb
342
+ - lib/twilio-ruby/rest/proxy.rb
343
+ - lib/twilio-ruby/rest/proxy/v1.rb
344
+ - lib/twilio-ruby/rest/proxy/v1/service.rb
345
+ - lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb
346
+ - lib/twilio-ruby/rest/proxy/v1/service/session.rb
347
+ - lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb
348
+ - lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb
349
+ - lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb
350
+ - lib/twilio-ruby/rest/proxy/v1/service/short_code.rb
340
351
  - lib/twilio-ruby/rest/sync.rb
341
352
  - lib/twilio-ruby/rest/sync/v1.rb
342
353
  - lib/twilio-ruby/rest/sync/v1/service.rb
@@ -536,6 +547,7 @@ files:
536
547
  - spec/integration/preview/deployed_devices/fleet/device_spec.rb
537
548
  - spec/integration/preview/deployed_devices/fleet/key_spec.rb
538
549
  - spec/integration/preview/deployed_devices/fleet_spec.rb
550
+ - spec/integration/preview/hosted_numbers/authorization_document_spec.rb
539
551
  - spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb
540
552
  - spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb
541
553
  - spec/integration/preview/marketplace/available_add_on_spec.rb
@@ -568,6 +580,13 @@ files:
568
580
  - spec/integration/pricing/v1/voice/country_spec.rb
569
581
  - spec/integration/pricing/v1/voice/number_spec.rb
570
582
  - spec/integration/pricing/v1/voice_spec.rb
583
+ - spec/integration/proxy/v1/service/phone_number_spec.rb
584
+ - spec/integration/proxy/v1/service/session/interaction_spec.rb
585
+ - spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb
586
+ - spec/integration/proxy/v1/service/session/participant_spec.rb
587
+ - spec/integration/proxy/v1/service/session_spec.rb
588
+ - spec/integration/proxy/v1/service/short_code_spec.rb
589
+ - spec/integration/proxy/v1/service_spec.rb
571
590
  - spec/integration/sync/v1/service/document/document_permission_spec.rb
572
591
  - spec/integration/sync/v1/service/document_spec.rb
573
592
  - spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb
@@ -620,6 +639,7 @@ files:
620
639
  - spec/jwt/access_token_spec.rb
621
640
  - spec/jwt/client_capability_spec.rb
622
641
  - spec/jwt/task_router_spec.rb
642
+ - spec/rack/twilio_webhook_authentication_spec.rb
623
643
  - spec/rest/client_spec.rb
624
644
  - spec/security/request_validator_spec.rb
625
645
  - spec/spec_helper.rb
@@ -795,6 +815,7 @@ test_files:
795
815
  - spec/integration/preview/deployed_devices/fleet/device_spec.rb
796
816
  - spec/integration/preview/deployed_devices/fleet/key_spec.rb
797
817
  - spec/integration/preview/deployed_devices/fleet_spec.rb
818
+ - spec/integration/preview/hosted_numbers/authorization_document_spec.rb
798
819
  - spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb
799
820
  - spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb
800
821
  - spec/integration/preview/marketplace/available_add_on_spec.rb
@@ -827,6 +848,13 @@ test_files:
827
848
  - spec/integration/pricing/v1/voice/country_spec.rb
828
849
  - spec/integration/pricing/v1/voice/number_spec.rb
829
850
  - spec/integration/pricing/v1/voice_spec.rb
851
+ - spec/integration/proxy/v1/service/phone_number_spec.rb
852
+ - spec/integration/proxy/v1/service/session/interaction_spec.rb
853
+ - spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb
854
+ - spec/integration/proxy/v1/service/session/participant_spec.rb
855
+ - spec/integration/proxy/v1/service/session_spec.rb
856
+ - spec/integration/proxy/v1/service/short_code_spec.rb
857
+ - spec/integration/proxy/v1/service_spec.rb
830
858
  - spec/integration/sync/v1/service/document/document_permission_spec.rb
831
859
  - spec/integration/sync/v1/service/document_spec.rb
832
860
  - spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb
@@ -879,6 +907,7 @@ test_files:
879
907
  - spec/jwt/access_token_spec.rb
880
908
  - spec/jwt/client_capability_spec.rb
881
909
  - spec/jwt/task_router_spec.rb
910
+ - spec/rack/twilio_webhook_authentication_spec.rb
882
911
  - spec/rest/client_spec.rb
883
912
  - spec/security/request_validator_spec.rb
884
913
  - spec/spec_helper.rb