return POS_CENTER;
}
-static gboolean
-test_position_with_align (GtkTreeView *tree_view,
- enum Pos pos,
- gint row_y,
- gint row_start,
- gdouble row_height,
- gdouble row_align)
+static void
+assert_position_with_align (GtkTreeView *tree_view,
+ enum Pos pos,
+ gint row_y,
+ gint row_start,
+ gdouble row_height,
+ gdouble row_align)
{
- gboolean passed = TRUE;
GtkAdjustment *vadjustment = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (tree_view));
/* Switch on row-align: 0.0, 0.5, 1.0 */
* - dy should be equal to the top
* y coordinate of the row.
*/
- if (row_y != 0)
- passed = FALSE;
- if (gtk_adjustment_get_value (vadjustment) != row_start)
- passed = FALSE;
+ g_assert (row_y == 0);
+ g_assert (gtk_adjustment_get_value (vadjustment) == row_start);
} else {
/* The row can be anywhere at the last
* page of the tree view.
* - dy is set to the start of the
* last page.
*/
- if (gtk_adjustment_get_value (vadjustment) != gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment))
- passed = FALSE;
+ g_assert (gtk_adjustment_get_value (vadjustment) == gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment));
}
break;
* show the first page.
* - dy should be zero
*/
- if (gtk_adjustment_get_value (vadjustment) != 0)
- passed = FALSE;
+ g_assert (gtk_adjustment_get_value (vadjustment) == 0);
} else if (pos == POS_BOTTOM
&& row_start >= gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment) / 2) {
/* For the last half of the bottom view we
* - dy should be the start of the
* last page.
*/
- if (gtk_adjustment_get_value (vadjustment) != gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment))
- passed = FALSE;
+ g_assert (gtk_adjustment_get_value (vadjustment) == gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment));
} else {
/* The row is located in the middle of
* the view.
* center of the view).
*/
gdouble middle = gtk_adjustment_get_page_size (vadjustment) / 2 - row_height / 2;
- if (row_y != ceil (middle) && row_y != floor (middle))
- passed = FALSE;
+ g_assert (row_y == ceil (middle) || row_y == floor (middle));
}
break;
* first page of the tree view.
* - dy is zero.
*/
- if (gtk_adjustment_get_value (vadjustment) != 0)
- passed = FALSE;
+ g_assert (gtk_adjustment_get_value (vadjustment) == 0);
} else if (pos == POS_CENTER || pos == POS_BOTTOM) {
/* The row is the last row visible in the
* view.
* (ie we are not on the first page).
* - dy is greater than zero
*/
- if (row_start < gtk_adjustment_get_page_size (vadjustment)
- && row_start + row_height < gtk_adjustment_get_page_size (vadjustment))
- passed = FALSE;
- if (gtk_adjustment_get_value (vadjustment) <= 0)
- passed = FALSE;
- if (row_y != gtk_adjustment_get_page_size (vadjustment) - row_height)
- passed = FALSE;
+ g_assert (row_start >= gtk_adjustment_get_page_size (vadjustment)
+ || row_start + row_height >= gtk_adjustment_get_page_size (vadjustment));
+ g_assert (gtk_adjustment_get_value (vadjustment) > 0);
+ g_assert (row_y == gtk_adjustment_get_page_size (vadjustment) - row_height);
}
break;
}
-
- return passed;
}
-static gboolean
-test_position_without_align (GtkTreeView *tree_view,
- gdouble row_start,
- gdouble row_height)
+static void
+assert_position_without_align (GtkTreeView *tree_view,
+ gdouble row_start,
+ gdouble row_height)
{
GtkAdjustment *vadjustment = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (tree_view));
- /* Without align the tree view does as less work as possible,
- * so basically we only have to check whether the row
- * is visible on the screen.
- */
- if (gtk_adjustment_get_value (vadjustment) <= row_start
- && gtk_adjustment_get_value (vadjustment) + gtk_adjustment_get_page_size (vadjustment) >= row_start + row_height)
- return TRUE;
-
- return FALSE;
+ /* Without align the tree view does as less work as possible,
+ * so basically we only have to check whether the row
+ * is visible on the screen.
+ */
+ g_assert (gtk_adjustment_get_value (vadjustment) <= row_start);
+ g_assert (gtk_adjustment_get_value (vadjustment) + gtk_adjustment_get_page_size (vadjustment) >= row_start + row_height);
}
static void
path_str = gtk_tree_path_to_string (path);
if (use_align) {
- g_assert (test_position_with_align (tree_view, pos, rect.y,
- row_start, rect.height, row_align));
+ assert_position_with_align (tree_view, pos, rect.y,
+ row_start, rect.height, row_align);
} else {
- g_assert (test_position_without_align (tree_view, row_start, rect.height));
+ assert_position_without_align (tree_view, row_start, rect.height);
}
g_free (path_str);