[mutter] tests/monitor: Check that the CRTC "layout" is correct
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] tests/monitor: Check that the CRTC "layout" is correct
- Date: Fri, 22 Jan 2021 17:08:30 +0000 (UTC)
commit 3bd0037fa1d93521a2fd807824a3b953f65b02c4
Author: Jonas Ã…dahl <jadahl gmail com>
Date: Thu Oct 8 17:36:19 2020 +0200
tests/monitor: Check that the CRTC "layout" is correct
The layout should be the region of the stage the CRTC represents; check
that.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1488>
src/backends/meta-renderer.c | 2 +-
src/backends/meta-renderer.h | 4 ++++
src/tests/monitor-test-utils.c | 20 ++++++++++++++++++++
3 files changed, 25 insertions(+), 1 deletion(-)
---
diff --git a/src/backends/meta-renderer.c b/src/backends/meta-renderer.c
index 27ea7c38af..96c05a4341 100644
--- a/src/backends/meta-renderer.c
+++ b/src/backends/meta-renderer.c
@@ -172,7 +172,7 @@ meta_renderer_real_rebuild_views (MetaRenderer *renderer)
}
}
-static MetaRendererView *
+MetaRendererView *
meta_renderer_get_view_for_crtc (MetaRenderer *renderer,
MetaCrtc *crtc)
{
diff --git a/src/backends/meta-renderer.h b/src/backends/meta-renderer.h
index 134d23abf6..92b0727bbd 100644
--- a/src/backends/meta-renderer.h
+++ b/src/backends/meta-renderer.h
@@ -62,6 +62,10 @@ void meta_renderer_add_view (MetaRenderer *renderer,
GList * meta_renderer_get_views_for_monitor (MetaRenderer *renderer,
MetaMonitor *monitor);
+META_EXPORT_TEST
+MetaRendererView * meta_renderer_get_view_for_crtc (MetaRenderer *renderer,
+ MetaCrtc *crtc);
+
META_EXPORT_TEST
GList * meta_renderer_get_views (MetaRenderer *renderer);
diff --git a/src/tests/monitor-test-utils.c b/src/tests/monitor-test-utils.c
index 8a18e012aa..b9771ef1ac 100644
--- a/src/tests/monitor-test-utils.c
+++ b/src/tests/monitor-test-utils.c
@@ -325,6 +325,7 @@ void
check_monitor_configuration (MonitorTestCaseExpect *expect)
{
MetaBackend *backend = meta_get_backend ();
+ MetaRenderer *renderer = meta_backend_get_renderer (backend);
MetaMonitorManager *monitor_manager =
meta_backend_get_monitor_manager (backend);
MetaMonitorManagerTest *monitor_manager_test =
@@ -544,6 +545,8 @@ check_monitor_configuration (MonitorTestCaseExpect *expect)
{
MetaCrtcMode *expected_current_mode;
const GList *l_output;
+ MetaRendererView *view;
+ cairo_rectangle_int_t view_layout;
for (l_output = meta_crtc_get_outputs (crtc);
l_output;
@@ -572,6 +575,23 @@ check_monitor_configuration (MonitorTestCaseExpect *expect)
g_assert_cmpfloat_with_epsilon (crtc_config->layout.origin.y,
expect->crtcs[i].y,
FLT_EPSILON);
+
+ view = meta_renderer_get_view_for_crtc (renderer, crtc);
+ g_assert_nonnull (view);
+ clutter_stage_view_get_layout (CLUTTER_STAGE_VIEW (view),
+ &view_layout);
+ g_assert_cmpfloat_with_epsilon (crtc_config->layout.origin.x,
+ view_layout.x,
+ FLT_EPSILON);
+ g_assert_cmpfloat_with_epsilon (crtc_config->layout.origin.y,
+ view_layout.y,
+ FLT_EPSILON);
+ g_assert_cmpfloat_with_epsilon (crtc_config->layout.size.width,
+ view_layout.width,
+ FLT_EPSILON);
+ g_assert_cmpfloat_with_epsilon (crtc_config->layout.size.height,
+ view_layout.height,
+ FLT_EPSILON);
}
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]