net 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.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/CHANGELOG.md +4 -0
  4. data/README.md +69 -9
  5. data/lib/net/instagram.rb +10 -0
  6. data/lib/net/instagram/api/configuration.rb +14 -0
  7. data/lib/net/instagram/api/request.rb +51 -0
  8. data/lib/net/instagram/config.rb +16 -0
  9. data/lib/net/instagram/errors.rb +3 -0
  10. data/lib/net/instagram/errors/private_user.rb +11 -0
  11. data/lib/net/instagram/errors/response_error.rb +14 -0
  12. data/lib/net/instagram/errors/unknown_user.rb +11 -0
  13. data/lib/net/instagram/models.rb +1 -0
  14. data/lib/net/instagram/models/user.rb +64 -0
  15. data/lib/net/twitter/models/user.rb +4 -4
  16. data/lib/net/version.rb +1 -1
  17. data/spec/net/instagram/models/user_spec.rb +61 -0
  18. data/spec/net/twitter/models/user_spec.rb +59 -59
  19. data/spec/spec_helper.rb +0 -11
  20. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_a_private_username/.yml +144 -0
  21. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml +149 -0
  22. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_unknown_username/.yml +54 -0
  23. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_a_private_username/.yml +144 -0
  24. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml +149 -0
  25. data/spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_unknown_username/.yml +54 -0
  26. data/spec/support/vcr.rb +4 -1
  27. metadata +26 -2
@@ -0,0 +1,144 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.instagram.com/v1/users/search?client_id=CLIENT_ID&q=brohemian
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - private, no-cache, no-store, must-revalidate
23
+ Content-Language:
24
+ - en
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Date:
28
+ - Wed, 15 Oct 2014 19:00:20 GMT
29
+ Expires:
30
+ - Sat, 01 Jan 2000 00:00:00 GMT
31
+ Pragma:
32
+ - no-cache
33
+ Server:
34
+ - nginx
35
+ Set-Cookie:
36
+ - ccode=US; Path=/
37
+ - csrftoken=5e23a2f602e27a1e839305a59d1075fa; expires=Wed, 14-Oct-2015 19:00:20
38
+ GMT; Max-Age=31449600; Path=/
39
+ Vary:
40
+ - Cookie, Accept-Language, Accept-Encoding
41
+ X-Ratelimit-Limit:
42
+ - '5000'
43
+ X-Ratelimit-Remaining:
44
+ - '4971'
45
+ Content-Length:
46
+ - '2422'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"meta":{"code":200},"data":[{"username":"brohemian","bio":"\u044f\u03c3\u0443\u03b1\u2113\u0442\u0443;
52
+ \u0454\u0455\u0442. \u00b9\u2079\u2079\u2076\r\n\r\nPeople allowed to have
53
+ my babies:\r\n-Christofer Drew\r\n-Alex Gaskarth\r\n-Tom Higgenson\r\n-Louis
54
+ Tomlinson\r\n-you(;\r\n","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_11590862_75sq_1339895837.jpg","full_name":"\u272f
55
+ ria mia bo-bia.","id":"11590862"},{"username":"brohemian.rhapsody","bio":"-homeschooled
56
+ Highschool student\ud83c\udf43\n-maryland\u2728\n-Psalms 13:1-6\ud83c\udf3e\n-let''s
57
+ be friends\ud83d\udc4b","website":"https:\/\/m.youtube.com\/watch?v=crHqgShbhbQ","profile_picture":"http:\/\/photos-h.ak.instagram.com\/hphotos-ak-xfa1\/10706972_501377809965567_570371482_a.jpg","full_name":"\u2600\ufe0fAnna
58
+ Marie\u2600\ufe0f","id":"274422186"},{"username":"rhapsodybrohemian","bio":"","website":"","profile_picture":"http:\/\/photos-g.ak.instagram.com\/hphotos-ak-xaf1\/10724998_984982894861062_55867717_a.jpg","full_name":"Jenna
59
+ | \u264c\ufe0f","id":"243502445"},{"username":"brohemian_trapcity","bio":"Like
60
+ a Phoenix, I have risen from the ashes. A fucking Phoenix who will fucking
61
+ destroy all swords.\n\ud83d\udc26@mc_mikeymidz","website":"http:\/\/facebook.com\/mikeymarcotte","profile_picture":"http:\/\/photos-d.ak.instagram.com\/hphotos-ak-xfa1\/10593392_1508155722753651_562376906_a.jpg","full_name":"Michael
62
+ Justin Marcotte","id":"19518957"},{"username":"brohemianbenny","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_493333756_75sq_1399146544.jpg","full_name":"Benjamin
63
+ Collins","id":"493333756"},{"username":"_brohemianrhapsodyy","bio":"My heart
64
+ just wouldn''t be in it, you know? Haven''t got one. | \ud83d\udc99 Electric
65
+ Blue R53 MINI Cooper S. \ud83d\udc99 \ud83d\udc01","website":"http:\/\/twitter.com\/xOhaiGinna","profile_picture":"http:\/\/photos-h.ak.instagram.com\/hphotos-ak-xaf1\/10005468_697832380292495_945252116_a.jpg","full_name":"Ginna
66
+ Elizabeth \u2693","id":"23594063"},{"username":"brohemian_rhapsody64","bio":"Twitter
67
+ @Scottie_B_64","website":"","profile_picture":"http:\/\/photos-e.ak.instagram.com\/hphotos-ak-xfp1\/10499178_336136809867484_217588539_a.jpg","full_name":"Scottie","id":"1337874941"},{"username":"brohemian_m5","bio":"I
68
+ love beer, watching blade, and going to sleep.","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_333965545_75sq_1388945917.jpg","full_name":"Richard","id":"333965545"},{"username":"brohemianraspady","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_288397402_75sq_1394052597.jpg","full_name":"","id":"288397402"},{"username":"brohemianthefizifth","bio":"Did
69
+ you touch my drum set?!","website":"","profile_picture":"http:\/\/photos-f.ak.instagram.com\/hphotos-ak-xfa1\/10597478_515479898585277_389014150_a.jpg","full_name":"Joe
70
+ Harris","id":"1478459315"},{"username":"brohemianraphsody","bio":"","website":"","profile_picture":"http:\/\/photos-b.ak.instagram.com\/hphotos-ak-xpf1\/10560929_690142464388169_1414415525_a.jpg","full_name":"Brett
71
+ Wion","id":"289684838"},{"username":"brohemian_trapsody","bio":"Uncw\ud83c\udf0a\u2600\ufe0f
72
+ || video games\ud83d\udc7e\ud83c\udfae || emojis \ud83d\ude04\ud83d\udc34\ud83d\udc11\ud83d\udc12\ud83d\udc7b\ud83c\udf85\ud83d\ude1a\ud83d\udca8","website":"","profile_picture":"http:\/\/photos-e.ak.instagram.com\/hphotos-ak-xfp1\/10499160_507018519443636_1389539206_a.jpg","full_name":"","id":"176878551"},{"username":"brohemian6","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_250637187_75sq_1352593302.jpg","full_name":"Jeremy
73
+ Cohen Hoffing","id":"250637187"},{"username":"techboy0106","bio":"\ud83d\udcbdQueen
74
+ Is Best\ud83d\udcbd\n\ud83c\udf42\u699b \u683c\u96f7\u65af\ud83c\udf42\n\u231a\ufe0fTF2
75
+ Is The Game\ud83d\udd2b\n\u26bd\ufe0fSoccer Is Fun\u26bd\ufe0f\n\ud83d\udcfaMinecraft?\ud83d\udcfa","website":"http:\/\/youtu.be\/aqeVxxMosMI","profile_picture":"http:\/\/photos-f.ak.instagram.com\/hphotos-ak-xaf1\/10727568_545091692288557_1563289922_a.jpg","full_name":"","id":"411020917"},{"username":"brohemian84","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_945186240_75sq_1389150725.jpg","full_name":"James","id":"945186240"},{"username":"brohemian_dabsody","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_33596966_75sq_1376842047.jpg","full_name":"Nate
76
+ James Tamagne","id":"33596966"},{"username":"brohemian_han_brolo","bio":"Its
77
+ always fun time YAY!","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_315334217_75sq_1361859659.jpg","full_name":"King","id":"315334217"},{"username":"thebrohemian","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_375113188_75sq_1370153917.jpg","full_name":"The
78
+ Brohemian","id":"375113188"},{"username":"brohemianrhapsody01","bio":"","website":"","profile_picture":"http:\/\/photos-g.ak.instagram.com\/hphotos-ak-xaf1\/10666056_1466687220270622_1561271059_a.jpg","full_name":"Connor-
79
+ Blackman","id":"1493141422"},{"username":"brohemiam_rhapsodys","bio":"My anaconda
80
+ don''t\n**SMHS** E- what? Eagles!**\nKik - MonsterByonix\n14 and Swaggy","website":"","profile_picture":"http:\/\/photos-f.ak.instagram.com\/hphotos-ak-xaf1\/10632025_1493107157607493_555180944_a.jpg","full_name":"Angel
81
+ Janveaux","id":"1496775347"},{"username":"brohemian88","bio":"Never look back
82
+ unless you are planning to go that way.","website":"","profile_picture":"http:\/\/scontent-a.cdninstagram.com\/hphotos-xpa1\/outbound-distillery\/l\/t0.0-20\/OBPTH\/profiles\/profile_640357419_75sq_1383951300.jpg","full_name":"Nick
83
+ Perry","id":"640357419"},{"username":"brohemians","bio":"Hacemos Fotos y Videitos.","website":"http:\/\/www.brohemians.cloudvent.net","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_505400720_75sq_1376326054.jpg","full_name":"brohemians","id":"505400720"},{"username":"brohemian__","bio":"Claire
84
+ Noel Elliott \u2764\r\nI love taking and looking at pictures. ","website":"http:\/\/l-o-v-everyone.tumblr.com\/","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_21311496_75sq_1327781095.jpg","full_name":"Keep
85
+ Calm \u2654","id":"21311496"},{"username":"brohemian_rhapsody","bio":"New
86
+ to this instagram business...","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_21486826_75sq_1327878545.jpg","full_name":"Akasha","id":"21486826"},{"username":"bro_hemian","bio":"I''m
87
+ the third worst person in the entire world, fancy being terrible with me?\r\nWriter|Musician|Part-time
88
+ Hipster ","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_46765907_75sq_1335294703.jpg","full_name":"Taylor","id":"46765907"},{"username":"brohemiangraffiti","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"J
89
+ Coble","id":"186572054"},{"username":"brohemian2013","bio":"","website":"http:\/\/m.youtube.com\/watch?v=hr08XNjD5iM","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_237177394_75sq_1350306447.jpg","full_name":"","id":"237177394"},{"username":"brohemianrhapsody","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"995420102"},{"username":"brohemianlovesong","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"1399712728"}]}'
90
+ http_version:
91
+ recorded_at: Wed, 15 Oct 2014 19:00:20 GMT
92
+ - request:
93
+ method: get
94
+ uri: https://api.instagram.com/v1/users/11590862?client_id=CLIENT_ID
95
+ body:
96
+ encoding: US-ASCII
97
+ string: ''
98
+ headers:
99
+ Accept-Encoding:
100
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
101
+ Accept:
102
+ - "*/*"
103
+ User-Agent:
104
+ - Ruby
105
+ response:
106
+ status:
107
+ code: 400
108
+ message: BAD REQUEST
109
+ headers:
110
+ Cache-Control:
111
+ - private, no-cache, no-store, must-revalidate
112
+ Content-Language:
113
+ - en
114
+ Content-Type:
115
+ - application/json; charset=utf-8
116
+ Date:
117
+ - Wed, 15 Oct 2014 19:00:20 GMT
118
+ Expires:
119
+ - Sat, 01 Jan 2000 00:00:00 GMT
120
+ Pragma:
121
+ - no-cache
122
+ Server:
123
+ - nginx
124
+ Set-Cookie:
125
+ - ccode=US; Path=/
126
+ - csrftoken=e60c15214d50b5a4a547846da7c2858e; expires=Wed, 14-Oct-2015 19:00:20
127
+ GMT; Max-Age=31449600; Path=/
128
+ Vary:
129
+ - Cookie, Accept-Language
130
+ X-Ratelimit-Limit:
131
+ - '5000'
132
+ X-Ratelimit-Remaining:
133
+ - '4970'
134
+ Content-Length:
135
+ - '103'
136
+ Connection:
137
+ - keep-alive
138
+ body:
139
+ encoding: UTF-8
140
+ string: '{"meta":{"error_type":"APINotAllowedError","code":400,"error_message":"you
141
+ cannot view this resource"}}'
142
+ http_version:
143
+ recorded_at: Wed, 15 Oct 2014 19:00:20 GMT
144
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,149 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.instagram.com/v1/users/search?client_id=CLIENT_ID&q=Fullscreen
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - private, no-cache, no-store, must-revalidate
23
+ Content-Language:
24
+ - en
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Date:
28
+ - Wed, 15 Oct 2014 18:58:27 GMT
29
+ Expires:
30
+ - Sat, 01 Jan 2000 00:00:00 GMT
31
+ Pragma:
32
+ - no-cache
33
+ Server:
34
+ - nginx
35
+ Set-Cookie:
36
+ - ccode=US; Path=/
37
+ - csrftoken=48db9e9d294ac7a1660e9506dbd787be; expires=Wed, 14-Oct-2015 18:58:27
38
+ GMT; Max-Age=31449600; Path=/
39
+ Vary:
40
+ - Cookie, Accept-Language, Accept-Encoding
41
+ X-Ratelimit-Limit:
42
+ - '5000'
43
+ X-Ratelimit-Remaining:
44
+ - '4974'
45
+ Content-Length:
46
+ - '2575'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"meta":{"code":200},"data":[{"username":"fullscreen","bio":"Let your
52
+ dreams come true...","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_41672819_75sq_1390767340.jpg","full_name":"Kermit
53
+ De Luxe","id":"41672819"},{"username":"fullscreen_inc","bio":"The First Media
54
+ Company for the Connected Generation.\n#PowerToTheCreators","website":"http:\/\/www.Fullscreen.com","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_270587948_75sq_1395968129.jpg","full_name":"Fullscreen","id":"270587948"},{"username":"leslawpajek","bio":"I''m
55
+ a professional filmmaker, fan of Japan. My rules are simple: like 4 like,
56
+ (un)follow 4 (un)follow - unless you''re a spammer. LINE: cinemax","website":"","profile_picture":"http:\/\/photos-e.ak.instagram.com\/hphotos-ak-xfa1\/10608023_1517060581843308_1664621766_a.jpg","full_name":"IMAGiNE
57
+ FiLMS","id":"2569886"},{"username":"fullscreenit","bio":"\u2600\ufe0f___________\ud83c\udfc3","website":"http:\/\/nelsonmelgar.com","profile_picture":"http:\/\/photos-c.ak.instagram.com\/hphotos-ak-xfa1\/10724219_787575974631882_2133138302_a.jpg","full_name":"Nelson
58
+ Melgar","id":"416534668"},{"username":"fullscreenlamonsta","bio":"I am the
59
+ leader of loyaltybeforeroyalty","website":"http:\/\/www.youtube.com\/lamonsta","profile_picture":"http:\/\/photos-c.ak.instagram.com\/hphotos-ak-xfp1\/10554139_663724567049450_1192667532_a.jpg","full_name":"Lamonsta","id":"1440026224"},{"username":"fullscreenmilo","bio":"","website":"","profile_picture":"http:\/\/photos-d.ak.instagram.com\/hphotos-ak-xaf1\/10654909_270596979731099_1630051846_a.jpg","full_name":"Milo
60
+ Cruz","id":"247576002"},{"username":"fullscreentrish","bio":"Community Manager
61
+ @Fullscreen. Film junkie. Concert addict. Wannabe chef. Taking photos whenever,
62
+ wherever!","website":"http:\/\/fullscreen.net","profile_picture":"http:\/\/photos-e.ak.instagram.com\/hphotos-ak-xaf1\/1724340_283066951879076_826800923_a.jpg","full_name":"Trish","id":"1501092156"},{"username":"ryuzakikamikaze","bio":"Fala
63
+ a\u00ed pessoas bunitas aqui e o ryuzaki e desta vez n\u00f3s estamos agr
64
+ no instagram :3","website":"http:\/\/www.youtube.com\/user\/leryuzakikamikaze","profile_picture":"http:\/\/photos-e.ak.instagram.com\/hphotos-ak-xfa1\/10644089_823364024349380_1950878469_a.jpg","full_name":"J\u00e3o|
65
+ fullscreen","id":"1477538401"},{"username":"poyfullscreenpt","bio":"My name
66
+ is Poy thank you to follow me and like \u003c3 \u003c3","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_17204081_75sq_1385859044.jpg","full_name":"PoyPu
67
+ Fullscreen Band","id":"17204081"},{"username":"fullscreenofficial","bio":"Full
68
+ Screen is an Italian DJ duo.\nBooking: fullskr33n@gmail.com","website":"https:\/\/www.facebook.com\/fullscr33n\/","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_473416451_75sq_1374314343.jpg","full_name":"Full
69
+ Screen","id":"473416451"},{"username":"fullscreen_krit","bio":"","website":"","profile_picture":"http:\/\/photos-a.ak.instagram.com\/hphotos-ak-xaf1\/10684183_322099684629832_1430692670_a.jpg","full_name":"|TGN|
70
+ PARTNER IN CRIME","id":"1225819888"},{"username":"fullscreen1","bio":"\u05e6\u05d9\u05dc\u05d5\u05dd
71
+ \u05d5\u05e2\u05e8\u05d9\u05db\u05d4 - \u05d0\u05d9\u05e8\u05d5\u05e2\u05d9\u05dd,
72
+ \u05d0\u05d5\u05e4\u05e0\u05d4, \u05e7\u05dc\u05d9\u05e4\u05d9\u05dd, \u05ea\u05d3\u05de\u05d9\u05ea.
73
+ 054-9387219","website":"https:\/\/www.facebook.com\/fullscreen1","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_37075703_75sq_1388684550.jpg","full_name":"\u05de\u05e1\u05da
74
+ \u05de\u05dc\u05d0","id":"37075703"},{"username":"hd_fullscreen_gaming","bio":"Life
75
+ Account: david_frm_statefarm\n*COD\n*FIFA\n*SPORTS\n*MINECRAFT\n*XBOXONE\n*PS4","website":"","profile_picture":"http:\/\/photos-d.ak.instagram.com\/hphotos-ak-xpf1\/10553969_1529050753973467_135987297_a.jpg","full_name":"Gaming
76
+ Account","id":"1450067292"},{"username":"bmx_fullscreen","bio":"DM ME BACK
77
+ UP ACCOUNT FOR @bike_life1330\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47\ud83d\udc47","website":"http:\/\/instagram.com\/bike_life1330","profile_picture":"http:\/\/photos-h.ak.instagram.com\/hphotos-ak-xap1\/10401855_472048132931903_1216185133_a.jpg","full_name":"\ud83d\udc47\ud83d\udc47OMG
78
+ BMX\ud83d\udc47\ud83d\udc47","id":"395927937"},{"username":"fsarcade","bio":"Behind
79
+ the scenes of Fullscreen Arcade \u0026 gaming events.","website":"http:\/\/www.youtube.com\/fullscreenarcade","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_372431798_75sq_1368054214.jpg","full_name":"FullScreen
80
+ Arcade","id":"372431798"},{"username":"zhayashii","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_375358116_75sq_1368342903.jpg","full_name":"MangollonTube
81
+ | FullScreen","id":"375358116"},{"username":"fullscreenfarms","bio":"","website":"","profile_picture":"http:\/\/photos-c.ak.instagram.com\/hphotos-ak-xap1\/1689478_804004872978330_1626730704_a.jpg","full_name":"FullScreenFarms","id":"1421396232"},{"username":"fullscreenaccelerate","bio":"YouTube''s
82
+ Mancave.","website":"http:\/\/www.youtube.com\/Accelerate","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_582975060_75sq_1380565067.jpg","full_name":"Accelerate","id":"582975060"},{"username":"johan_fullscreen","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_222869798_75sq_1380296732.jpg","full_name":"","id":"222869798"},{"username":"mucorsario","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_230591272_75sq_1349121966.jpg","full_name":"Marcelo
83
+ Fullscreen","id":"230591272"},{"username":"fullscreenmedia","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_232996244_75sq_1349603671.jpg","full_name":"Harold
84
+ O''Bryant","id":"232996244"},{"username":"fullscreen32","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_240058675_75sq_1355456651.jpg","full_name":"SC","id":"240058675"},{"username":"fullscreennorm","bio":"Love
85
+ is the delightful interval between meeting a beautiful girl and discovering
86
+ that she looks like a haddock.","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_264221424_75sq_1354853534.jpg","full_name":"","id":"264221424"},{"username":"fullscreen255","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"Louise
87
+ garfoot","id":"334173390"},{"username":"fullscreeninc","bio":"Official Apple
88
+ Help - Instagram For More Information Kik Us On @KikAppleProducts","website":"http:\/\/Apple.com","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_343125191_75sq_1365028404.jpg","full_name":"Instagram","id":"343125191"},{"username":"full_screen","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"\u0421\u0435\u0440\u0435\u0436\u043a\u0430","id":"419829651"},{"username":"fullscreengo","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"Fullscreen
89
+ GO","id":"458392598"},{"username":"fullscreenphotos","bio":"Hey I just use
90
+ this acc to post cool full screen photos of famous people\/youtubers","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_510854299_75sq_1376688275.jpg","full_name":"Sierra","id":"510854299"},{"username":"fullscreennormal770","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"565451483"},{"username":"fullscreener","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"Fulldsb","id":"631764547"},{"username":"ipinfullscreen","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_671085751_75sq_1384366037.jpg","full_name":"ipin
91
+ fullscreen","id":"671085751"},{"username":"fullscreendude","bio":"","website":"","profile_picture":"http:\/\/scontent-b.cdninstagram.com\/hphotos-xap1\/outbound-distillery\/t0.0-20\/OBPTH\/profiles\/anonymousUser.jpg","full_name":"","id":"810579730"},{"username":"jspade_fullscreen","bio":"Email
92
+ me at jspade@fullscreen.net","website":"http:\/\/www.fullscreenvirals.net","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_917287093_75sq_1388780355.jpg","full_name":"Jason
93
+ Spade","id":"917287093"},{"username":"fullscreen56","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"1424209486"},{"username":"fullscreenproduction","bio":"","website":"http:\/\/www.fullscreen.hr","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"1467498522"},{"username":"fullscreen71","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"1498965524"},{"username":"fullscreendev","bio":"","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/anonymousUser.jpg","full_name":"","id":"1501212944"}]}'
94
+ http_version:
95
+ recorded_at: Wed, 15 Oct 2014 18:58:27 GMT
96
+ - request:
97
+ method: get
98
+ uri: https://api.instagram.com/v1/users/41672819?client_id=CLIENT_ID
99
+ body:
100
+ encoding: US-ASCII
101
+ string: ''
102
+ headers:
103
+ Accept-Encoding:
104
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
105
+ Accept:
106
+ - "*/*"
107
+ User-Agent:
108
+ - Ruby
109
+ response:
110
+ status:
111
+ code: 200
112
+ message: OK
113
+ headers:
114
+ Cache-Control:
115
+ - private, no-cache, no-store, must-revalidate
116
+ Content-Language:
117
+ - en
118
+ Content-Type:
119
+ - application/json; charset=utf-8
120
+ Date:
121
+ - Wed, 15 Oct 2014 18:58:28 GMT
122
+ Expires:
123
+ - Sat, 01 Jan 2000 00:00:00 GMT
124
+ Pragma:
125
+ - no-cache
126
+ Server:
127
+ - nginx
128
+ Set-Cookie:
129
+ - ccode=US; Path=/
130
+ - csrftoken=d394e618bb5b63dd2b18cea79d12e4e3; expires=Wed, 14-Oct-2015 18:58:28
131
+ GMT; Max-Age=31449600; Path=/
132
+ Vary:
133
+ - Cookie, Accept-Language, Accept-Encoding
134
+ X-Ratelimit-Limit:
135
+ - '5000'
136
+ X-Ratelimit-Remaining:
137
+ - '4973'
138
+ Content-Length:
139
+ - '237'
140
+ Connection:
141
+ - keep-alive
142
+ body:
143
+ encoding: UTF-8
144
+ string: '{"meta":{"code":200},"data":{"username":"fullscreen","bio":"Let your
145
+ dreams come true...","website":"","profile_picture":"http:\/\/images.ak.instagram.com\/profiles\/profile_41672819_75sq_1390767340.jpg","full_name":"Kermit
146
+ De Luxe","counts":{"media":150,"followed_by":271,"follows":29},"id":"41672819"}}'
147
+ http_version:
148
+ recorded_at: Wed, 15 Oct 2014 18:58:28 GMT
149
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,54 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.instagram.com/v1/users/search?client_id=CLIENT_ID&q=01LjqweoojkjR
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Cache-Control:
22
+ - private, no-cache, no-store, must-revalidate
23
+ Content-Language:
24
+ - en
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Date:
28
+ - Wed, 15 Oct 2014 18:58:28 GMT
29
+ Expires:
30
+ - Sat, 01 Jan 2000 00:00:00 GMT
31
+ Pragma:
32
+ - no-cache
33
+ Server:
34
+ - nginx
35
+ Set-Cookie:
36
+ - ccode=US; Path=/
37
+ - csrftoken=11e208414f3786473321374bfa681012; expires=Wed, 14-Oct-2015 18:58:28
38
+ GMT; Max-Age=31449600; Path=/
39
+ Vary:
40
+ - Cookie, Accept-Language
41
+ X-Ratelimit-Limit:
42
+ - '5000'
43
+ X-Ratelimit-Remaining:
44
+ - '4972'
45
+ Content-Length:
46
+ - '49'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"meta":{"code":200},"data":[]}'
52
+ http_version:
53
+ recorded_at: Wed, 15 Oct 2014 18:58:28 GMT
54
+ recorded_with: VCR 2.9.3
data/spec/support/vcr.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  require 'webmock/rspec'
2
2
  require 'vcr'
3
+ require 'net/twitter'
4
+ require 'net/instagram'
3
5
 
4
6
  VCR.configure do |c|
5
7
  c.configure_rspec_metadata!
@@ -7,6 +9,7 @@ VCR.configure do |c|
7
9
  c.hook_into :webmock
8
10
  c.filter_sensitive_data('TWITTER_API_KEY') { Net::Twitter.configuration.apps.first[:key] }
9
11
  c.filter_sensitive_data('TWITTER_API_SECRET') { Net::Twitter.configuration.apps.first[:secret] }
12
+ c.filter_sensitive_data('INSTAGRAM_CLIENT_ID') { Net::Instagram.configuration.client_id }
10
13
  c.filter_sensitive_data('ACCESS_TOKEN') do |interaction|
11
14
  if interaction.request.headers['Authorization']
12
15
  interaction.request.headers['Authorization'].first
@@ -19,4 +22,4 @@ VCR.configure do |c|
19
22
  interaction.response.headers['X-Rate-Limit-Reset'].first
20
23
  end
21
24
  end
22
- end
25
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net
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
  - Jeremy Cohen Hoffing
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-10-13 00:00:00.000000000 Z
12
+ date: 2014-10-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -139,6 +139,16 @@ files:
139
139
  - README.md
140
140
  - Rakefile
141
141
  - lib/net.rb
142
+ - lib/net/instagram.rb
143
+ - lib/net/instagram/api/configuration.rb
144
+ - lib/net/instagram/api/request.rb
145
+ - lib/net/instagram/config.rb
146
+ - lib/net/instagram/errors.rb
147
+ - lib/net/instagram/errors/private_user.rb
148
+ - lib/net/instagram/errors/response_error.rb
149
+ - lib/net/instagram/errors/unknown_user.rb
150
+ - lib/net/instagram/models.rb
151
+ - lib/net/instagram/models/user.rb
142
152
  - lib/net/twitter.rb
143
153
  - lib/net/twitter/api/configuration.rb
144
154
  - lib/net/twitter/api/request.rb
@@ -152,8 +162,15 @@ files:
152
162
  - lib/net/twitter/models/user.rb
153
163
  - lib/net/version.rb
154
164
  - net.gemspec
165
+ - spec/net/instagram/models/user_spec.rb
155
166
  - spec/net/twitter/models/user_spec.rb
156
167
  - spec/spec_helper.rb
168
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_a_private_username/.yml
169
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
170
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_unknown_username/.yml
171
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_a_private_username/.yml
172
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
173
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_unknown_username/.yml
157
174
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_a_suspended_screen_name/.yml
158
175
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_an_existing_case-insensitive_screen_name/returns_an_object_representing_that_user.yml
159
176
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_an_unknown_screen_name/.yml
@@ -190,8 +207,15 @@ signing_key:
190
207
  specification_version: 4
191
208
  summary: An API Client for social networks
192
209
  test_files:
210
+ - spec/net/instagram/models/user_spec.rb
193
211
  - spec/net/twitter/models/user_spec.rb
194
212
  - spec/spec_helper.rb
213
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_a_private_username/.yml
214
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
215
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by/given_an_unknown_username/.yml
216
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_a_private_username/.yml
217
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
218
+ - spec/support/cassettes/Net_Instagram_Models_User/_find_by_/given_an_unknown_username/.yml
195
219
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_a_suspended_screen_name/.yml
196
220
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_an_existing_case-insensitive_screen_name/returns_an_object_representing_that_user.yml
197
221
  - spec/support/cassettes/Net_Twitter_Models_User/_find_by/given_an_unknown_screen_name/.yml