[PATCH 2/4] comctl32/tests: Change toolbar size test data to load dynamically.

Austin Lund austin.lund at gmail.com
Fri Nov 5 00:31:53 CDT 2010


---
 dlls/comctl32/tests/toolbar.c |  233 +++++++++++++++++++----------------------
 1 files changed, 109 insertions(+), 124 deletions(-)

diff --git a/dlls/comctl32/tests/toolbar.c b/dlls/comctl32/tests/toolbar.c
index 9544863..2697994 100644
--- a/dlls/comctl32/tests/toolbar.c
+++ b/dlls/comctl32/tests/toolbar.c
@@ -685,129 +685,112 @@ typedef struct
     RECT rcButtons[100];
 } tbsize_result_t;
 
-static tbsize_result_t tbsize_results[] =
-{
-  { {0, 0, 672, 26}, {100, 22}, 5, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-    {  0,  24,  23,  46},
-  }, },
-  { {0, 0, 672, 48}, {146, 22}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-    {  0,  24,  23,  46},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-    {123,   2, 146,  24},
-  }, },
-  { {0, 0, 672, 26}, {192, 22}, 9, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-    {123,   2, 146,  24}, {146,   2, 169,  24}, {169,   2, 192,  24},
-  }, },
-  { {0, 0, 672, 92}, {882, 22}, 39, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,   2,   8,  29},
-    {  0,  29,  23,  51}, { 23,  29,  46,  51}, { 46,  29,  69,  51},
-    { 69,  29,  92,  51}, { 92,  29, 115,  51}, {115,  29, 138,  51},
-    {138,  29, 161,  51}, {161,  29, 184,  51}, {184,  29, 207,  51},
-    {207,  29, 230,  51}, {230,  29, 253,  51}, {253,  29, 276,  51},
-    {276,  29, 299,  51}, {299,  29, 322,  51}, {322,  29, 345,  51},
-    {345,  29, 368,  51}, {368,  29, 391,  51}, {391,  29, 414,  51},
-    {414,  29, 437,  51}, {437,  29, 460,  51}, {460,  29, 483,  51},
-    {483,  29, 506,  51}, {506,  29, 529,  51}, {529,  29, 552,  51},
-    {552,  29, 575,  51}, {575,  29, 598,  51}, {598,  29, 621,  51},
-    {621,  29, 644,  51}, {644,  29, 667,  51}, {  0,  51,  23,  73},
-    { 23,  51,  46,  73}, { 46,  51,  69,  73}, { 69,  51,  92,  73},
-    { 92,  51, 115,  73}, {115,  51, 138,  73}, {138,  51, 161,  73},
-  }, },
-  { {0, 0, 48, 226}, {23, 140}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  94,  24},
-    { 94,   2, 117,  24}, {117,   2, 140,  24}, {140,   2, 163,  24},
-    {  0,  24,  23,  46},
-  }, },
-  { {0, 0, 92, 226}, {23, 140}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,  24,  92,  32},
-    {  0,  32,  23,  54}, { 23,  32,  46,  54}, { 46,  32,  69,  54},
-    { 69,  32,  92,  54},
-  }, },
-  { {0, 0, 672, 26}, {194, 30}, 7, {
-    {  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
-    { 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
-    {  0,  32,  31,  62},
-  }, },
-  { {0, 0, 672, 64}, {194, 30}, 7, {
-    {  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
-    { 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
-    {  0,  32,  31,  62},
-  }, },
-  { {0, 0, 672, 64}, {194, 30}, 7, {
-    {  0,   0,  31,  30}, { 31,   0,  62,  30}, { 62,   0,  70,  30},
-    { 70,   0, 101,  30}, {101,   0, 132,  30}, {132,   0, 163,  30},
-    {  0,  30,  31,  60},
-  }, },
-  { {0, 0, 124, 226}, {31, 188}, 7, {
-    {  0,   0,  31,  30}, { 31,   0,  62,  30}, {  0,  30, 124,  38},
-    {  0,  38,  31,  68}, { 31,  38,  62,  68}, { 62,  38,  93,  68},
-    { 93,  38, 124,  68},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-    {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-    { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-    {123,   2, 146,  24},
-  }, },
-  { {0, 0, 672, 26}, {146, 100}, 7, {
-    {  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  54, 100},
-    { 54,   0,  77, 100}, { 77,   0, 100, 100}, {100,   0, 123, 100},
-    {123,   0, 146, 100},
-  }, },
-  { {0, 0, 672, 26}, {215, 100}, 10, {
-    {  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  54, 100},
-    { 54,   0,  77, 100}, { 77,   0, 100, 100}, {100,   0, 123, 100},
-    {123,   0, 146, 100}, {146,   0, 169, 100}, {169,   0, 192, 100},
-    {192,   0, 215, 100},
-  }, },
-  { {0, 0, 672, 26}, {238, 39}, 11, {
-    {  0,   0,  23,  39}, { 23,   0,  46,  39}, { 46,   0,  54,  39},
-    { 54,   0,  77,  39}, { 77,   0, 100,  39}, {100,   0, 123,  39},
-    {123,   0, 146,  39}, {146,   0, 169,  39}, {169,   0, 192,  39},
-    {192,   0, 215,  39}, {215,   0, 238,  39},
-  }, },
-  { {0, 0, 672, 26}, {238, 22}, 11, {
-    {  0,   0,  23,  22}, { 23,   0,  46,  22}, { 46,   0,  54,  22},
-    { 54,   0,  77,  22}, { 77,   0, 100,  22}, {100,   0, 123,  22},
-    {123,   0, 146,  22}, {146,   0, 169,  22}, {169,   0, 192,  22},
-    {192,   0, 215,  22}, {215,   0, 238,  22},
-  }, },
-  { {0, 0, 672, 26}, {489, 39}, 3, {
-    {  0,   2, 163,  41}, {163,   2, 330,  41}, {330,   2, 493,  41},
-  }, },
-  { {0, 0, 672, 104}, {978, 24}, 6, {
-    {  0,   2, 163,  26}, {163,   2, 326,  26}, {326,   2, 489,  26},
-    {489,   2, 652,  26}, {652,   2, 819,  26}, {819,   2, 850,  26},
-  }, },
-  { {0, 0, 672, 28}, {978, 38}, 6, {
-    {  0,   0, 163,  38}, {163,   0, 326,  38}, {326,   0, 489,  38},
-    {489,   0, 652,  38}, {652,   0, 819,  38}, {819,   0, 850,  38},
-  }, },
-  { {0, 0, 672, 100}, {239, 102}, 3, {
-    {  0,   2, 100,  102}, {100,   2, 139,  102}, {139, 2, 239,  102},
-  }, },
-  { {0, 0, 672, 42}, {185, 40}, 3, {
-      {  0,   2,  75,  40}, {75,   2, 118, 40}, {118, 2, 185, 40},
-  }, },
-  { {0, 0, 672, 42}, {67, 40}, 1, {
-      {  0,   2,  67,  40},
-  }, },
-  { {0, 0, 672, 42}, {67, 41}, 2, {
-      {  0,   2,  672,  41}, {  0,   41,  672,  80},
-  }, },
-};
+tbsize_result_t *tbsize_results = NULL;
+
+static void init_tbsize_results(void) {
+    tbsize_results = (tbsize_result_t *)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, 24*sizeof(tbsize_result_t));
+    tbsize_results[0] = (tbsize_result_t) { {0, 0, 672, 26}, {100, 22}, 5, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24} } };
+    tbsize_results[1] = (tbsize_result_t) { {0, 0, 672, 26}, {146, 22}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
+        {  0,  24,  23,  46} } };
+    tbsize_results[2] = (tbsize_result_t) { {0, 0, 672, 48}, {146, 22}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
+        {  0,  24,  23,  46} } };
+    tbsize_results[3] = (tbsize_result_t) { {0, 0, 672, 26}, {146, 22}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
+        {123,   2, 146,  24} } };
+    tbsize_results[4] = (tbsize_result_t) { {0, 0, 672, 26}, {192, 22}, 9, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
+        {123,   2, 146,  24}, {146,   2, 169,  24}, {169,   2, 192,  24} } };
+    tbsize_results[5] = (tbsize_result_t) { {0, 0, 672, 92}, {882, 22}, 39, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,   2,   8,  29},
+        {  0,  29,  23,  51}, { 23,  29,  46,  51}, { 46,  29,  69,  51},
+        { 69,  29,  92,  51}, { 92,  29, 115,  51}, {115,  29, 138,  51},
+        {138,  29, 161,  51}, {161,  29, 184,  51}, {184,  29, 207,  51},
+        {207,  29, 230,  51}, {230,  29, 253,  51}, {253,  29, 276,  51},
+        {276,  29, 299,  51}, {299,  29, 322,  51}, {322,  29, 345,  51},
+        {345,  29, 368,  51}, {368,  29, 391,  51}, {391,  29, 414,  51},
+        {414,  29, 437,  51}, {437,  29, 460,  51}, {460,  29, 483,  51},
+        {483,  29, 506,  51}, {506,  29, 529,  51}, {529,  29, 552,  51},
+        {552,  29, 575,  51}, {575,  29, 598,  51}, {598,  29, 621,  51},
+        {621,  29, 644,  51}, {644,  29, 667,  51}, {  0,  51,  23,  73},
+        { 23,  51,  46,  73}, { 46,  51,  69,  73}, { 69,  51,  92,  73},
+        { 92,  51, 115,  73}, {115,  51, 138,  73}, {138,  51, 161,  73} } };
+    tbsize_results[6] = (tbsize_result_t) { {0, 0, 48, 226}, {23, 140}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  94,  24},
+        { 94,   2, 117,  24}, {117,   2, 140,  24}, {140,   2, 163,  24},
+        {  0,  24,  23,  46} } };
+    tbsize_results[7] = (tbsize_result_t) { {0, 0, 92, 226}, {23, 140}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,  24,  92,  32},
+        {  0,  32,  23,  54}, { 23,  32,  46,  54}, { 46,  32,  69,  54},
+        { 69,  32,  92,  54} } };
+    tbsize_results[8] = (tbsize_result_t) { {0, 0, 672, 26}, {194, 30}, 7, {
+        {  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
+        { 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
+        {  0,  32,  31,  62} } };
+    tbsize_results[9] = (tbsize_result_t) { {0, 0, 672, 64}, {194, 30}, 7, {
+        {  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
+        { 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
+        {  0,  32,  31,  62} } };
+   tbsize_results[10] = (tbsize_result_t) { {0, 0, 672, 64}, {194, 30}, 7, {
+        {  0,   0,  31,  30}, { 31,   0,  62,  30}, { 62,   0,  70,  30},
+        { 70,   0, 101,  30}, {101,   0, 132,  30}, {132,   0, 163,  30},
+        {  0,  30,  31,  60} } };
+    tbsize_results[11] = (tbsize_result_t) { {0, 0, 124, 226}, {31, 188}, 7, {
+        {  0,   0,  31,  30}, { 31,   0,  62,  30}, {  0,  30, 124,  38},
+        {  0,  38,  31,  68}, { 31,  38,  62,  68}, { 62,  38,  93,  68},
+        { 93,  38, 124,  68} } };
+    tbsize_results[12] = (tbsize_result_t) { {0, 0, 672, 26}, {146, 22}, 7, {
+        {  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
+        { 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
+        {123,   2, 146,  24} } };
+    tbsize_results[13] = (tbsize_result_t) { {0, 0, 672, 26}, {146, 100}, 7, {
+        {  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  54, 100},
+        { 54,   0,  77, 100}, { 77,   0, 100, 100}, {100,   0, 123, 100},
+        {123,   0, 146, 100} } };
+    tbsize_results[14] = (tbsize_result_t) { {0, 0, 672, 26}, {215, 100}, 10, {
+        {  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  54, 100},
+        { 54,   0,  77, 100}, { 77,   0, 100, 100}, {100,   0, 123, 100},
+        {123,   0, 146, 100}, {146,   0, 169, 100}, {169,   0, 192, 100},
+        {192,   0, 215, 100} } };
+    tbsize_results[15] = (tbsize_result_t) { {0, 0, 672, 26}, {238, 39}, 11, {
+        {  0,   0,  23,  39}, { 23,   0,  46,  39}, { 46,   0,  54,  39},
+        { 54,   0,  77,  39}, { 77,   0, 100,  39}, {100,   0, 123,  39},
+        {123,   0, 146,  39}, {146,   0, 169,  39}, {169,   0, 192,  39},
+        {192,   0, 215,  39}, {215,   0, 238,  39} } };
+    tbsize_results[16] = (tbsize_result_t)  { {0, 0, 672, 26}, {238, 22}, 11, {
+        {  0,   0,  23,  22}, { 23,   0,  46,  22}, { 46,   0,  54,  22},
+        { 54,   0,  77,  22}, { 77,   0, 100,  22}, {100,   0, 123,  22},
+        {123,   0, 146,  22}, {146,   0, 169,  22}, {169,   0, 192,  22},
+        {192,   0, 215,  22}, {215,   0, 238,  22} } };
+    tbsize_results[17] = (tbsize_result_t)   { {0, 0, 672, 26}, {489, 39}, 3, {
+        {  0,   2, 163,  41}, {163,   2, 330,  41}, {330,   2, 493,  41} } };
+    tbsize_results[18] = (tbsize_result_t)   { {0, 0, 672, 104}, {978, 24}, 6, {
+        {  0,   2, 163,  26}, {163,   2, 326,  26}, {326,   2, 489,  26},
+        {489,   2, 652,  26}, {652,   2, 819,  26}, {819,   2, 850,  26} } };
+    tbsize_results[19] = (tbsize_result_t)  { {0, 0, 672, 28}, {978, 38}, 6, {
+        {  0,   0, 163,  38}, {163,   0, 326,  38}, {326,   0, 489,  38},
+        {489,   0, 652,  38}, {652,   0, 819,  38}, {819,   0, 850,  38} } };
+    tbsize_results[20] = (tbsize_result_t) { {0, 0, 672, 100}, {239, 102}, 3, {
+        {  0,   2, 100,  102}, {100,   2, 139,  102}, {139, 2, 239,  102} } };
+    tbsize_results[21] = (tbsize_result_t) { {0, 0, 672, 42}, {185, 40}, 3, {
+        {  0,   2,  75,  40}, {75,   2, 118, 40}, {118, 2, 185, 40} } };
+    tbsize_results[22] = (tbsize_result_t)   { {0, 0, 672, 42}, {67, 40}, 1, {
+        {  0,   2,  67,  40} } };
+    tbsize_results[23] = (tbsize_result_t)   { {0, 0, 672, 42}, {67, 41}, 2, {
+        {  0,   2,  672,  41}, {  0,   41,  672,  80} } };
+}
+
+static void free_tbsize_results(void) {
+    HeapFree(GetProcessHeap(), 0, tbsize_results);
+    tbsize_results = NULL;
+}
 
 static int tbsize_numtests = 0;
 
@@ -831,7 +814,6 @@ static int tbsize_alt_numtests = 0;
         RECT rc; \
         int buttonCount, i, mask=(todomask); \
         tbsize_result_t *res = &tbsize_results[tbsize_numtests]; \
-        assert(tbsize_numtests < sizeof(tbsize_results)/sizeof(tbsize_results[0])); \
         GetClientRect(hToolbar, &rc); \
         /*check_rect("client", rc, res->rcClient);*/ \
         buttonCount = SendMessage(hToolbar, TB_BUTTONCOUNT, 0, 0); \
@@ -879,6 +861,8 @@ static void test_sizes(void)
     int style;
     int i;
 
+    init_tbsize_results();
+
     rebuild_toolbar_with_buttons(&hToolbar);
     style = GetWindowLong(hToolbar, GWL_STYLE);
     ok(style == (WS_CHILD|WS_VISIBLE|CCS_TOP), "Invalid style %x\n", style);
@@ -1105,6 +1089,7 @@ static void test_sizes(void)
         ok(SendMessageA(hToolbar, TB_SETBUTTONINFO, 33, (LPARAM)&tbinfo) != 0, "TB_SETBUTTONINFO failed\n");
     }
 
+    free_tbsize_results();
     DestroyWindow(hToolbar);
 }
 
-- 
1.7.1




More information about the wine-patches mailing list