powncer 0.1.0
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/Rakefile +80 -0
- data/lib/powncer.rb +20 -0
- data/lib/powncer/authentication.rb +84 -0
- data/lib/powncer/base.rb +103 -0
- data/lib/powncer/connection.rb +33 -0
- data/lib/powncer/event.rb +40 -0
- data/lib/powncer/ext.rb +58 -0
- data/lib/powncer/link.rb +28 -0
- data/lib/powncer/media.rb +26 -0
- data/lib/powncer/note.rb +101 -0
- data/lib/powncer/user.rb +64 -0
- data/lib/powncer/version.rb +16 -0
- data/test/examples/authenticated_examples.rb +953 -0
- data/test/examples/basic_examples.rb +462 -0
- data/test/test_helper.rb +34 -0
- data/test/unit/1_1_TESTS +21 -0
- data/test/unit/authentication_test.rb +28 -0
- data/test/unit/base_test.rb +13 -0
- data/test/unit/connection_test.rb +12 -0
- data/test/unit/event_test.rb +44 -0
- data/test/unit/link_test.rb +48 -0
- data/test/unit/media_test.rb +22 -0
- data/test/unit/note_test.rb +131 -0
- data/test/unit/user_test.rb +45 -0
- metadata +85 -0
data/test/test_helper.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'mocha'
|
4
|
+
require 'redgreen'
|
5
|
+
require 'flexmock/test_unit'
|
6
|
+
|
7
|
+
$: << File.join(File.dirname(__FILE__), '..', 'lib')
|
8
|
+
require 'powncer'
|
9
|
+
|
10
|
+
Dir.glob(File.join(File.dirname(__FILE__), 'examples', '*_examples.rb')).each{|f| require f}
|
11
|
+
|
12
|
+
class Test::Unit::TestCase
|
13
|
+
TEST_LIVE = false
|
14
|
+
include Powncer
|
15
|
+
|
16
|
+
def teardown
|
17
|
+
Powncer.disconnect!
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
class String
|
23
|
+
def mock_connection(response)
|
24
|
+
Powncer::Connection.any_instance.stubs(:get).with(self).returns(response) unless Test::Unit::TestCase::TEST_LIVE
|
25
|
+
end
|
26
|
+
|
27
|
+
def mock_auth_connection(response)
|
28
|
+
Powncer::Authentication::Basic.any_instance.stubs(:get).with(self).returns(response) unless Test::Unit::TestCase::TEST_LIVE
|
29
|
+
end
|
30
|
+
|
31
|
+
def mock_post(response, params)
|
32
|
+
Powncer::Authentication::Basic.any_instance.stubs(:post).with(self, params).returns(response) unless Test::Unit::TestCase::TEST_LIVE
|
33
|
+
end
|
34
|
+
end
|
data/test/unit/1_1_TESTS
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
def test_chaining_recipients_on_note_find
|
2
|
+
note = example_note
|
3
|
+
"/notes/#{note[:id]}.json".mock_connection(example_public_note)
|
4
|
+
"/notes/#{note[:id]}/recipients.json".mock_connection(example_public_note_recipients)
|
5
|
+
@recipients = Note.find(note[:id]).recipients
|
6
|
+
assert_not_nil @recipients
|
7
|
+
assert_kind_of Array, @recipients
|
8
|
+
assert_equal 1, @recipients.length
|
9
|
+
assert_kind_of Powncer::User, @recipients.first
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_public_note_recipients
|
13
|
+
note = example_note
|
14
|
+
"/notes/#{note[:id]}.json".mock_connection(example_public_note)
|
15
|
+
@note = Note.find(note[:id])
|
16
|
+
"/notes/#{@note.id}/recipients.json".mock_connection(example_public_note_recipients)
|
17
|
+
assert_not_nil @note.recipients
|
18
|
+
assert_kind_of Array, @note.recipients
|
19
|
+
assert_equal 1, @note.recipients.length
|
20
|
+
assert_kind_of Powncer::User, @note.recipients.first
|
21
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class AuthenticationTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_authentication_basic_header
|
6
|
+
sig = Authentication::Basic::Header.new("powncertest", "powncertest")
|
7
|
+
assert_equal "Basic #{example_auth_sig}", sig
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_authentication_connection
|
11
|
+
connection = Authentication::Basic.connect!
|
12
|
+
assert_equal 1, Powncer.connections.length
|
13
|
+
"/users/jaehess.json".mock_auth_connection(example_profile_for)
|
14
|
+
"/note_lists/jaehess.json?filter=public".mock_auth_connection(auth_example_notes_for)
|
15
|
+
j = User.find('jaehess')
|
16
|
+
assert_equal 20, j.notes.length
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_clear_authentication_connections
|
20
|
+
connection = Authentication::Basic.connect!
|
21
|
+
assert_not_nil Powncer.connections
|
22
|
+
assert_equal 1, Powncer.connections.length
|
23
|
+
assert_not_nil Powncer.connections[0].options
|
24
|
+
Powncer.disconnect!
|
25
|
+
assert_equal [], Powncer.connections
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class BaseTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_error_thrown
|
6
|
+
bad_url = '/note_lists/zzzzzzz.json?filter=public'
|
7
|
+
bad_url.mock_connection(example_error)
|
8
|
+
assert_raises Powncer::WebServiceError do
|
9
|
+
Base.request(bad_url)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class ConnectionTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_creating_a_connection
|
6
|
+
connection = Connection.new
|
7
|
+
assert_not_nil connection
|
8
|
+
assert_equal "http://api.pownce.com/2.0", connection.url
|
9
|
+
assert !connection.authenticated
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class EventTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
authorize
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_no_requirements_throws_error
|
10
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
11
|
+
|
12
|
+
assert_raises RequirementMissing do
|
13
|
+
Event.new
|
14
|
+
end
|
15
|
+
assert_nothing_raised do
|
16
|
+
Event.new(test_params)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_new_event_creation
|
21
|
+
event = Event.new(test_params.merge!({:to => :all}))
|
22
|
+
assert_equal test_params[:name], event.name
|
23
|
+
assert_equal :all, event.to
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_event_create
|
27
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
28
|
+
"/send/event.json".mock_post(example_post_event_response, test_params.merge!({:to => :public}))
|
29
|
+
event = Event.create(test_params)
|
30
|
+
assert_equal test_params[:name], event.name
|
31
|
+
assert_equal test_params[:location], event.location
|
32
|
+
assert_equal test_params[:date], event.date
|
33
|
+
assert_kind_of Powncer::Event, event
|
34
|
+
end
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
def authorize; Authentication::Basic.connect!; end
|
39
|
+
|
40
|
+
def test_params
|
41
|
+
{:name => "Foo", :location => "Bar", :date => "2008-01-16 21:00:00"}
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class LinkTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
authorize
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_no_url_throws_error
|
10
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
11
|
+
|
12
|
+
assert_raises RequirementMissing do
|
13
|
+
Link.new
|
14
|
+
end
|
15
|
+
assert_raises RequirementMissing do
|
16
|
+
Link.new({:url => "foo"})
|
17
|
+
end
|
18
|
+
assert_nothing_raised do
|
19
|
+
Link.new({:url => "http://test"})
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_new_link_creation
|
24
|
+
lnk = Link.new(test_params.merge!({:to => :all}))
|
25
|
+
assert_equal test_params[:body], lnk.body
|
26
|
+
assert_equal test_params[:url], lnk.link
|
27
|
+
assert_equal :all, lnk.to
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_link_create
|
31
|
+
"/users/powncertest.json".mock_auth_connection(example_profile_for_powncertest)
|
32
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
33
|
+
"/send/link.json".mock_post(example_post_link_response, test_params.merge!({:to => "friend_171628"}))
|
34
|
+
lnk = Link.create(test_params)
|
35
|
+
assert_equal test_params[:body], lnk.body
|
36
|
+
assert_equal test_params[:url], lnk.link
|
37
|
+
assert_kind_of Powncer::Link, lnk
|
38
|
+
end
|
39
|
+
|
40
|
+
private
|
41
|
+
|
42
|
+
def authorize; Authentication::Basic.connect!; end
|
43
|
+
|
44
|
+
def test_params
|
45
|
+
{:url => "http://powncer.rubyforge.org", :body => "Foo", :to => "powncertest"}
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
|
3
|
+
class MediaTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
authorize
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_new_file
|
10
|
+
file = Media.new({:to => "powncertest", :data => open(File.join(File.dirname(__FILE__), "1_1_TESTS")){|f| f.read}})
|
11
|
+
assert file.save
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
def authorize; Authentication::Basic.connect!; end
|
17
|
+
|
18
|
+
def test_params
|
19
|
+
{:name => "Foo", :location => "Bar", :date => "2008-01-16 21:00:00"}
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,131 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
class NoteTest < Test::Unit::TestCase
|
3
|
+
|
4
|
+
def test_new_note_creation
|
5
|
+
note = Note.new({:body => "Foo", :to => :all})
|
6
|
+
assert_equal "Foo", note.body
|
7
|
+
assert_equal :all, note.to
|
8
|
+
|
9
|
+
authorize
|
10
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
11
|
+
note = Note.new({:body => "Foo"})
|
12
|
+
assert_equal :public, note.to
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_new_note_save_post
|
16
|
+
authorize
|
17
|
+
"/users/powncertest.json".mock_auth_connection(example_profile_for_powncertest)
|
18
|
+
"/users/davidbenedic.json".mock_auth_connection(example_profile_for_david)
|
19
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
20
|
+
"/send/message.json".mock_post(example_post_note_response, {:body => "Foo", :to => "friend_171628"})
|
21
|
+
note = Note.new({:body => "Foo", :to => "powncertest"})
|
22
|
+
assert note.save
|
23
|
+
assert_equal "Foo", note.body
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_note_create_to_public
|
27
|
+
authorize
|
28
|
+
"/users/powncertest.json".mock_auth_connection(example_profile_for_powncertest)
|
29
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
30
|
+
"/send/message.json".mock_post(example_post_note_response, {:body => "Foo", :to => :public })
|
31
|
+
note = Note.create({:body => "Foo"})
|
32
|
+
assert_kind_of Powncer::Note, note
|
33
|
+
assert_equal "Foo", note.body
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_note_throws_error_when_friends_are_invalid
|
37
|
+
authorize
|
38
|
+
"/users/leahculver.json".mock_auth_connection(example_profile_for_leah)
|
39
|
+
"/users/powncertest.json".mock_auth_connection(example_profile_for_powncertest)
|
40
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
41
|
+
"/send/message.json".mock_post(example_post_note_response, {:body => "Foo", :to => "friend_171628"})
|
42
|
+
assert_raises Powncer::InvalidFriend do
|
43
|
+
Note.create({:body => "Foo", :to => "leahculver"})
|
44
|
+
end
|
45
|
+
assert_nothing_raised do
|
46
|
+
@note = Note.create({:body => "Foo", :to => "powncertest"})
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_public_notes_list
|
51
|
+
'/note_lists.json'.mock_connection(example_public_notes)
|
52
|
+
@notes = Note.find(:public)
|
53
|
+
assert_not_nil @notes
|
54
|
+
assert_kind_of Array, @notes
|
55
|
+
assert_kind_of Powncer::Note, @notes.first
|
56
|
+
assert_equal 20, @notes.length
|
57
|
+
end
|
58
|
+
|
59
|
+
def test_public_notes_list_limit
|
60
|
+
limit = 50
|
61
|
+
"/note_lists.json?limit=#{limit}".mock_connection(example_public_notes(limit))
|
62
|
+
@notes = Note.find(:public, {:limit => limit})
|
63
|
+
assert_not_nil @notes
|
64
|
+
assert_equal limit, @notes.length
|
65
|
+
end
|
66
|
+
|
67
|
+
def test_public_notes_list_page
|
68
|
+
"/note_lists.json?page=1".mock_connection(example_public_notes(20, 1))
|
69
|
+
@notes = Note.find(:public, {:page => 1})
|
70
|
+
assert_not_nil @notes
|
71
|
+
assert_equal 20, @notes.length
|
72
|
+
end
|
73
|
+
|
74
|
+
def test_public_note_find
|
75
|
+
note = example_note
|
76
|
+
"/notes/#{note[:id]}.json".mock_connection(example_public_note_for)
|
77
|
+
@note = Note.find(note[:id])
|
78
|
+
assert_kind_of Powncer::Note, @note
|
79
|
+
assert_equal note[:body], @note.body
|
80
|
+
end
|
81
|
+
|
82
|
+
def test_public_note_sender_is_user
|
83
|
+
note = example_note
|
84
|
+
"/notes/#{note[:id]}.json".mock_connection(example_public_note_for)
|
85
|
+
@note = Note.find(note[:id])
|
86
|
+
assert_kind_of Powncer::User, @note.sender
|
87
|
+
end
|
88
|
+
|
89
|
+
def test_public_note_link_is_not_hash
|
90
|
+
"/users/jaehess.json".mock_connection(example_profile_for)
|
91
|
+
'/note_lists/jaehess.json?filter=public'.mock_connection(example_public_links_for)
|
92
|
+
user = User.find('jaehess')
|
93
|
+
assert_not_nil user
|
94
|
+
assert_not_nil user.notes
|
95
|
+
assert_equal "http://www.rubyforge.org/projects/powncer", user.notes.first.link
|
96
|
+
end
|
97
|
+
|
98
|
+
def test_chaining_notes_on_user_profile_find
|
99
|
+
"/users/jaehess.json".mock_connection(example_profile_for)
|
100
|
+
"/note_lists/jaehess.json?filter=public".mock_connection(example_public_notes_for)
|
101
|
+
@notes = User.find('jaehess').notes
|
102
|
+
assert_not_nil @notes
|
103
|
+
assert_kind_of Array, @notes
|
104
|
+
end
|
105
|
+
|
106
|
+
[:links, :messages, :events].each do |type|
|
107
|
+
class_eval(<<-EVAL, __FILE__, __LINE__)
|
108
|
+
def test_filter_public_#{type}
|
109
|
+
"/note_lists.json?type=#{type}".mock_connection(example_public_#{type})
|
110
|
+
#{type} = Note.find(:public, {:type => "#{type}"})
|
111
|
+
assert_not_nil #{type}
|
112
|
+
assert_kind_of Array, #{type}
|
113
|
+
assert_equal 20, #{type}.length
|
114
|
+
assert_kind_of Powncer::Note, #{type}.first
|
115
|
+
assert_equal "#{type}", #{type}.first.type + "s"
|
116
|
+
end
|
117
|
+
EVAL
|
118
|
+
end
|
119
|
+
|
120
|
+
private
|
121
|
+
|
122
|
+
def authorize; Authentication::Basic.connect!; end
|
123
|
+
|
124
|
+
def example_note
|
125
|
+
return {
|
126
|
+
:id => 1437687,
|
127
|
+
:body => "Powncer Ruby Gem released soon (with API 2.0 support)"
|
128
|
+
}
|
129
|
+
end
|
130
|
+
|
131
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../test_helper'
|
2
|
+
class UserTest < Test::Unit::TestCase
|
3
|
+
|
4
|
+
def setup
|
5
|
+
@user = User.new('jaehess')
|
6
|
+
end
|
7
|
+
|
8
|
+
def test_user_has_profile_attributes
|
9
|
+
"/users/jaehess.json".mock_connection(example_profile_for)
|
10
|
+
profile = @user.profile
|
11
|
+
assert_equal "jaehess", profile.username
|
12
|
+
assert_equal false, profile.is_pro?
|
13
|
+
assert_equal 124992, profile.id
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_user_friends_allocated_to_user_objects
|
17
|
+
"/users/jaehess/friends.json".mock_connection(example_friends_for)
|
18
|
+
assert_not_nil @user.friends
|
19
|
+
assert_kind_of Array, @user.friends
|
20
|
+
assert_kind_of Powncer::User, @user.friends[0]
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_user_finder_and_load_profile
|
24
|
+
"/users/jaehess.json".mock_connection(example_profile_for)
|
25
|
+
user = User.find('jaehess')
|
26
|
+
assert_not_nil user
|
27
|
+
assert_equal "jaehess", user.username
|
28
|
+
assert_equal "Bloke", user.gender
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_user_should_have_notes
|
32
|
+
'/note_lists/jaehess.json?filter=public'.mock_connection(example_public_notes_for)
|
33
|
+
assert_kind_of Array, @user.notes
|
34
|
+
assert_kind_of Powncer::Note, @user.notes.first
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_user_has_send_to_list
|
38
|
+
Authentication::Basic.connect!
|
39
|
+
"/send/send_to.json".mock_auth_connection(auth_example_send_to_for)
|
40
|
+
assert_kind_of Hash, @user.send_to
|
41
|
+
assert_kind_of Hash, User.send_to
|
42
|
+
assert_equal @user.send_to, User.send_to
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
metadata
ADDED
@@ -0,0 +1,85 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: powncer
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Jae Hess
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2008-03-21 00:00:00 -04:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: json
|
17
|
+
version_requirement:
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: "0"
|
23
|
+
version:
|
24
|
+
description:
|
25
|
+
email: jae.hess@gmail.com
|
26
|
+
executables: []
|
27
|
+
|
28
|
+
extensions: []
|
29
|
+
|
30
|
+
extra_rdoc_files: []
|
31
|
+
|
32
|
+
files:
|
33
|
+
- Rakefile
|
34
|
+
- lib/powncer/authentication.rb
|
35
|
+
- lib/powncer/base.rb
|
36
|
+
- lib/powncer/connection.rb
|
37
|
+
- lib/powncer/event.rb
|
38
|
+
- lib/powncer/ext.rb
|
39
|
+
- lib/powncer/link.rb
|
40
|
+
- lib/powncer/media.rb
|
41
|
+
- lib/powncer/note.rb
|
42
|
+
- lib/powncer/user.rb
|
43
|
+
- lib/powncer/version.rb
|
44
|
+
- lib/powncer.rb
|
45
|
+
has_rdoc: true
|
46
|
+
homepage: http://powncer.rubyforge.org
|
47
|
+
post_install_message:
|
48
|
+
rdoc_options: []
|
49
|
+
|
50
|
+
require_paths:
|
51
|
+
- lib
|
52
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: "0"
|
57
|
+
version:
|
58
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: "0"
|
63
|
+
version:
|
64
|
+
requirements: []
|
65
|
+
|
66
|
+
rubyforge_project: powncer
|
67
|
+
rubygems_version: 1.0.1
|
68
|
+
signing_key:
|
69
|
+
specification_version: 2
|
70
|
+
summary: Powncer is a Ruby library to the Pownce REST API
|
71
|
+
test_files:
|
72
|
+
- test/examples
|
73
|
+
- test/examples/authenticated_examples.rb
|
74
|
+
- test/examples/basic_examples.rb
|
75
|
+
- test/test_helper.rb
|
76
|
+
- test/unit
|
77
|
+
- test/unit/1_1_TESTS
|
78
|
+
- test/unit/authentication_test.rb
|
79
|
+
- test/unit/base_test.rb
|
80
|
+
- test/unit/connection_test.rb
|
81
|
+
- test/unit/event_test.rb
|
82
|
+
- test/unit/link_test.rb
|
83
|
+
- test/unit/media_test.rb
|
84
|
+
- test/unit/note_test.rb
|
85
|
+
- test/unit/user_test.rb
|