mirror of
https://gitlab.freedesktop.org/wayland/weston
synced 2024-10-01 20:03:56 +00:00
tests: make use of helpers to create unique filenames
Start to use the helpers introduced in "tests: add helpers to create unique filenames". Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com> Pekka: Dropped program name from output_filename_for_test_case() calls as it is already added automatically. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
This commit is contained in:
parent
d29f904bec
commit
bac9060d54
|
@ -196,35 +196,19 @@ build_lcms_profile_output(const struct setup_args *arg)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static void
|
||||||
build_output_icc_profile(const struct setup_args *arg)
|
build_output_icc_profile(const struct setup_args *arg, const char *filename)
|
||||||
{
|
{
|
||||||
char *profile_name = NULL;
|
|
||||||
cmsHPROFILE profile = NULL;
|
cmsHPROFILE profile = NULL;
|
||||||
char *wd;
|
|
||||||
int ret;
|
|
||||||
bool saved;
|
bool saved;
|
||||||
|
|
||||||
wd = realpath(".", NULL);
|
|
||||||
assert(wd);
|
|
||||||
if (arg->type == PTYPE_MATRIX_SHAPER)
|
|
||||||
ret = asprintf(&profile_name, "%s/matrix-shaper-test-%s.icm", wd,
|
|
||||||
arg->pipeline->color_space);
|
|
||||||
else
|
|
||||||
ret = asprintf(&profile_name, "%s/cLUT-test-%s.icm", wd,
|
|
||||||
arg->pipeline->color_space);
|
|
||||||
assert(ret > 0);
|
|
||||||
|
|
||||||
profile = build_lcms_profile_output(arg);
|
profile = build_lcms_profile_output(arg);
|
||||||
assert(profile);
|
assert(profile);
|
||||||
|
|
||||||
saved = cmsSaveProfileToFile(profile, profile_name);
|
saved = cmsSaveProfileToFile(profile, filename);
|
||||||
assert(saved);
|
assert(saved);
|
||||||
|
|
||||||
cmsCloseProfile(profile);
|
cmsCloseProfile(profile);
|
||||||
free(wd);
|
|
||||||
|
|
||||||
return profile_name;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -251,9 +235,9 @@ fixture_setup(struct weston_test_harness *harness, const struct setup_args *arg)
|
||||||
setup.shell = SHELL_TEST_DESKTOP;
|
setup.shell = SHELL_TEST_DESKTOP;
|
||||||
setup.logging_scopes = "log,color-lcms-profiles,color-lcms-transformations,color-lcms-optimizer";
|
setup.logging_scopes = "log,color-lcms-profiles,color-lcms-transformations,color-lcms-optimizer";
|
||||||
|
|
||||||
file_name = build_output_icc_profile(arg);
|
file_name = output_filename_for_fixture(THIS_TEST_NAME, harness,
|
||||||
if (!file_name)
|
arg->meta.name, "icm");
|
||||||
return RESULT_HARD_ERROR;
|
build_output_icc_profile(arg, file_name);
|
||||||
|
|
||||||
weston_ini_setup(&setup,
|
weston_ini_setup(&setup,
|
||||||
cfgln("[core]"),
|
cfgln("[core]"),
|
||||||
|
|
|
@ -139,7 +139,7 @@ TEST(drm_writeback_screenshot) {
|
||||||
testlog("Screenshot %s reference image\n", match? "equal to" : "different from");
|
testlog("Screenshot %s reference image\n", match? "equal to" : "different from");
|
||||||
if (!match) {
|
if (!match) {
|
||||||
diffimg = visualize_image_difference(screenshot->image, reference, &clip, NULL);
|
diffimg = visualize_image_difference(screenshot->image, reference, &clip, NULL);
|
||||||
fname = screenshot_output_filename("drm-writeback-screenshot-error", 0);
|
fname = output_filename_for_test_case("error", 0, "png");
|
||||||
write_image_as_png(diffimg, fname);
|
write_image_as_png(diffimg, fname);
|
||||||
pixman_image_unref(diffimg);
|
pixman_image_unref(diffimg);
|
||||||
free(fname);
|
free(fname);
|
||||||
|
|
|
@ -156,7 +156,7 @@ TEST(internal_screenshot)
|
||||||
testlog("Screenshot %s reference image in clipped area\n", match? "matches" : "doesn't match");
|
testlog("Screenshot %s reference image in clipped area\n", match? "matches" : "doesn't match");
|
||||||
if (!match) {
|
if (!match) {
|
||||||
diffimg = visualize_image_difference(screenshot->image, reference_good, &clip, NULL);
|
diffimg = visualize_image_difference(screenshot->image, reference_good, &clip, NULL);
|
||||||
fname = screenshot_output_filename("internal-screenshot-error", 0);
|
fname = output_filename_for_test_case("error", 0, "png");
|
||||||
write_image_as_png(diffimg, fname);
|
write_image_as_png(diffimg, fname);
|
||||||
pixman_image_unref(diffimg);
|
pixman_image_unref(diffimg);
|
||||||
free(fname);
|
free(fname);
|
||||||
|
@ -165,7 +165,7 @@ TEST(internal_screenshot)
|
||||||
|
|
||||||
/* Test dumping of non-matching images */
|
/* Test dumping of non-matching images */
|
||||||
if (!match || dump_all_images) {
|
if (!match || dump_all_images) {
|
||||||
fname = screenshot_output_filename("internal-screenshot", 0);
|
fname = output_filename_for_test_case(NULL, 0, "png");
|
||||||
write_image_as_png(screenshot->image, fname);
|
write_image_as_png(screenshot->image, fname);
|
||||||
free(fname);
|
free(fname);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1142,17 +1142,6 @@ output_path(void)
|
||||||
return path;
|
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*
|
static const char*
|
||||||
reference_path(void)
|
reference_path(void)
|
||||||
{
|
{
|
||||||
|
@ -1891,25 +1880,18 @@ static void
|
||||||
write_visual_diff(pixman_image_t *ref_image,
|
write_visual_diff(pixman_image_t *ref_image,
|
||||||
pixman_image_t *shot,
|
pixman_image_t *shot,
|
||||||
const struct rectangle *clip,
|
const struct rectangle *clip,
|
||||||
const char *test_name,
|
|
||||||
int seq_no,
|
int seq_no,
|
||||||
const struct range *fuzz)
|
const struct range *fuzz)
|
||||||
{
|
{
|
||||||
char *fname;
|
char *fname;
|
||||||
char *ext_test_name;
|
|
||||||
pixman_image_t *diff;
|
pixman_image_t *diff;
|
||||||
int ret;
|
|
||||||
|
|
||||||
ret = asprintf(&ext_test_name, "%s-diff", test_name);
|
fname = output_filename_for_test_case("diff", seq_no, "png");
|
||||||
assert(ret >= 0);
|
|
||||||
|
|
||||||
fname = screenshot_output_filename(ext_test_name, seq_no);
|
|
||||||
diff = visualize_image_difference(ref_image, shot, clip, fuzz);
|
diff = visualize_image_difference(ref_image, shot, clip, fuzz);
|
||||||
write_image_as_png(diff, fname);
|
write_image_as_png(diff, fname);
|
||||||
|
|
||||||
pixman_image_unref(diff);
|
pixman_image_unref(diff);
|
||||||
free(fname);
|
free(fname);
|
||||||
free(ext_test_name);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1949,14 +1931,13 @@ verify_image(pixman_image_t *shot,
|
||||||
const struct rectangle *clip,
|
const struct rectangle *clip,
|
||||||
int seq_no)
|
int seq_no)
|
||||||
{
|
{
|
||||||
const char *test_name = get_test_name();
|
|
||||||
const struct range gl_fuzz = { -3, 4 };
|
const struct range gl_fuzz = { -3, 4 };
|
||||||
pixman_image_t *ref = NULL;
|
pixman_image_t *ref = NULL;
|
||||||
char *ref_fname = NULL;
|
char *ref_fname = NULL;
|
||||||
char *shot_fname;
|
char *shot_fname;
|
||||||
bool match = false;
|
bool match = false;
|
||||||
|
|
||||||
shot_fname = screenshot_output_filename(test_name, seq_no);
|
shot_fname = output_filename_for_test_case("shot", seq_no, "png");
|
||||||
|
|
||||||
if (ref_image) {
|
if (ref_image) {
|
||||||
ref_fname = screenshot_reference_filename(ref_image, ref_seq_no);
|
ref_fname = screenshot_reference_filename(ref_image, ref_seq_no);
|
||||||
|
@ -1969,8 +1950,7 @@ verify_image(pixman_image_t *shot,
|
||||||
ref_fname, shot_fname, match ? "PASS" : "FAIL");
|
ref_fname, shot_fname, match ? "PASS" : "FAIL");
|
||||||
|
|
||||||
if (!match) {
|
if (!match) {
|
||||||
write_visual_diff(ref, shot, clip,
|
write_visual_diff(ref, shot, clip, seq_no, &gl_fuzz);
|
||||||
test_name, seq_no, &gl_fuzz);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pixman_image_unref(ref);
|
pixman_image_unref(ref);
|
||||||
|
|
|
@ -249,9 +249,6 @@ void
|
||||||
expect_protocol_error(struct client *client,
|
expect_protocol_error(struct client *client,
|
||||||
const struct wl_interface *intf, uint32_t code);
|
const struct wl_interface *intf, uint32_t code);
|
||||||
|
|
||||||
char *
|
|
||||||
screenshot_output_filename(const char *basename, uint32_t seq);
|
|
||||||
|
|
||||||
char *
|
char *
|
||||||
screenshot_reference_filename(const char *basename, uint32_t seq);
|
screenshot_reference_filename(const char *basename, uint32_t seq);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue