aboutsummaryrefslogtreecommitdiffstats
path: root/github3/tests/handler_test.py
diff options
context:
space:
mode:
authorDavid Medina <davidmedina9@gmail.com>2011-11-13 19:29:12 +0100
committerDavid Medina <davidmedina9@gmail.com>2011-11-13 19:29:12 +0100
commit78752f56adb57bb1d5672a6ac819944477b7b529 (patch)
tree66fac159d33d9801710c3af63bad99c721a1f59f /github3/tests/handler_test.py
parentPEP8 and renaming (diff)
downloadpython-github3-78752f56adb57bb1d5672a6ac819944477b7b529.tar.xz
python-github3-78752f56adb57bb1d5672a6ac819944477b7b529.zip
Testing on fire (handlers, user_handler)
Also fix bugs, pep8
Diffstat (limited to 'github3/tests/handler_test.py')
-rw-r--r--github3/tests/handler_test.py53
1 files changed, 53 insertions, 0 deletions
diff --git a/github3/tests/handler_test.py b/github3/tests/handler_test.py
new file mode 100644
index 0000000..51cd111
--- /dev/null
+++ b/github3/tests/handler_test.py
@@ -0,0 +1,53 @@
+#!/usr/bin/env python
+# -*- encoding: utf-8 -*-
+
+from mock import Mock, patch
+from unittest import TestCase
+from github3 import api
+from github3.handlers.base import Handler
+from github3.exceptions import *
+from github3.converters import *
+import json
+import requests
+
+
+class TestHandler(TestCase):
+
+ def setUp(self):
+ self.gh = api.Github()
+ self.handler = Handler(self.gh)
+
+ def test_get_converter(self):
+ self.assertIsInstance(self.handler._get_converter(), Modelizer)
+ self.assertIsInstance(self.handler._get_converter(converter=Rawlizer),
+ Rawlizer)
+ self.handler.converter = Modelizer
+ self.assertIsInstance(self.handler._get_converter(), Modelizer)
+
+ def test_bool(self):
+ with patch.object(api.Github, 'head') as head:
+ response = head.return_value
+ response.status_code = 204
+ bool1 = self.handler._bool('test')
+ head.side_effect = NotFound()
+ bool2 = self.handler._bool('test')
+ head.assert_called_with('test')
+ self.assertTrue(bool1)
+ self.assertFalse(bool2)
+
+ with patch.object(api.Github, 'put') as put:
+ response = put.return_value
+ response.status_code = 204
+ booll = self.handler._put('test')
+ put.assert_called_with('test', method='put')
+ self.assertTrue(booll)
+
+ with patch.object(api.Github, 'delete') as delete:
+ response = delete.return_value
+ response.content = self.gh._parser.dumps({'data': 'test'})
+ response.status_code = 204
+ bool1 = self.handler._bool('test', method='delete')
+ bool2 = self.handler._bool('test', method='delete',
+ data={'some': 'data'})
+ self.assertTrue(bool1)
+ self.assertTrue(bool2)