latompa-fleakr 0.5.1 → 0.5.2
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.
@@ -5,7 +5,7 @@ module Fleakr
|
|
5
5
|
include Fleakr::Support::Object
|
6
6
|
|
7
7
|
flickr_attribute :id, :from => '@nsid'
|
8
|
-
flickr_attribute :username
|
8
|
+
flickr_attribute :username,:realname,:location
|
9
9
|
flickr_attribute :icon_server, :from => '@iconserver'
|
10
10
|
flickr_attribute :icon_farm, :from => '@iconfarm'
|
11
11
|
|
@@ -19,7 +19,7 @@ module Fleakr
|
|
19
19
|
# Retrieve a list of contacts for an authenticated user
|
20
20
|
def self.find_all_contacts(params={})
|
21
21
|
response = Fleakr::Api::MethodRequest.with_response!('contacts.getList',params)
|
22
|
-
(response.body/'contacts/contact').map {|c| Contact.new(c)
|
22
|
+
(response.body/'contacts/contact').map {|c| Contact.new(c) }
|
23
23
|
end
|
24
24
|
|
25
25
|
def to_user
|
data/lib/fleakr/objects/user.rb
CHANGED
@@ -61,7 +61,7 @@ module Fleakr
|
|
61
61
|
find_one :by_email, :using => :find_email, :call => 'people.findByEmail'
|
62
62
|
find_one :by_id, :using => :user_id, :call => 'people.getInfo'
|
63
63
|
|
64
|
-
lazily_load :name, :photos_url, :profile_url, :photos_count, :with => :load_info
|
64
|
+
lazily_load :name, :photos_url, :profile_url, :photos_count, :location, :with => :load_info
|
65
65
|
lazily_load :icon_server, :icon_farm, :pro, :admin, :with => :load_info
|
66
66
|
|
67
67
|
scoped_search
|
@@ -5,25 +5,26 @@ module Fleakr::Objects
|
|
5
5
|
|
6
6
|
context "The Contact class" do
|
7
7
|
|
8
|
-
setup do
|
9
|
-
@user_1 = stub()
|
10
|
-
@user_2 = stub()
|
11
|
-
@contact_1, @contact_2 = [stub(:to_user => @user_1), stub(:to_user => @user_2)]
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
8
|
should "return a list of users for a specified user's contacts" do
|
9
|
+
# user_1, user_2 = [stub(), stub()]
|
10
|
+
user_1 = stub()
|
11
|
+
user_2 = stub()
|
12
|
+
|
13
|
+
contact_1, contact_2 = [stub(:to_user => user_1), stub(:to_user => user_2)]
|
14
|
+
|
16
15
|
response = mock_request_cycle :for => 'contacts.getPublicList', :with => {:user_id => '1'}
|
17
16
|
|
18
17
|
contact_1_doc, contact_2_doc = (response.body/'rsp/contacts/contact').to_a
|
19
18
|
|
20
|
-
Contact.stubs(:new).with(contact_1_doc).returns(
|
21
|
-
Contact.stubs(:new).with(contact_2_doc).returns(
|
22
|
-
|
19
|
+
Contact.stubs(:new).with(contact_1_doc).returns(contact_1)
|
20
|
+
Contact.stubs(:new).with(contact_2_doc).returns(contact_2)
|
21
|
+
|
22
|
+
Contact.find_all_by_user_id('1').should == [user_1, user_2]
|
23
23
|
end
|
24
24
|
|
25
25
|
should "return a list of users for an authenticated user" do
|
26
26
|
response = mock_request_cycle :for => 'contacts.getList', :with => {}
|
27
|
+
contact_1, contact_2 = [stub("contact"), stub('contact')]
|
27
28
|
contact_1_doc, contact_2_doc = (response.body/'rsp/contacts/contact').to_a
|
28
29
|
|
29
30
|
Contact.stubs(:new).with(contact_1_doc).returns(@contact_1)
|
@@ -34,7 +35,7 @@ module Fleakr::Objects
|
|
34
35
|
end
|
35
36
|
|
36
37
|
context "An instance of the Contact class" do
|
37
|
-
context "when populating from an XML document" do
|
38
|
+
context "when populating from an XML document with public contacts" do
|
38
39
|
setup do
|
39
40
|
@object = Contact.new(Hpricot.XML(read_fixture('contacts.getPublicList')).at('contacts/contact'))
|
40
41
|
end
|
@@ -45,6 +46,21 @@ module Fleakr::Objects
|
|
45
46
|
should_have_a_value_for :icon_farm => '3'
|
46
47
|
|
47
48
|
end
|
49
|
+
|
50
|
+
context "when populating from an XML document with authenticated user's contacts" do
|
51
|
+
setup do
|
52
|
+
@object = Contact.new(Hpricot.XML(read_fixture('contacts.getList')).at('contacts/contact'))
|
53
|
+
end
|
54
|
+
|
55
|
+
should_have_a_value_for :id => '9302864@N42'
|
56
|
+
should_have_a_value_for :username => 'blinky'
|
57
|
+
should_have_a_value_for :icon_server => '2263'
|
58
|
+
should_have_a_value_for :icon_farm => '3'
|
59
|
+
should_have_a_value_for :realname => 'Mr Blinky'
|
60
|
+
should_have_a_value_for :location => 'Middletown'
|
61
|
+
|
62
|
+
end
|
63
|
+
|
48
64
|
|
49
65
|
context "in general" do
|
50
66
|
|
@@ -54,7 +70,7 @@ module Fleakr::Objects
|
|
54
70
|
|
55
71
|
User.stubs(:new).returns(user)
|
56
72
|
|
57
|
-
[:id, :username, :icon_server, :icon_farm].each do |method|
|
73
|
+
[:id, :username, :icon_server, :icon_farm, :realname, :location].each do |method|
|
58
74
|
contact.stubs(method).with().returns(method.to_s)
|
59
75
|
user.expects("#{method}=".to_sym).with(method.to_s)
|
60
76
|
end
|
@@ -7,7 +7,7 @@ module Fleakr::Objects
|
|
7
7
|
|
8
8
|
should_have_many :photos, :groups, :sets, :contacts, :tags
|
9
9
|
|
10
|
-
should_autoload_when_accessing :name, :photos_url, :profile_url, :photos_count,
|
10
|
+
should_autoload_when_accessing :name, :photos_url, :profile_url, :photos_count, :location, :with => :load_info
|
11
11
|
should_autoload_when_accessing :icon_server, :icon_farm, :pro, :admin, :icon_url, :with => :load_info
|
12
12
|
|
13
13
|
context "The User class" do
|