evri_rpx 1.0.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.
Files changed (41) hide show
  1. data/.document +5 -0
  2. data/.gitignore +5 -0
  3. data/CHANGELOG.markdown +10 -0
  4. data/LICENSE +21 -0
  5. data/README.markdown +144 -0
  6. data/Rakefile +73 -0
  7. data/VERSION +1 -0
  8. data/certs/cacert.pem +3154 -0
  9. data/evri_rpx.gemspec +82 -0
  10. data/lib/evri/rpx.rb +4 -0
  11. data/lib/evri/rpx/contact.rb +18 -0
  12. data/lib/evri/rpx/contact_list.rb +27 -0
  13. data/lib/evri/rpx/credentials.rb +65 -0
  14. data/lib/evri/rpx/mappings.rb +19 -0
  15. data/lib/evri/rpx/session.rb +161 -0
  16. data/lib/evri/rpx/user.rb +105 -0
  17. data/lib/evri_rpx.rb +13 -0
  18. data/spec/evri/rpx/contact_list_spec.rb +39 -0
  19. data/spec/evri/rpx/contact_spec.rb +19 -0
  20. data/spec/evri/rpx/credentials_spec.rb +98 -0
  21. data/spec/evri/rpx/mappings_spec.rb +21 -0
  22. data/spec/evri/rpx/session_spec.rb +154 -0
  23. data/spec/evri/rpx/user_spec.rb +336 -0
  24. data/spec/fixtures/contacts/bob_johnson.json +9 -0
  25. data/spec/fixtures/credentials/dbalatero_facebook.json +32 -0
  26. data/spec/fixtures/credentials/dbalatero_twitter.json +19 -0
  27. data/spec/fixtures/credentials/dbalatero_windowslive.json +15 -0
  28. data/spec/fixtures/mappings/identifiers.json +7 -0
  29. data/spec/fixtures/session/all_mappings.json +12 -0
  30. data/spec/fixtures/session/get_contacts.json +63 -0
  31. data/spec/fixtures/session/map.json +3 -0
  32. data/spec/fixtures/session/normal_error.json +7 -0
  33. data/spec/fixtures/session/service_down_error.json +7 -0
  34. data/spec/fixtures/session/unmap.json +3 -0
  35. data/spec/fixtures/user/dbalatero_facebook.json +31 -0
  36. data/spec/fixtures/user/dbalatero_gmail.json +20 -0
  37. data/spec/fixtures/user/dbalatero_twitter.json +19 -0
  38. data/spec/fixtures/user/dbalatero_windows_live.json +15 -0
  39. data/spec/fixtures/user/dbalatero_yahoo.json +17 -0
  40. data/spec/spec_helper.rb +20 -0
  41. metadata +101 -0
@@ -0,0 +1,9 @@
1
+ {
2
+ "displayName": "Bob Johnson",
3
+ "emails": [
4
+ {
5
+ "type": "other",
6
+ "value": "bob@example.com"
7
+ }
8
+ ]
9
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "profile": {
3
+ "name": {
4
+ "givenName": "David",
5
+ "familyName": "Balatero",
6
+ "formatted": "David Balatero"
7
+ },
8
+ "address": {
9
+ "region": "Washington",
10
+ "country": "United States",
11
+ "postalCode": "98115",
12
+ "locality": "Seattle"
13
+ },
14
+ "photo": "http:\/\/profile.ak.facebook.com\/v230\/745\/68\/n10701789_1299.jpg",
15
+ "displayName": "David Balatero",
16
+ "preferredUsername": "DavidBalatero",
17
+ "url": "http:\/\/www.facebook.com\/profile.php?id=10701789",
18
+ "utcOffset": "-07:00",
19
+ "gender": "male",
20
+ "birthday": "1986-08-31",
21
+ "providerName": "Facebook",
22
+ "primaryKey": "dbalatero",
23
+ "identifier": "http:\/\/www.facebook.com\/profile.php?id=10701789"
24
+ },
25
+ "accessCredentials": {
26
+ "expires": "1245196800",
27
+ "uid": "10701789",
28
+ "type": "Facebook",
29
+ "sessionKey": "2.7kr3H8W-snip"
30
+ },
31
+ "stat": "ok"
32
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "profile": {
3
+ "name": {
4
+ "formatted": "David Balatero"
5
+ },
6
+ "photo": "http:\/\/s3.amazonaws.com\/twitter_production\/profile_images\/196887137\/n10704766_41523711_7282_normal.jpg",
7
+ "displayName": "David Balatero",
8
+ "preferredUsername": "dbalatero",
9
+ "url": "http:\/\/twitter.com\/dbalatero",
10
+ "providerName": "Twitter",
11
+ "identifier": "http:\/\/twitter.com\/account\/profile?user_id=35834683"
12
+ },
13
+ "accessCredentials": {
14
+ "oauthToken": "35834683-jBU3o-snip",
15
+ "type": "OAuth",
16
+ "oauthTokenSecret": "2GjoAgV5-snip"
17
+ },
18
+ "stat": "ok"
19
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "profile": {
3
+ "displayName": "hit me with that motown funk",
4
+ "preferredUsername": "hit me with that motown funk",
5
+ "url": "http:\/\/cid-f032362d64442690.spaces.live.com\/",
6
+ "providerName": "Windows Live",
7
+ "identifier": "http:\/\/cid-f032362d64442690.spaces.live.com\/",
8
+ "email": "dbalatero16@hotmail.com"
9
+ },
10
+ "accessCredentials": {
11
+ "eact": "eact%3DJvtJUb4%252Bx1InXqjglTBWX-snip",
12
+ "type": "WindowsLive"
13
+ },
14
+ "stat": "ok"
15
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "stat": "ok",
3
+ "identifiers": [
4
+ "http:\/\/brian.myopenid.com\/",
5
+ "http:\/\/brianellin.com\/"
6
+ ]
7
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "mappings": {
3
+ "1": [
4
+ "http:\/\/cygnus.myopenid.com\/"
5
+ ],
6
+ "2": [
7
+ "http:\/\/brianellin.com\/",
8
+ "http:\/\/brian.myopenid.com\/"
9
+ ]
10
+ },
11
+ "stat": "ok"
12
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "response": {
3
+ "totalResults": 5,
4
+ "startIndex": 1,
5
+ "entry": [
6
+ {
7
+ "displayName": "Bob Johnson",
8
+ "emails": [
9
+ {
10
+ "type": "other",
11
+ "value": "bob@example.com"
12
+ }
13
+ ]
14
+ },
15
+ {
16
+ "displayName": "Cindy Smith",
17
+ "emails": [
18
+ {
19
+ "type": "other",
20
+ "value": "cindy.smith@example.com"
21
+ }
22
+ ]
23
+ },
24
+ {
25
+ "displayName": "Fred Williams",
26
+ "emails": [
27
+ {
28
+ "type": "other",
29
+ "value": "fred.williams@example.com"
30
+ }
31
+ ]
32
+ },
33
+ {
34
+ "emails": [
35
+ {
36
+ "type": "other",
37
+ "value": "j.lewis@example.com"
38
+ }
39
+ ]
40
+ },
41
+ {
42
+ "displayName": "Mary Jones",
43
+ "emails": [
44
+ {
45
+ "type": "other",
46
+ "value": "mary.jones@example.com"
47
+ }
48
+ ]
49
+ },
50
+ {
51
+ "displayName": "Patricia Green",
52
+ "emails": [
53
+ {
54
+ "type": "other",
55
+ "value": "p.green@example.com"
56
+ }
57
+ ]
58
+ }
59
+ ],
60
+ "itemsPerPage": 5
61
+ },
62
+ "stat": "ok"
63
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "stat": "ok"
3
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "err": {
3
+ "msg": "Data not found",
4
+ "code": 2
5
+ },
6
+ "stat": "fail"
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "err": {
3
+ "msg": "Service Temporarily Unavailable",
4
+ "code": -1
5
+ },
6
+ "stat": "fail"
7
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "stat": "ok"
3
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "profile": {
3
+ "name": {
4
+ "givenName": "David",
5
+ "familyName": "Balatero",
6
+ "formatted": "David Balatero"
7
+ },
8
+ "address": {
9
+ "region": "Washington",
10
+ "country": "United States",
11
+ "postalCode": "98115",
12
+ "locality": "Seattle"
13
+ },
14
+ "photo": "http:\/\/profile.ak.facebook.com\/v230\/745\/68\/n10701789_1299.jpg",
15
+ "displayName": "David Balatero",
16
+ "preferredUsername": "DavidBalatero",
17
+ "url": "http:\/\/www.facebook.com\/profile.php?id=10701789",
18
+ "utcOffset": "-07:00",
19
+ "gender": "male",
20
+ "birthday": "1986-08-31",
21
+ "providerName": "Facebook",
22
+ "identifier": "http:\/\/www.facebook.com\/profile.php?id=10701789"
23
+ },
24
+ "accessCredentials": {
25
+ "expires": "1244930400",
26
+ "uid": "10701789",
27
+ "type": "Facebook",
28
+ "sessionKey": "--------snip---------"
29
+ },
30
+ "stat": "ok"
31
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "profile": {
3
+ "verifiedEmail": "dbalatero@gmail.com",
4
+ "name": {
5
+ "givenName": "David",
6
+ "familyName": "Balatero",
7
+ "formatted": "David Balatero"
8
+ },
9
+ "address": {
10
+ "country": "United States"
11
+ },
12
+ "displayName": "dbalatero",
13
+ "preferredUsername": "dbalatero",
14
+ "providerName": "Google",
15
+ "primaryKey": "DavidBalateroTestRPXX",
16
+ "identifier": "https:\/\/www.google.com\/accounts\/o8\/id?id=AItOawm4ssnouvp4V-snip",
17
+ "email": "dbalatero@gmail.com"
18
+ },
19
+ "stat": "ok"
20
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "profile": {
3
+ "name": {
4
+ "formatted": "David Balatero"
5
+ },
6
+ "photo": "http:\/\/s3.amazonaws.com\/twitter_production\/profile_images\/196887137\/n10704766_41523711_7282_normal.jpg",
7
+ "displayName": "David Balatero",
8
+ "preferredUsername": "dbalatero",
9
+ "url": "http:\/\/twitter.com\/dbalatero",
10
+ "providerName": "Twitter",
11
+ "identifier": "http:\/\/twitter.com\/account\/profile?user_id=35834683"
12
+ },
13
+ "accessCredentials": {
14
+ "oauthToken": "snip-Wd0QIbFJ34wDunsyB0H7t-snip",
15
+ "type": "OAuth",
16
+ "oauthTokenSecret": "snip-uJ6WOmJMuPRXZx-snip"
17
+ },
18
+ "stat": "ok"
19
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "profile": {
3
+ "displayName": "hit me with that motown funk",
4
+ "preferredUsername": "hit me with that motown funk",
5
+ "url": "http:\/\/cid-f032362d64442690.spaces.live.com\/",
6
+ "providerName": "Windows Live",
7
+ "identifier": "http:\/\/cid-f032362d64442690.spaces.live.com\/",
8
+ "email": "dbalatero16@hotmail.com"
9
+ },
10
+ "accessCredentials": {
11
+ "eact": "--snip--",
12
+ "type": "WindowsLive"
13
+ },
14
+ "stat": "ok"
15
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "profile": {
3
+ "verifiedEmail": "dbalatero@yahoo.com",
4
+ "name": {
5
+ "formatted": "David Balatero"
6
+ },
7
+ "displayName": "David Balatero",
8
+ "preferredUsername": "David",
9
+ "utcOffset": "-08:00",
10
+ "gender": "male",
11
+ "providerName": "Yahoo!",
12
+ "primaryKey": "David",
13
+ "identifier": "https:\/\/me.yahoo.com\/a\/fkoI_0kArtImhTBCf4HkPq7r42jX5w--#84c57",
14
+ "email": "dbalatero@yahoo.com"
15
+ },
16
+ "stat": "ok"
17
+ }
@@ -0,0 +1,20 @@
1
+ require 'spec'
2
+
3
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
4
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
5
+ require 'evri_rpx'
6
+
7
+ Spec::Runner.configure do |config|
8
+
9
+ end
10
+
11
+ require 'fakeweb'
12
+ FakeWeb.allow_net_connect = false
13
+
14
+ def json_fixture(path)
15
+ JSON.parse(File.read(fixture_path(path)))
16
+ end
17
+
18
+ def fixture_path(path)
19
+ File.expand_path(File.join(File.dirname(__FILE__), 'fixtures', path))
20
+ end
metadata ADDED
@@ -0,0 +1,101 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: evri_rpx
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - David Balatero
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-06-17 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description:
17
+ email: dbalatero@evri.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - LICENSE
24
+ - README.markdown
25
+ files:
26
+ - .document
27
+ - .gitignore
28
+ - CHANGELOG.markdown
29
+ - LICENSE
30
+ - README.markdown
31
+ - Rakefile
32
+ - VERSION
33
+ - certs/cacert.pem
34
+ - evri_rpx.gemspec
35
+ - lib/evri/rpx.rb
36
+ - lib/evri/rpx/contact.rb
37
+ - lib/evri/rpx/contact_list.rb
38
+ - lib/evri/rpx/credentials.rb
39
+ - lib/evri/rpx/mappings.rb
40
+ - lib/evri/rpx/session.rb
41
+ - lib/evri/rpx/user.rb
42
+ - lib/evri_rpx.rb
43
+ - spec/evri/rpx/contact_list_spec.rb
44
+ - spec/evri/rpx/contact_spec.rb
45
+ - spec/evri/rpx/credentials_spec.rb
46
+ - spec/evri/rpx/mappings_spec.rb
47
+ - spec/evri/rpx/session_spec.rb
48
+ - spec/evri/rpx/user_spec.rb
49
+ - spec/fixtures/contacts/bob_johnson.json
50
+ - spec/fixtures/credentials/dbalatero_facebook.json
51
+ - spec/fixtures/credentials/dbalatero_twitter.json
52
+ - spec/fixtures/credentials/dbalatero_windowslive.json
53
+ - spec/fixtures/mappings/identifiers.json
54
+ - spec/fixtures/session/all_mappings.json
55
+ - spec/fixtures/session/get_contacts.json
56
+ - spec/fixtures/session/map.json
57
+ - spec/fixtures/session/normal_error.json
58
+ - spec/fixtures/session/service_down_error.json
59
+ - spec/fixtures/session/unmap.json
60
+ - spec/fixtures/user/dbalatero_facebook.json
61
+ - spec/fixtures/user/dbalatero_gmail.json
62
+ - spec/fixtures/user/dbalatero_twitter.json
63
+ - spec/fixtures/user/dbalatero_windows_live.json
64
+ - spec/fixtures/user/dbalatero_yahoo.json
65
+ - spec/spec_helper.rb
66
+ has_rdoc: true
67
+ homepage: http://github.com/dbalatero/evri_rpx
68
+ licenses: []
69
+
70
+ post_install_message:
71
+ rdoc_options:
72
+ - --charset=UTF-8
73
+ require_paths:
74
+ - lib
75
+ required_ruby_version: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: "0"
80
+ version:
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: "0"
86
+ version:
87
+ requirements: []
88
+
89
+ rubyforge_project: evrigems
90
+ rubygems_version: 1.3.4
91
+ signing_key:
92
+ specification_version: 3
93
+ summary: An API wrapper for the RPXNow.com login service.
94
+ test_files:
95
+ - spec/evri/rpx/contact_list_spec.rb
96
+ - spec/evri/rpx/contact_spec.rb
97
+ - spec/evri/rpx/credentials_spec.rb
98
+ - spec/evri/rpx/mappings_spec.rb
99
+ - spec/evri/rpx/session_spec.rb
100
+ - spec/evri/rpx/user_spec.rb
101
+ - spec/spec_helper.rb