Initial import to Tizen
[profile/ivi/python-twisted.git] / twisted / internet / test / test_filedescriptor.py
1 # Copyright (c) Twisted Matrix Laboratories.
2 # See LICENSE for details.
3
4 """
5 Whitebox tests for L{twisted.internet.abstract.FileDescriptor}.
6 """
7
8 from zope.interface.verify import verifyClass
9
10 from twisted.internet.abstract import FileDescriptor
11 from twisted.internet.interfaces import IPushProducer
12 from twisted.trial.unittest import TestCase
13
14
15
16 class FileDescriptorTests(TestCase):
17     """
18     Tests for L{FileDescriptor}.
19     """
20     def test_writeWithUnicodeRaisesException(self):
21         """
22         L{FileDescriptor.write} doesn't accept unicode data.
23         """
24         fileDescriptor = FileDescriptor()
25         self.assertRaises(TypeError, fileDescriptor.write, u'foo')
26
27
28     def test_writeSequenceWithUnicodeRaisesException(self):
29         """
30         L{FileDescriptor.writeSequence} doesn't accept unicode data.
31         """
32         fileDescriptor = FileDescriptor()
33         self.assertRaises(
34             TypeError, fileDescriptor.writeSequence, ['foo', u'bar', 'baz'])
35
36
37     def test_implementInterfaceIPushProducer(self):
38         """
39         L{FileDescriptor} should implement L{IPushProducer}.
40         """
41         self.assertTrue(verifyClass(IPushProducer, FileDescriptor))