[pywin32-checkins] pywin32/win32/test test_clipboard.py,1.3,1.4
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
From: <mha...@us...> - 2003-12-01 10:57:56
|
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__': |