textecho 0.1.7 → 0.1.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 16ac797a5eee2776158c67f1601682cb31d7d0c9
4
- data.tar.gz: 8c0e7e333f3f9d2e07faa7bc5c8d121849229b47
3
+ metadata.gz: 41b5ef4f7de4fffbba3faede6d0a148406ea530a
4
+ data.tar.gz: 29e2ffb31f37cec7d1eee62c06c8a4c7fdec3a01
5
5
  SHA512:
6
- metadata.gz: e733eba81b76b10318e66fa8ef5226a9892587e3f84be4eb50cb0ade02bd7117bbb0abd889d263eed2307de9fd39519c8a4494fd23f465853bc38f360178ee44
7
- data.tar.gz: 759f018e49ca182abcfb34135f39fc5eca27027020d088a1d3bebad52d3370ed5f8cad410d90e0b819e5db0ce42b5066823af9e462aa5fff18aac4689025c94d
6
+ metadata.gz: f98666e1a8ed524d88a83e50b7d6a5be38b880ce260741eeaa760f2ecb56cc1a93a05396247f82d48ef15fcfd0aab811b933a20e6590979aa0258c35f998373b
7
+ data.tar.gz: c2ec44087560f366ce7075b7570cc7a24ce51115f6818ebcd5fb36aa0f963bacf703861b0be95f5a3a904fc0a2140624c62d9b3cf495af9b03b4a496de5ed221
data/lib/textecho/base.rb CHANGED
@@ -3,7 +3,7 @@ require 'rubygems'
3
3
 
4
4
  module Textecho
5
5
  class Base
6
- attr_accessor :input_message,:output_message, :output_list
6
+ attr_accessor :input_message,:output_message, :output_list,:shortcode, :locale, :msg_source
7
7
  def debug
8
8
  true
9
9
  end
@@ -16,23 +16,26 @@ module Textecho
16
16
  def help_prefix
17
17
  "Help Message: "
18
18
  end
19
- def help(locale,resp)
20
- raise "help response needs to be hash" if resp.class!=Hash
21
- locale="en" if !resp.keys.include? locale # set locale to english if not proper
22
- return self.help_prefix + resp[locale]
19
+ def help(resp)
20
+ raise "help response needs to be hash" if !resp.is_a? Hash
21
+ self.locale="en" if !resp.keys.include? self.locale # set locale to english if not proper
22
+ return self.help_prefix + resp[self.locale]
23
23
  end
24
- def handle_message(src, msg,locale=nil)
24
+ def handle_message(src, msg, shortcode,locale=nil)
25
25
  setup
26
+ self.locale=locale
27
+ self.msg_source=src
28
+ self.shortcode=shortcode
26
29
  self.input_message=msg.downcase
27
- puts "inbound message is "+ self.input_message if debug
28
- process(src,locale)
30
+ puts "inspect is #{self.inspect} " if debug
31
+ process()
29
32
  end
30
33
  # @@host= 'localhost:8083'
31
34
  def add_msg(msg)
32
35
  self.output_list << msg
33
36
  end
34
- def process(src,locale)
35
- self.output_message="[#{self.input_message}] - received by application"
37
+ def process()
38
+ self.output_message="[#{self.input_message}] from #{self.msg_source} rcvd on #{self.shortcode}"
36
39
  puts "outbound message is "+ self.output_message if debug
37
40
  self.add_msg(self.output_message)
38
41
  self.output_list #should return arrayge of mesages
@@ -1,7 +1,7 @@
1
1
  module Textecho
2
2
  class Multimessage < Textecho::Base
3
3
 
4
- def process(src,locale=nil)
4
+ def process()
5
5
  n=rand*10.to_i
6
6
  0.upto(n) {|i| amsg="#{i} of #{n} : #{Time.now}"
7
7
  self.add_msg(amsg) }
@@ -1,7 +1,7 @@
1
1
  module Textecho
2
2
  class Randgen < Textecho::Base
3
3
 
4
- def process(src,locale=nil)
4
+ def process()
5
5
  n=rand*10
6
6
  nn=rand*10
7
7
  self.output_message=n.to_s+" "+nn.to_s
@@ -2,14 +2,14 @@ module Textecho
2
2
  class Timecheck < Textecho::Base
3
3
 
4
4
 
5
- def check_keyword(src,locale)
5
+ def check_keyword()
6
6
  help_resp={"en"=>"send time to xxxx","te"=>"teturm: time to xxxx", "ba"=>"bahasa: time to xxxx"}
7
7
  out="Time is: #{Time.now.to_s}" if self.input_message.chomp=="time"
8
- out=self.help(locale,help_resp) if self.input_message.chomp!="time"
8
+ out=self.help(help_resp) if self.input_message.chomp!="time"
9
9
  out
10
10
  end
11
- def process(src,locale=nil)
12
- self.output_message=check_keyword(src,locale)
11
+ def process()
12
+ self.output_message=check_keyword()
13
13
  puts "outbound message is "+ self.output_message if debug
14
14
  self.add_msg(self.output_message)
15
15
  self.msgs
data/test/test_echo.rb CHANGED
@@ -4,19 +4,20 @@ class TestEcho < Test::Unit::TestCase
4
4
 
5
5
  def setup
6
6
  @f=Textecho::Base.new
7
+ @f.shortcode='123'
7
8
  @myMsg='my message'
8
9
  @myMsg2 = "My Message Two"
9
10
  @source=123
10
11
  end
11
12
 
12
13
  def test_local
13
- msgs=@f.handle_message(@source,@myMsg)
14
+ msgs=@f.handle_message(@source,@myMsg,@f.shortcode)
14
15
  assert msgs=@f.msgs, "messages and list not same"
15
16
  assert @f.msgs.first.include?(@myMsg), "message not echoed"
16
17
  end
17
18
  def test_downcase
18
19
 
19
- msgs=@f.handle_message(@source,@myMsg2)
20
+ msgs=@f.handle_message(@source,@myMsg2,@f.shortcode)
20
21
  assert msgs=@f.msgs, "messages and list not same"
21
22
  assert !@f.msgs.first.include?(@myMsg2), "message should be downcase"
22
23
  assert @f.msgs.first.include?(@myMsg2.downcase), "message should be downcase"
@@ -24,28 +25,30 @@ class TestEcho < Test::Unit::TestCase
24
25
 
25
26
  def test_rand
26
27
  @f=Textecho::Randgen.new
27
- msgs=@f.handle_message(@source,@myMsg)
28
+ msgs=@f.handle_message(@source,@myMsg,@f.shortcode)
28
29
  assert msgs=@f.output_list, "messages and list not same"
29
30
  assert @f.msgs.first != @myMsg, "message echoed"
30
31
  end
31
32
 
32
33
  def test_time
33
34
  @f=Textecho::Timecheck.new
35
+ @f.shortcode='456'
34
36
  t=Time.now.to_s
35
- msgs=@f.handle_message(@source,"time")
37
+ msgs=@f.handle_message(@source,"time", @f.shortcode)
36
38
  assert msgs=@f.msgs, "messages and list not same"
37
39
  msg=@f.msgs.first
38
40
  assert msg.include?(t), "message [#{msg}] [#{t}] "
39
41
  end
40
42
  def test_time_not_keyword
41
43
  @f=Textecho::Timecheck.new
44
+ @f.shortcode='123'
42
45
  t=Time.now.to_s
43
- msgs=@f.handle_message(@source,"help")
46
+ msgs=@f.handle_message(@source,"help", @f.shortcode)
44
47
  assert msgs.first.include?("Help Message:"), "should be help message but was #{msgs.first}"
45
48
  end
46
49
  def test_multi
47
50
  @f=Textecho::Multimessage.new
48
- msgs=@f.handle_message(@source,@myMsg)
51
+ msgs=@f.handle_message(@source,@myMsg, @f.shortcode)
49
52
  puts "multi messages are #{msgs.join(',')}"
50
53
  assert msgs.size > 0
51
54
  msg=@f.msgs.first
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: textecho
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Sproule
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-25 00:00:00.000000000 Z
11
+ date: 2013-09-26 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Common application format for telkcomcel in Timor Leste.
14
14
  email: scott.sproule@estormtech.com