Update of /cvsroot/pywin32/pywin32/win32/test
In directory sc8-pr-cvs1:/tmp/cvs-serv6899
Modified Files:
test_clipboard.py
Log Message:
Test string/unicode and global mem functions.
Index: test_clipboard.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/test/test_clipboard.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** test_clipboard.py 29 Nov 2003 06:09:51 -0000 1.3
--- test_clipboard.py 1 Dec 2003 10:57:53 -0000 1.4
***************
*** 5,8 ****
--- 5,12 ----
from win32clipboard import *
import win32gui, win32con
+ import pywintypes
+ import array
+
+ custom_format_name = "PythonClipboardTestFormat"
class CrashingTestCase(unittest.TestCase):
***************
*** 49,52 ****
--- 53,95 ----
finally:
CloseClipboard()
+
+ class TestStrings(unittest.TestCase):
+ def setUp(self):
+ OpenClipboard()
+ def tearDown(self):
+ CloseClipboard()
+ def test_unicode(self):
+ val = unicode("test-\xe0\xf2", "mbcs")
+ SetClipboardData(win32con.CF_UNICODETEXT, val)
+ self.failUnlessEqual(GetClipboardData(win32con.CF_UNICODETEXT), val)
+ def test_string(self):
+ val = "test"
+ SetClipboardData(win32con.CF_TEXT, val)
+ self.failUnlessEqual(GetClipboardData(win32con.CF_TEXT), val)
+
+ class TestGlobalMemory(unittest.TestCase):
+ def setUp(self):
+ OpenClipboard()
+ def tearDown(self):
+ CloseClipboard()
+ def test_mem(self):
+ val = "test"
+ SetClipboardData(win32con.CF_TEXT, val)
+ # Get the raw data - this will include the '\0'
+ raw_data = GetGlobalMemory(GetClipboardDataHandle(win32con.CF_TEXT))
+ self.failUnlessEqual(val + '\0', raw_data)
+ def test_bad_mem(self):
+ self.failUnlessRaises(pywintypes.error, GetGlobalMemory, 0)
+ self.failUnlessRaises(pywintypes.error, GetGlobalMemory, 1)
+ self.failUnlessRaises(pywintypes.error, GetGlobalMemory, -1)
+ def test_custom_mem(self):
+ test_data = "hello\x00\xff"
+ test_buffer = array.array("c", test_data)
+ cf = RegisterClipboardFormat(custom_format_name)
+ self.failUnlessEqual(custom_format_name, GetClipboardFormatName(cf))
+ SetClipboardData(cf, test_buffer)
+ hglobal = GetClipboardDataHandle(cf)
+ data = GetGlobalMemory(hglobal)
+ self.failUnlessEqual(data, test_data)
if __name__ == '__main__':
|