mblox 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/mblox.rb +1 -0
- data/lib/mblox/sms.rb +2 -0
- data/lib/mblox/version.rb +1 -1
- data/spec/sms_spec.rb +8 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
OWEwYTcwMzU3ODdiNGNhOWQ3MmUxODcwMDMxMjU0ZjNlM2FlNTA1MA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YzhjMDQ3MWI2Zjk0YTJjMjg2MGQ2ZWUyMGU4MDlkZTY2ODg4YzI1Yg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MDU5YTVhMmNkOGY4ZWFjMTZjMTQxNTdjNzNjNDgxNWFkNTM2ZGMyZjI1ODNl
|
10
|
+
ZWMwMzJmZmNiNzY2NmFmZTIyZmQxNzMxMDY1Mzg2NDFlODBmYTNmYjg5YzRk
|
11
|
+
NDNlNmU4ZjEzZjcwNWU1MDdiZGIxZmM1YmRmZDNiYWQ2OTFkNGI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
OGEwZDk5NDQ0ODk2MjI5M2UxZDA0MGJjZjg2YzE1MDE1MDAzMTU5NmQ0ODU0
|
14
|
+
MTJmMmQ1NmY2NGIwMzA2NDAyOWVlMzVjNWVlNzczNTkxZjVmYmQwOWVkOWEz
|
15
|
+
NjBlMjQwNWM1MGRhZjI1M2ZiNmExZWYzOGIzNWRjNmViOTVkNzc=
|
data/lib/mblox.rb
CHANGED
data/lib/mblox/sms.rb
CHANGED
@@ -9,6 +9,7 @@ module Mblox
|
|
9
9
|
class Sms
|
10
10
|
class InvalidPhoneNumberError < ::ArgumentError; end
|
11
11
|
class InvalidMessageError < ::ArgumentError; end
|
12
|
+
class BatchIdOutOfRangeError < ::ArgumentError; end
|
12
13
|
MAX_LENGTH = 160
|
13
14
|
MAX_SECTION_LENGTH = MAX_LENGTH - "(MSG XXX/XXX): ".size
|
14
15
|
ILLEGAL_CHARACTERS = /([^a-zA-Z0-9!"#$\%&'\(\)*+,-.\/:;<=>?@_£¤¥§¿i¡ÄÅÆÇÉÑÖØÜßáäåæèéìñòöøùü\n\r\tí ])/
|
@@ -31,6 +32,7 @@ module Mblox
|
|
31
32
|
Mblox.log "WARNING: Some characters may be lost because the message must be broken into at least 1000 sections" if message.size > (999 * MAX_SECTION_LENGTH)
|
32
33
|
@message = (message.size > MAX_LENGTH) ? ON_MESSAGE_TOO_LONG_HANDLER[Mblox.config.on_message_too_long].call(message) : [message.dup]
|
33
34
|
@phone = "1#{phone}"
|
35
|
+
raise BatchIdOutOfRangeError, "batch_id must be in the range 1 to #{MAX_BATCH_ID}. The batch_id specified (#{batch_id}) is out of range." if batch_id && (MAX_BATCH_ID < batch_id.to_i)
|
34
36
|
@batch_id = batch_id.to_i unless batch_id.blank?
|
35
37
|
end
|
36
38
|
|
data/lib/mblox/version.rb
CHANGED
data/spec/sms_spec.rb
CHANGED
@@ -163,5 +163,13 @@ describe Mblox::Sms do
|
|
163
163
|
content = Hash.from_xml(sms.build_for_test(the_message))
|
164
164
|
content['NotificationRequest']['NotificationList']['BatchID'].should eq('1')
|
165
165
|
end
|
166
|
+
|
167
|
+
it "can be 99999999" do
|
168
|
+
expect{Mblox::Sms.new(LANDLINE,the_message, 99999999)}.to_not raise_error
|
169
|
+
end
|
170
|
+
|
171
|
+
it "cannot be 100000000" do
|
172
|
+
expect{Mblox::Sms.new(LANDLINE,the_message, 100000000)}.to raise_error(Mblox::Sms::BatchIdOutOfRangeError, 'batch_id must be in the range 1 to 99999999. The batch_id specified (100000000) is out of range.')
|
173
|
+
end
|
166
174
|
end
|
167
175
|
end
|