Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 33 additions & 33 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
PATH
remote: .
specs:
esendex (0.6.0)
esendex (0.6.1)
nestful (~> 0.0.8)
nokogiri (~> 1.6.8.1)
nokogiri (~> 1.8)

GEM
remote: http://rubygems.org/
Expand Down Expand Up @@ -44,9 +44,9 @@ GEM
concurrent-ruby (1.0.5)
diff-lcs (1.3)
erubis (2.7.0)
ffi (1.9.21)
ffi (1.9.21-x64-mingw32)
ffi (1.9.21-x86-mingw32)
ffi (1.9.25)
ffi (1.9.25-x64-mingw32)
ffi (1.9.25-x86-mingw32)
formatador (0.2.5)
growl (1.0.3)
guard (2.14.2)
Expand All @@ -69,22 +69,22 @@ GEM
listen (3.0.8)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
lumberjack (1.0.12)
lumberjack (1.0.13)
mail (2.7.0)
mini_mime (>= 0.1.1)
method_source (0.9.0)
mini_mime (1.0.0)
mini_portile2 (2.1.0)
mini_mime (1.0.1)
mini_portile2 (2.3.0)
minitest (5.11.3)
nenv (0.3.0)
nestful (0.0.8)
activesupport (>= 3.0.0.beta)
nokogiri (1.6.8.1)
mini_portile2 (~> 2.1.0)
nokogiri (1.6.8.1-x64-mingw32)
mini_portile2 (~> 2.1.0)
nokogiri (1.6.8.1-x86-mingw32)
mini_portile2 (~> 2.1.0)
nokogiri (1.8.4)
mini_portile2 (~> 2.3.0)
nokogiri (1.8.4-x64-mingw32)
mini_portile2 (~> 2.3.0)
nokogiri (1.8.4-x86-mingw32)
mini_portile2 (~> 2.3.0)
notiffany (0.1.1)
nenv (~> 0.1)
shellany (~> 0.0)
Expand Down Expand Up @@ -112,34 +112,34 @@ GEM
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rake (12.2.1)
rb-fsevent (0.10.2)
rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
rspec (3.7.0)
rspec-core (~> 3.7.0)
rspec-expectations (~> 3.7.0)
rspec-mocks (~> 3.7.0)
rspec (3.8.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-collection_matchers (1.1.3)
rspec-expectations (>= 2.99.0.beta1)
rspec-core (3.7.1)
rspec-support (~> 3.7.0)
rspec-expectations (3.7.0)
rspec-core (3.8.0)
rspec-support (~> 3.8.0)
rspec-expectations (3.8.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-mocks (3.7.0)
rspec-support (~> 3.8.0)
rspec-mocks (3.8.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-rails (3.7.2)
rspec-support (~> 3.8.0)
rspec-rails (3.8.0)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 3.7.0)
rspec-expectations (~> 3.7.0)
rspec-mocks (~> 3.7.0)
rspec-support (~> 3.7.0)
rspec-support (3.7.1)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-support (~> 3.8.0)
rspec-support (3.8.0)
shellany (0.0.1)
sprockets (3.7.1)
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (2.3.3)
Expand Down Expand Up @@ -175,4 +175,4 @@ DEPENDENCIES
wdm (<= 0.0.3)

BUNDLED WITH
1.16.1
1.16.5
2 changes: 1 addition & 1 deletion esendex.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ Gem::Specification.new do |gem|
gem.version = Esendex::VERSION
gem.required_ruby_version = "~> 2.2"
gem.add_runtime_dependency "nestful", ["~> 0.0.8"]
gem.add_runtime_dependency "nokogiri", ["~> 1.6.8.1"]
gem.add_runtime_dependency "nokogiri", ["~> 1.8"]
end
2 changes: 1 addition & 1 deletion lib/esendex/account.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ def send_message(args={})
raise ArgumentError.new(":to required") unless args[:to]
raise ArgumentError.new(":body required") unless args[:body]

send_messages [Message.new(args[:to], args[:body], args[:from])]
send_messages [Message.new(args[:to], args[:body], args[:from], args[:characterset])]
end

def send_messages(messages)
Expand Down
11 changes: 9 additions & 2 deletions lib/esendex/message.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@

module Esendex
class Message
attr_accessor :to, :body, :from
attr_accessor :to, :body, :from, :characterset

def initialize(to, body, from=nil)
def initialize(to, body, from=nil, characterset=nil)
@to = to
@body = body
@from = from
@characterset = characterset.nil? ? 'Auto' : characterset
end

def xml_node
Expand All @@ -32,6 +33,12 @@ def xml_node
doc.root.add_child(from)
end

if @characterset
characterset = Nokogiri::XML::Node.new 'characterset', doc
characterset.content = @characterset
doc.root.add_child(characterset)
end

doc.root
end
end
Expand Down
2 changes: 1 addition & 1 deletion lib/esendex/version.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module Esendex
VERSION = "0.6.0"
VERSION = "0.6.1"
end
14 changes: 12 additions & 2 deletions spec/message_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
let(:to) { random_mobile }
let(:from) { random_mobile }
let(:body) { random_string }
let(:message) { Esendex::Message.new(to, body, from) }
let(:characterset) { 'Unicode' }
let(:message) { Esendex::Message.new(to, body, from, characterset) }

it "should have to set" do
expect(message.to).to eq(to)
Expand All @@ -18,12 +19,17 @@
it "should have body set" do
expect(message.body).to eq(body)
end

it "should have characterset set" do
expect(message.characterset).to eq(characterset)
end
end

describe "#xml_node" do
let(:to) { random_mobile }
let(:body) { random_string }
let(:message) { Esendex::Message.new(to, body) }
let(:characterset) { 'Auto' }
let(:message) { Esendex::Message.new(to, body, ) }

subject { message.xml_node }

Expand All @@ -45,5 +51,9 @@
expect(subject.at_xpath('//message/from').content).to eq(from)
end
end

it "contains a characterset node" do
expect(subject.at_xpath('//message/characterset').content).to eq(characterset)
end
end
end