riched20: Add tests to check the content open by ITextDocument_fnOpen.

Jactry Zeng jactry92 at gmail.com
Thu Jan 23 09:54:32 CST 2014


-------------- next part --------------
From 62d3722829fa1480447fd103b50a4f7d59f3f278 Mon Sep 17 00:00:00 2001
From: Jactry Zeng <jactry92 at gmail.com>
Date: Thu, 23 Jan 2014 23:41:12 +0800
Subject: [PATCH] riched20: Add tests to check the content open by
 ITextDocument_fnOpen.

---
 dlls/riched20/tests/richole.c | 44 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index 63208ee..bf94c59 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -159,6 +159,15 @@ static void test_ITextDocument_Open(void)
   HANDLE hFile;
   VARIANT testfile;
   WCHAR filename[] = {'t', 'e', 's', 't','.','t','x','t', 0};
+  int result;
+  DWORD dw;
+  static const CHAR chACP[] = "TestSomeText";
+  static const CHAR chUTF8[] = "\xef\xbb\xbfTextWithUTF8BOM";
+  static const WCHAR chUTF16[] = {'T', 'e', 's', 't', 'S', 'o', 'm',
+                                  'e', 'T', 'e', 'x', 't', 0};
+
+#define MAX_BUF_LEN 1024
+  CHAR bufACP[MAX_BUF_LEN];
 
   static const int tomConstantsSingle[] =
     {
@@ -328,6 +337,41 @@ static void test_ITextDocument_Open(void)
   CloseHandle(hFile);
   release_interfaces(&w, &reOle, &txtDoc, &txtSel);
   DeleteFileW(filename);
+
+  /* tests to check the content */
+  hFile = CreateFileW(filename, GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS,
+                      FILE_ATTRIBUTE_NORMAL, NULL);
+  WriteFile(hFile, chACP, sizeof(chACP)-1, &dw, NULL);
+  CloseHandle(hFile);
+  create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  ITextDocument_Open(txtDoc, &testfile, tomReadOnly, CP_ACP);
+  result = SendMessageA(w, WM_GETTEXT, 1024, (LPARAM)bufACP);
+  todo_wine ok(result == 12, "ITextDocument_Open: Test ASCII returned %d, expected 12\n", result);
+  release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  DeleteFileW(filename);
+
+  hFile = CreateFileW(filename, GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS,
+                      FILE_ATTRIBUTE_NORMAL, NULL);
+  WriteFile(hFile, chUTF8, sizeof(chUTF8)-1, &dw, NULL);
+  CloseHandle(hFile);
+  create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  ITextDocument_Open(txtDoc, &testfile, tomReadOnly, CP_UTF8);
+  result = SendMessageA(w, WM_GETTEXT, 1024, (LPARAM)bufACP);
+  todo_wine ok(result == 15, "ITextDocument_Open: Test UTF-8 returned %d, expected 15\n", result);
+  release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  DeleteFileW(filename);
+
+  hFile = CreateFileW(filename, GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS,
+                      FILE_ATTRIBUTE_NORMAL, NULL);
+  WriteFile(hFile, "\xff\xfe", 2, &dw, NULL);
+  WriteFile(hFile, chUTF16, sizeof(chUTF16)-2, &dw, NULL);
+  CloseHandle(hFile);
+  create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  ITextDocument_Open(txtDoc, &testfile, tomReadOnly, 1200);
+  result = SendMessageA(w, WM_GETTEXT, 1024, (LPARAM)bufACP);
+  todo_wine ok(result == 12, "ITextDocument_Open: Test UTF-16 returned %d, expected 12\n", result);
+  release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+  DeleteFileW(filename);
 }
 
 START_TEST(richole)
-- 
1.8.3.2



More information about the wine-patches mailing list