amerine-btexty 0.1.0 → 0.1.1

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
data/btexty.gemspec ADDED
@@ -0,0 +1,47 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{btexty}
5
+ s.version = "0.1.1"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Mark Turner"]
9
+ s.date = %q{2009-05-12}
10
+ s.email = %q{mark@amerine.net}
11
+ s.extra_rdoc_files = [
12
+ "LICENSE",
13
+ "README.rdoc"
14
+ ]
15
+ s.files = [
16
+ ".document",
17
+ ".gitignore",
18
+ "LICENSE",
19
+ "README.rdoc",
20
+ "Rakefile",
21
+ "VERSION",
22
+ "btexty.gemspec",
23
+ "lib/btexty.rb",
24
+ "lib/btexty/data.rb",
25
+ "test/btexty_test.rb",
26
+ "test/test_helper.rb"
27
+ ]
28
+ s.homepage = %q{http://github.com/amerine/btexty}
29
+ s.rdoc_options = ["--charset=UTF-8"]
30
+ s.require_paths = ["lib"]
31
+ s.rubygems_version = %q{1.3.3}
32
+ s.summary = %q{super simple ruby interface for the btexty api}
33
+ s.test_files = [
34
+ "test/btexty_test.rb",
35
+ "test/test_helper.rb"
36
+ ]
37
+
38
+ if s.respond_to? :specification_version then
39
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
40
+ s.specification_version = 3
41
+
42
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
43
+ else
44
+ end
45
+ else
46
+ end
47
+ end
data/lib/btexty/data.rb CHANGED
@@ -0,0 +1,21 @@
1
+ class BTexty
2
+
3
+ class Message
4
+ attr_accessor :content, :thread, :sender, :recipients, :sender_name
5
+ attr_accessor :recipients_names, :is_read, :wall, :created_on, :id
6
+
7
+ def process_message(message)
8
+ self.content = message['message']['content']
9
+ self.thread = message['message']['thread']
10
+ self.sender = message['message']['sender']
11
+ self.recipients = message['message']['recipients']
12
+ self.sender_name = message['message']['sender_name']
13
+ self.recipients_names = message['message']['recipients_names']
14
+ self.is_read = message['message']['is_read']
15
+ self.wall = message['message']['wall']
16
+ self.created_on = message['message']['created_on']
17
+ self.id = message['message']['id']
18
+ end
19
+ end
20
+
21
+ end
data/lib/btexty.rb CHANGED
@@ -25,7 +25,14 @@ class BTexty
25
25
  end
26
26
 
27
27
  def messages
28
- get('inbox/index')
28
+ return_messages = []
29
+ messages = get('inbox/index')['response']['body']['messages']
30
+ messages.each do |message|
31
+ process_message = Message.new
32
+ process_message.process_message(message)
33
+ return_messages << process_message
34
+ end
35
+ return_messages
29
36
  end
30
37
 
31
38
  private
data/test/btexty_test.rb CHANGED
@@ -20,5 +20,40 @@ class BTextyTest < Test::Unit::TestCase
20
20
  end
21
21
  end
22
22
 
23
+ context "Checking for unread messages" do
24
+ setup do
25
+ FakeWeb.register_uri(:get, "http://+15419777188:12341@www.btexty.com:80/api/json/inbox/unread", :string => File.read('test/fixtures/unread.json'))
26
+ @btexty = BTexty.new('+15419777188', 12341)
27
+ end
28
+
29
+ should "return the number of unread messages as an interger" do
30
+ assert_equal 1, @btexty.unread
31
+ end
32
+ end
33
+
34
+ context "Getting the list a list messages" do
35
+ setup do
36
+ FakeWeb.register_uri(:get, "http://+15419777188:12341@www.btexty.com:80/api/json/inbox/index", :string => File.read('test/fixtures/messages.json'))
37
+ @btexty = BTexty.new('+15419777188', 12341)
38
+ end
39
+
40
+ should "return a list of messages" do
41
+ assert_equal 1, @btexty.messages.size
42
+ end
43
+
44
+ should "allow you to read each messages attributes" do
45
+ message = @btexty.messages.first
46
+ message.content.should == 'Welcome to btexty! Click on the link we just sent you as text message to activate your account.'
47
+ message.thread.should == '9xknm7nn3icqa3qnqxni0uwaooz6k6uiupbuij7tao38b4ax1o2b57dsx0onphx5'
48
+ message.sender.should == '+18579989143'
49
+ message.recipients.should == '+15419777188'
50
+ message.sender_name.should == 'btexty'
51
+ message.recipients_names.should == 'me'
52
+ message.is_read.should == false
53
+ message.wall.should == false
54
+ message.created_on.should == '2009-05-11 22:32:43.643042'
55
+ message.id.should == 'agZtb3dhbGxyIQsSB0FjY291bnQYAgwLEgxTaG9ydE1lc3NhZ2UY_50CDA'
56
+ end
57
+ end
23
58
 
24
59
  end
data/test/test_helper.rb CHANGED
@@ -2,6 +2,9 @@ require 'rubygems'
2
2
  require 'test/unit'
3
3
  require 'shoulda'
4
4
  require 'matchy'
5
+ require 'fakeweb'
6
+
7
+ FakeWeb.allow_net_connect = false
5
8
 
6
9
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
10
  $LOAD_PATH.unshift(File.dirname(__FILE__))
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amerine-btexty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Turner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-05-11 00:00:00 -07:00
12
+ date: 2009-05-12 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -29,6 +29,7 @@ files:
29
29
  - README.rdoc
30
30
  - Rakefile
31
31
  - VERSION
32
+ - btexty.gemspec
32
33
  - lib/btexty.rb
33
34
  - lib/btexty/data.rb
34
35
  - test/btexty_test.rb