Skip to content

Commit 6719e10

Browse files
committed
Adding from validations to SMS and WhatsApp channels
1 parent fe52ed9 commit 6719e10

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

lib/vonage/verify2/channels/sms.rb

+10
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ def to=(to)
2020
end
2121

2222
def from=(from)
23+
validate_from(from)
2324
@from = from
2425
end
2526

@@ -49,5 +50,14 @@ def to_h
4950
private
5051

5152
attr_writer :channel
53+
54+
def validate_from(from)
55+
if from.match?(/\D/)
56+
raise ArgumentError, "Invalid alpha-numeric 'from' value #{from}. Length must be between 3 and 11 characters." unless from.length.between?(3, 11)
57+
else
58+
raise ArgumentError, "Invalid numeric 'from' value #{from}. Length must be between 11 and 15 characters." unless from.length.between?(11, 15)
59+
raise ArgumentError, "Invalid 'from' value #{from}. Expected to be in E.164 format" unless Phonelib.parse(from).valid?
60+
end
61+
end
5262
end
5363
end

lib/vonage/verify2/channels/whats_app.rb

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ def to=(to)
1919
end
2020

2121
def from=(from)
22+
raise ArgumentError, "Invalid 'from' value #{from}. Length must be between 11 and 15 characters." unless from.length.between?(11, 15)
2223
raise ArgumentError, "Invalid 'from' value #{from}. Expected to be in E.164 format" unless Phonelib.parse(from.to_i).valid?
2324
@from = from
2425
end

0 commit comments

Comments
 (0)