tests: Add client helper routines for output and reference filenames
authorBryce Harrington <bryce@osg.samsung.com>
Tue, 9 Dec 2014 22:46:36 +0000 (14:46 -0800)
committerBryce Harrington <bryce@osg.samsung.com>
Thu, 21 May 2015 22:05:20 +0000 (15:05 -0700)
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewed-By: Derek Foreman <derekf@osg.samsung.com>
tests/weston-test-client-helper.c
tests/weston-test-client-helper.h

index 41ed2087c993c0550fcda487c4258bc83005476f..00fdf8f93d097bc5989396efa3bf4cd753d2d693 100644 (file)
@@ -812,3 +812,41 @@ create_client_and_test_surface(int x, int y, int width, int height)
 
        return client;
 }
+
+static const char*
+output_path(void) {
+       char *path = getenv("WESTON_TEST_OUTPUT_PATH");
+
+       if (!path)
+               return ".";
+       return path;
+       }
+
+char*
+screenshot_output_filename(const char *basename, uint32_t seq) {
+       char *filename;
+
+       if (asprintf(&filename, "%s/%s-%02d.png",
+                                output_path(), basename, seq) < 0)
+               return NULL;
+       return filename;
+}
+
+static const char*
+reference_path(void) {
+       char *path = getenv("WESTON_TEST_REFERENCE_PATH");
+
+       if (!path)
+               return "./tests/reference";
+       return path;
+}
+
+char*
+screenshot_reference_filename(const char *basename, uint32_t seq) {
+       char *filename;
+
+       if (asprintf(&filename, "%s/%s-%02d.png",
+                                reference_path(), basename, seq) < 0)
+               return NULL;
+       return filename;
+}
index 863547165ad3125075fa7418f63b5b10957ea8bc..b46f158a7629abe97f83293b2bed5cb1553c9ce4 100644 (file)
@@ -180,4 +180,10 @@ void
 expect_protocol_error(struct client *client,
                      const struct wl_interface *intf, uint32_t code);
 
+char*
+screenshot_output_filename(const char *basename, uint32_t seq);
+
+char*
+screenshot_reference_filename(const char *basename, uint32_t seq);
+
 #endif