Vladimir Pankratov wrote:
Nikolay Sivov wrote:

The very first one was better (when you fixed only division by zero).
Now you're changing path earlier:
---
+ if(rows <= 0) rows = 1;
---
There's no tests currently for that (<=0 isn't tested), could you add them (to test_setrows() I suppose)?

What's write in this test?

Maybe something like this:

RECT rc;
int rows;

memset(&rc, 0xCC, sizeof(rc));
SendMessageA(hToolbar, TB_SETROWS, MAKEWPARAM(0, TRUE), (LPARAM) &rc);

rows = SendMessageA(hToolbar, TB_GETROWS, 0, 0);

ok(rows == 1, "Unexpected number of rows %d (expected %d)\n", rows, 1);

memset(&rc, 0xCC, sizeof(rc));
SendMessageA(hToolbar, TB_SETROWS, MAKEWPARAM(-1, TRUE), (LPARAM) &rc);

rows = SendMessageA(hToolbar, TB_GETROWS, 0, 0);

ok(rows == 1, "Unexpected number of rows %d (expected %d)\n", rows, 1);

Yeah, just add 3 new lines here for -2 (to be sure, sometimes -1 has special meaning), -1 and 0:
---
static tbrows_result_t tbrows_results[] =
{
   {1, TRUE,  1}, /* 0: Simple case 9 in a row */
   {2, TRUE,  2}, /* 1: Another simple case 5 on one row, 4 on another*/
   {3, FALSE, 3}, /* 2: 3 lines - should be 3 lines of 3 buttons */
   {8, FALSE, 5}, /* 3: 8 lines - should be 5 lines of 2 buttons */
   {8, TRUE,  9}, /* 4: 8 lines but grow - should be 9 lines */
   {1, TRUE,  1}  /* 5: Back to simple case */
};
---



Reply via email to