Skip to content

Commit

Permalink
Improve test coverage of AuthenticatedUser
Browse files Browse the repository at this point in the history
  • Loading branch information
jacquev6 committed May 20, 2012
1 parent 6a2e4b4 commit d5ba645
Show file tree
Hide file tree
Showing 3 changed files with 82 additions and 0 deletions.
17 changes: 17 additions & 0 deletions test/AuthenticatedUser.py
Expand Up @@ -77,3 +77,20 @@ def testEditWithAllArguments( self ):
self.assertEqual( self.user.location, oldLocation )
self.assertEqual( self.user.hireable, oldHireable )
self.assertEqual( self.user.bio, oldBio )

def testEmails( self ):
self.assertEqual( self.user.get_emails(), [ "vincent@vincent-jacques.net", "github.com@vincent-jacques.net" ] )
self.user.add_to_emails( "1@foobar.com", "2@foobar.com" )
self.assertEqual( self.user.get_emails(), [ "vincent@vincent-jacques.net", "1@foobar.com", "2@foobar.com", "github.com@vincent-jacques.net" ] )
self.user.remove_from_emails( "1@foobar.com", "2@foobar.com" )
self.assertEqual( self.user.get_emails(), [ "vincent@vincent-jacques.net", "github.com@vincent-jacques.net" ] )

def testFollowing( self ):
nvie = self.g.get_user( "nvie" )
self.assertEqual( self.user.get_following()[ 0 ].login, "schacon" )
self.assertEqual( self.user.has_in_following( nvie ), True )
self.user.remove_from_following( nvie )
self.assertEqual( self.user.has_in_following( nvie ), False )
self.user.add_to_following( nvie )
self.assertEqual( self.user.has_in_following( nvie ), True )
self.assertEqual( self.user.get_followers()[ 0 ].login, "jnorthrup" )
25 changes: 25 additions & 0 deletions test/ReplayData/AuthenticatedUser.testEmails.txt
@@ -0,0 +1,25 @@
GET /user/emails {} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:39 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","github.com@vincent-jacques.net"]

POST /user/emails {} ["1@foobar.com", "2@foobar.com"]
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4933'), ('content-length', '94'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:40 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"]

GET /user/emails {} null
200
[('status', '200 OK'), ('content-length', '94'), ('x-ratelimit-remaining', '4932'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"]

DELETE /user/emails {} ["1@foobar.com", "2@foobar.com"]
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4931'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT')]


GET /user/emails {} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:42 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","github.com@vincent-jacques.net"]

40 changes: 40 additions & 0 deletions test/ReplayData/AuthenticatedUser.testFollowing.txt
@@ -0,0 +1,40 @@
GET /users/nvie {} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1f414bb12fcd22848c2c09e507bd3450"'), ('date', 'Sun, 20 May 2012 12:47:49 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"3rd Cloud","url":"https://api.github.com/users/nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","followers":297,"public_gists":16,"public_repos":61,"login":"nvie","email":"vincent@3rdcloud.com","hireable":false,"html_url":"https://github.com/nvie","name":"Vincent Driessen","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","bio":null,"id":83844,"following":41,"blog":"http://nvie.com"}

GET /user/following {} null
200
[('status', '200 OK'), ('content-length', '7072'), ('x-ratelimit-remaining', '4996'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7ee97a1de549c0ab507d72d9851d28d2"'), ('date', 'Sun, 20 May 2012 12:47:49 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"url":"https://api.github.com/users/schacon","avatar_url":"https://secure.gravatar.com/avatar/9375a9529679f1b42b567a640d775e7d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"schacon","gravatar_id":"9375a9529679f1b42b567a640d775e7d","id":70},{"url":"https://api.github.com/users/jamis","avatar_url":"https://secure.gravatar.com/avatar/992fe8c19bbbc27f2b562a9f96efc03d?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jamis","gravatar_id":"992fe8c19bbbc27f2b562a9f96efc03d","id":1627},{"url":"https://api.github.com/users/chad","avatar_url":"https://secure.gravatar.com/avatar/77f306388bb6ae00ac0b0401e27cdc99?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"chad","gravatar_id":"77f306388bb6ae00ac0b0401e27cdc99","id":237},{"url":"https://api.github.com/users/unclebob","avatar_url":"https://secure.gravatar.com/avatar/e47a3e81d72676bd497b1cb67f66da97?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"unclebob","gravatar_id":"e47a3e81d72676bd497b1cb67f66da97","id":36901},{"url":"https://api.github.com/users/dabrahams","avatar_url":"https://secure.gravatar.com/avatar/5b45540ae377ec54a071f313b7193a27?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"dabrahams","gravatar_id":"5b45540ae377ec54a071f313b7193a27","id":44065},{"url":"https://api.github.com/users/jnorthrup","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","id":73514},{"url":"https://api.github.com/users/brugidou","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","id":167633},{"url":"https://api.github.com/users/regisb","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","id":44319},{"url":"https://api.github.com/users/walidk","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","id":734669},{"url":"https://api.github.com/users/tanzilli","avatar_url":"https://secure.gravatar.com/avatar/5d533d287dda8809a5369b65063ef725?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"tanzilli","gravatar_id":"5d533d287dda8809a5369b65063ef725","id":434112},{"url":"https://api.github.com/users/fjardon","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","id":121402},{"url":"https://api.github.com/users/r3c","avatar_url":"https://secure.gravatar.com/avatar/9240b01ceef60b45be83aee8637e7043?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"r3c","gravatar_id":"9240b01ceef60b45be83aee8637e7043","id":979446},{"url":"https://api.github.com/users/sdanzan","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","id":1094967},{"url":"https://api.github.com/users/vineus","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","id":467126},{"url":"https://api.github.com/users/cjuniet","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","id":1233553},{"url":"https://api.github.com/users/gturri","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","id":308601},{"url":"https://api.github.com/users/ant9000","avatar_url":"https://secure.gravatar.com/avatar/05c5d147f5decac1213f47007f6e97ed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"ant9000","gravatar_id":"05c5d147f5decac1213f47007f6e97ed","id":803884},{"url":"https://api.github.com/users/asquini","avatar_url":"https://secure.gravatar.com/avatar/ffc7ee9137c7c6859958bd21b724dde1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"asquini","gravatar_id":"ffc7ee9137c7c6859958bd21b724dde1","id":1159877},{"url":"https://api.github.com/users/claudyus","avatar_url":"https://secure.gravatar.com/avatar/694d276cdabd74c2538838f55d289143?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"claudyus","gravatar_id":"694d276cdabd74c2538838f55d289143","id":509291},{"url":"https://api.github.com/users/jardon-u","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","id":994192},{"url":"https://api.github.com/users/s-bernard","avatar_url":"https://secure.gravatar.com/avatar/046dc82526c7cb4c60d8e70c6f4d4615?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"s-bernard","gravatar_id":"046dc82526c7cb4c60d8e70c6f4d4615","id":1468889},{"url":"https://api.github.com/users/kamaradclimber","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","id":503537},{"url":"https://api.github.com/users/Lyloa","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"Lyloa","gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","id":1131432},{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"nvie","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","id":83844}]

GET /user/following/nvie {} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4995'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:50 GMT')]


DELETE /user/following/nvie {} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4994'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:51 GMT')]


GET /user/following/nvie {} null
404
[('status', '404 Not Found'), ('x-ratelimit-remaining', '4993'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sun, 20 May 2012 12:47:51 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"message":"Not Found"}

PUT /user/following/nvie {} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:52 GMT')]


GET /user/following/nvie {} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4991'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:47:52 GMT')]


GET /user/followers {} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '3849'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f99f2d634d4429def3c7fae66ead9cb9"'), ('date', 'Sun, 20 May 2012 12:47:53 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"url":"https://api.github.com/users/jnorthrup","gravatar_id":"29222a2dca6dd4cd33790d72ff3f5346","avatar_url":"https://secure.gravatar.com/avatar/29222a2dca6dd4cd33790d72ff3f5346?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jnorthrup","id":73514},{"url":"https://api.github.com/users/brugidou","gravatar_id":"43485eeefd3da3c96a7ea0c7e6b839dc","avatar_url":"https://secure.gravatar.com/avatar/43485eeefd3da3c96a7ea0c7e6b839dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"brugidou","id":167633},{"url":"https://api.github.com/users/regisb","gravatar_id":"43d211a7021343f2be236d2b9855b734","avatar_url":"https://secure.gravatar.com/avatar/43d211a7021343f2be236d2b9855b734?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"regisb","id":44319},{"url":"https://api.github.com/users/walidk","gravatar_id":"e251d20766937949a109603ca37bb3be","avatar_url":"https://secure.gravatar.com/avatar/e251d20766937949a109603ca37bb3be?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"walidk","id":734669},{"url":"https://api.github.com/users/afzalkhan","gravatar_id":"8e85398b116be75d4baeeddfc9c3cce1","avatar_url":"https://secure.gravatar.com/avatar/8e85398b116be75d4baeeddfc9c3cce1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"afzalkhan","id":1003845},{"url":"https://api.github.com/users/sdanzan","gravatar_id":"4a1e187f4f22547534a56966f6d8f942","avatar_url":"https://secure.gravatar.com/avatar/4a1e187f4f22547534a56966f6d8f942?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"sdanzan","id":1094967},{"url":"https://api.github.com/users/vineus","gravatar_id":"2d0c93649b7572036335aed380e351e5","avatar_url":"https://secure.gravatar.com/avatar/2d0c93649b7572036335aed380e351e5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"vineus","id":467126},{"url":"https://api.github.com/users/gturri","gravatar_id":"ba064e32f068e12bfc87d178179878a5","avatar_url":"https://secure.gravatar.com/avatar/ba064e32f068e12bfc87d178179878a5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"gturri","id":308601},{"url":"https://api.github.com/users/fjardon","gravatar_id":"cb044bd9a9f6548b9a9bae44617c97c7","avatar_url":"https://secure.gravatar.com/avatar/cb044bd9a9f6548b9a9bae44617c97c7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fjardon","id":121402},{"url":"https://api.github.com/users/cjuniet","gravatar_id":"197eed5292fd11c0277335c3524ccfd5","avatar_url":"https://secure.gravatar.com/avatar/197eed5292fd11c0277335c3524ccfd5?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"cjuniet","id":1233553},{"url":"https://api.github.com/users/jardon-u","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jardon-u","id":994192},{"url":"https://api.github.com/users/kamaradclimber","gravatar_id":"0c43eba4a99f65e071e66e684cea8177","avatar_url":"https://secure.gravatar.com/avatar/0c43eba4a99f65e071e66e684cea8177?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"kamaradclimber","id":503537},{"url":"https://api.github.com/users/L42y","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"L42y","id":284820}]

0 comments on commit d5ba645

Please sign in to comment.