gmail_contacts 1.1 → 1.2

Sign up to get free protection for your applications and to get access to all the features.
data.tar.gz.sig CHANGED
Binary file
data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ === 1.2 / 2009-05-05
2
+
3
+ * 2 minor enhancements
4
+ * Allow for saved session tokens in GmailContacts#fetch
5
+ * Switched to minitest
6
+
1
7
  === 1.1 / 2009-04-30
2
8
 
3
9
  * 1 minor enhancement
data/Rakefile CHANGED
@@ -8,8 +8,11 @@ Hoe.new('gmail_contacts', GmailContacts::VERSION) do |p|
8
8
  p.rubyforge_name = 'seattlerb' # if different than lowercase project name
9
9
  p.developer 'Eric Hodel', 'drbrain@segment7.net'
10
10
 
11
+ p.testlib = :minitest
12
+
11
13
  p.extra_deps << ['gdata', '~> 1.1']
12
14
  p.extra_deps << ['nokogiri', '~> 1.2']
15
+ p.extra_dev_deps << ['minitest', '~> 1.3']
13
16
  end
14
17
 
15
18
  # vim: syntax=Ruby
@@ -10,7 +10,7 @@ require 'nokogiri'
10
10
 
11
11
  class GmailContacts
12
12
 
13
- VERSION = '1.1'
13
+ VERSION = '1.2'
14
14
 
15
15
  Contact = Struct.new :title, :emails, :ims, :phone_numbers, :addresses,
16
16
  :photo_url
@@ -85,7 +85,7 @@ class GmailContacts
85
85
  ##
86
86
  # Fetches contacts from google for +email+.
87
87
 
88
- def fetch(email)
88
+ def fetch(email, revoke = true)
89
89
  get_token
90
90
 
91
91
  uri = "http://www.google.com/m8/feeds/contacts/#{email}/full"
@@ -105,7 +105,7 @@ class GmailContacts
105
105
 
106
106
  yield if block_given?
107
107
  ensure
108
- revoke_token if token?
108
+ revoke_token if revoke and token?
109
109
  end
110
110
 
111
111
  ##
@@ -186,10 +186,12 @@ class GData::Client::Contacts
186
186
  def authsub_token=(token)
187
187
  @stub_token = token
188
188
  auth_handler = Object.new
189
- def auth_handler.upgrade() @upgraded = true end
190
- def auth_handler.upgraded?() @upgraded end
189
+ auth_handler.instance_variable_set :@revoked, nil
190
+ auth_handler.instance_variable_set :@upgraded, nil
191
191
  def auth_handler.revoke() @revoked = true end
192
192
  def auth_handler.revoked?() @revoked end
193
+ def auth_handler.upgrade() @upgraded = true end
194
+ def auth_handler.upgraded?() @upgraded end
193
195
  self.auth_handler = auth_handler
194
196
  end
195
197
 
@@ -1,9 +1,10 @@
1
- require 'test/unit'
1
+ require 'rubygems'
2
+ require 'minitest/autorun'
2
3
  require 'gmail_contacts'
3
4
  require 'gmail_contacts/test_stub'
4
5
  require 'pp'
5
6
 
6
- class TestGmailContacts < Test::Unit::TestCase
7
+ class TestGmailContacts < MiniTest::Unit::TestCase
7
8
 
8
9
  def setup
9
10
  @gc = GmailContacts.new 'token'
@@ -43,7 +44,7 @@ class TestGmailContacts < Test::Unit::TestCase
43
44
  raise GData::Client::AuthorizationError, res
44
45
  end
45
46
 
46
- assert_raise GData::Client::AuthorizationError do
47
+ assert_raises GData::Client::AuthorizationError do
47
48
  @gc.fetch 'notme@example.com'
48
49
  end
49
50
 
@@ -57,6 +58,24 @@ class TestGmailContacts < Test::Unit::TestCase
57
58
  assert @api.auth_handler.revoked?
58
59
  end
59
60
 
61
+ def test_fetch_no_revoke
62
+ @api.stub_data << GmailContacts::TestStub::CONTACTS
63
+ @api.stub_data << GmailContacts::TestStub::CONTACTS2
64
+
65
+ @gc.fetch 'eric@example.com', false
66
+
67
+ assert_equal 3, @gc.contacts.length
68
+
69
+ assert_equal 2, @api.stub_urls.length
70
+ assert_equal 'http://www.google.com/m8/feeds/contacts/eric@example.com/full',
71
+ @api.stub_urls.shift
72
+ assert_equal 'http://www.google.com/m8/feeds/contacts/eric%40example.com/full?start-index=3&max-results=2',
73
+ @api.stub_urls.shift
74
+
75
+ assert @api.auth_handler.upgraded?
76
+ refute @api.auth_handler.revoked?
77
+ end
78
+
60
79
  def test_fetch_photo
61
80
  @api.stub_data << 'THIS IS A PHOTO!'
62
81
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gmail_contacts
3
3
  version: !ruby/object:Gem::Version
4
- version: "1.1"
4
+ version: "1.2"
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Hodel
@@ -30,7 +30,7 @@ cert_chain:
30
30
  x52qPcexcYZR7w==
31
31
  -----END CERTIFICATE-----
32
32
 
33
- date: 2009-05-01 00:00:00 -07:00
33
+ date: 2009-05-05 00:00:00 -07:00
34
34
  default_executable:
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
@@ -53,6 +53,16 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: "1.2"
55
55
  version:
56
+ - !ruby/object:Gem::Dependency
57
+ name: minitest
58
+ type: :development
59
+ version_requirement:
60
+ version_requirements: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ~>
63
+ - !ruby/object:Gem::Version
64
+ version: "1.3"
65
+ version:
56
66
  - !ruby/object:Gem::Dependency
57
67
  name: hoe
58
68
  type: :development
@@ -112,7 +122,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
122
  requirements: []
113
123
 
114
124
  rubyforge_project: seattlerb
115
- rubygems_version: 1.3.2.2179
125
+ rubygems_version: 1.3.3
116
126
  signing_key:
117
127
  specification_version: 3
118
128
  summary: Simple Gmail contacts extraction using GData
metadata.gz.sig CHANGED
Binary file