From 9440943fd7b7f180bccb301ab1b77652d481b2da Mon Sep 17 00:00:00 2001 From: superchilled Date: Wed, 24 Aug 2022 12:40:44 +0100 Subject: [PATCH 1/2] Adding blacklist tests --- test/vonage/verify_test.rb | 66 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/test/vonage/verify_test.rb b/test/vonage/verify_test.rb index cca347fe..efa50099 100644 --- a/test/vonage/verify_test.rb +++ b/test/vonage/verify_test.rb @@ -24,6 +24,27 @@ def error_response } end + def error_response_blacklist_with_network + { + headers: response_headers, + body: '{"status":"7","error_text":"The number you are trying to verify is blacklisted for verification","network":"25503"}' + } + end + + def error_response_blacklist_with_request_id + { + headers: response_headers, + body: '{"request_id":"","status":"7","error_text":"The number you are trying to verify is blacklisted for verification"}' + } + end + + def error_response_blacklist_with_network_and_request_id + { + headers: response_headers, + body: '{"request_id":"8g88g88eg8g8gg9g90","status":"7","error_text":"The number you are trying to verify is blacklisted for verification","network":"25503"}' + } + end + def test_request_method uri = 'https://api.nexmo.com/verify/json' @@ -142,4 +163,49 @@ def test_psd2_method assert_kind_of Vonage::Error, error assert_kind_of Vonage::Response, error.response end + + def test_blacklist_error_with_network + uri = 'https://api.nexmo.com/verify/json' + + params = {number: msisdn, brand: 'ExampleApp'} + + stub_request(:post, uri).with(headers: headers, body: params.merge(api_key_and_secret)).to_return(error_response_blacklist_with_network) + + error = assert_raises Vonage::ServiceError do + verify.request(params) + end + + assert_kind_of Vonage::Error, error + assert_kind_of Vonage::Response, error.response + end + + def test_blacklist_error_with_request_id + uri = 'https://api.nexmo.com/verify/json' + + params = {number: msisdn, brand: 'ExampleApp'} + + stub_request(:post, uri).with(headers: headers, body: params.merge(api_key_and_secret)).to_return(error_response_blacklist_with_request_id) + + error = assert_raises Vonage::ServiceError do + verify.request(params) + end + + assert_kind_of Vonage::Error, error + assert_kind_of Vonage::Response, error.response + end + + def test_blacklist_error_with_network_and_request_id + uri = 'https://api.nexmo.com/verify/json' + + params = {number: msisdn, brand: 'ExampleApp'} + + stub_request(:post, uri).with(headers: headers, body: params.merge(api_key_and_secret)).to_return(error_response_blacklist_with_network_and_request_id) + + error = assert_raises Vonage::ServiceError do + verify.request(params) + end + + assert_kind_of Vonage::Error, error + assert_kind_of Vonage::Response, error.response + end end From 5973806586bcdc1d5160c8b26f133d81830a3eae Mon Sep 17 00:00:00 2001 From: superchilled Date: Wed, 24 Aug 2022 12:55:43 +0100 Subject: [PATCH 2/2] Adding request id value in error response --- test/vonage/verify_test.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/vonage/verify_test.rb b/test/vonage/verify_test.rb index efa50099..f69ec99d 100644 --- a/test/vonage/verify_test.rb +++ b/test/vonage/verify_test.rb @@ -34,7 +34,7 @@ def error_response_blacklist_with_network def error_response_blacklist_with_request_id { headers: response_headers, - body: '{"request_id":"","status":"7","error_text":"The number you are trying to verify is blacklisted for verification"}' + body: '{"request_id":"8g88g88eg8g8gg9g90","status":"7","error_text":"The number you are trying to verify is blacklisted for verification"}' } end