mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2025-12-20 09:20:06 +01:00
Remove XFAIL_TESTS from Makefile.am
The variable XFAIL_TESTS is not used anymore since commit e90073f7dd.
The description for the known failures are moved into the respective tests as
comments.
The following descriptions were dropped:
- surface-pattern-big: Didn't really explain the failure
- big-line: Test isn't failing any more
- self-intersecting: Only XFAIL on quartz, but description doesn't match this
The following tests don't have a xfail reference image and seem to fail just
because of not having a reference image at all (I kept their description for
now):
big-trap, long-lines, self-copy-overlap
Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
parent
5e6e453671
commit
bc89be2fff
10 changed files with 30 additions and 73 deletions
|
|
@ -142,79 +142,6 @@ surface-source.c \
|
||||||
testtable.js \
|
testtable.js \
|
||||||
reference
|
reference
|
||||||
|
|
||||||
# Any test for which the code committed to CVS is expected to fail
|
|
||||||
# should be listed here.
|
|
||||||
#
|
|
||||||
# This way, we can avoid being bothered by reports of bugs we are
|
|
||||||
# aware of, but users can still report when tests start behaving in
|
|
||||||
# unexpected ways on their system.
|
|
||||||
#
|
|
||||||
# Of course, before any "release" of cairo we should eliminate
|
|
||||||
# everything from this list by fixing the bugs. (We don't necessarily
|
|
||||||
# have to be that strict for "snapshots" though.)
|
|
||||||
#
|
|
||||||
# Analysis of XFAIL errors:
|
|
||||||
# alpha-similar - discrepancy between backends in applying color
|
|
||||||
# components of a pure alpha surface
|
|
||||||
# big-line - range overflow of fixed-point
|
|
||||||
# big-trap - range overflow of fixed-point
|
|
||||||
# degenerate-dash - needs path editing in PS to convert degenerate
|
|
||||||
# end-caps into the shapes as expected by cairo
|
|
||||||
# (Or maybe PS is the correct behaviour?)
|
|
||||||
# degenerate-path - undefined behaviour in PS, needs path editing to
|
|
||||||
# convert degenerate segments into circles/rectangles
|
|
||||||
# as expected by cairo
|
|
||||||
# device-offset-scale - complication of pre-multiplying device_offset
|
|
||||||
# into the pattern_matrix and then requiring further
|
|
||||||
# manipulation for SVG
|
|
||||||
# extend-pad - lacks implementation in pixman and consequently used
|
|
||||||
# as an excuse for lack of support in other backends
|
|
||||||
# fallback-resolution - The essential problem here is that the recording-surface
|
|
||||||
# has recorded a sequence of operations with one device
|
|
||||||
# transformation, and we attempt to replay it with
|
|
||||||
# another (basically a scale-factor for the falback
|
|
||||||
# resolution). Carl begun to look at this with his
|
|
||||||
# chain-of-bugs, but the can of worms is much bigger.
|
|
||||||
# It appears to be a design flaw in the recording-surface
|
|
||||||
# that may spread further...
|
|
||||||
# My solution would be to lock Behad and Adrian in a
|
|
||||||
# room, with Carl as a moderator and not let them out
|
|
||||||
# until they have come up with an interface and
|
|
||||||
# semantics that actually work. :-)
|
|
||||||
# in-fill-empty-trapezoid The cairo_in_fill () function can sometimes
|
|
||||||
# produce false positives when the tessellator
|
|
||||||
# produces empty trapezoids and the query
|
|
||||||
# point lands exactly on a trapezoid edge.
|
|
||||||
# long-lines - range overflow of fixed-point
|
|
||||||
# scale-offset-image - loss of precision converting a cairo matrix to
|
|
||||||
# scale-offset-similar pixman's fixed point format.
|
|
||||||
# self-copy-overlap - vector surfaces take snapshot of patterns in contrast
|
|
||||||
# to the raster backends which don't. One solution
|
|
||||||
# would be to clone overlapping areas of dst/source, so
|
|
||||||
# patterns were effectively snapshotted across all
|
|
||||||
# backends.
|
|
||||||
# self-intersecting - incremental trapezoidation of strokes can generate
|
|
||||||
# overlapping traps. Needs self-intersection analysis
|
|
||||||
# on cairo_traps_t after strokes.
|
|
||||||
# Test case should also be expanded to hit special-case
|
|
||||||
# tessellators as well.
|
|
||||||
# surface-pattern-big...- Strange, unexplained results for SVG/PS.
|
|
||||||
XFAIL_TESTS = \
|
|
||||||
alpha-similar$(EXEEXT) \
|
|
||||||
big-line$(EXEEXT) \
|
|
||||||
big-trap$(EXEEXT) \
|
|
||||||
degenerate-dash$(EXEEXT) \
|
|
||||||
degenerate-path$(EXEEXT) \
|
|
||||||
device-offset-scale$(EXEEXT) \
|
|
||||||
extend-pad$(EXEEXT) \
|
|
||||||
fallback-resolution$(EXEEXT) \
|
|
||||||
in-fill-empty-trapezoid$(EXEEXT) \
|
|
||||||
long-lines$(EXEEXT) \
|
|
||||||
self-copy-overlap$(EXEEXT) \
|
|
||||||
self-intersecting$(EXEEXT) \
|
|
||||||
surface-pattern-big-scale-down$(EXEEXT) \
|
|
||||||
$(NULL)
|
|
||||||
|
|
||||||
# Any test that doesn't generate a log file goes here
|
# Any test that doesn't generate a log file goes here
|
||||||
NOLOG_TESTS = \
|
NOLOG_TESTS = \
|
||||||
fallback-resolution \
|
fallback-resolution \
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,10 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: discrepancy between backends in applying color components of a pure
|
||||||
|
* alpha surface
|
||||||
|
*/
|
||||||
CAIRO_TEST (alpha_similar,
|
CAIRO_TEST (alpha_similar,
|
||||||
"Tests creation of similar alpha surfaces"
|
"Tests creation of similar alpha surfaces"
|
||||||
"\nApplication of a pure-alpha similar source is inconsistent across backends.",
|
"\nApplication of a pure-alpha similar source is inconsistent across backends.",
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,7 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* XFAIL: range overflow of fixed-point */
|
||||||
CAIRO_TEST (big_trap,
|
CAIRO_TEST (big_trap,
|
||||||
"Test oversize trapezoid with a clip region"
|
"Test oversize trapezoid with a clip region"
|
||||||
"\nTest needs to be adjusted to trigger the original bug",
|
"\nTest needs to be adjusted to trigger the original bug",
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,11 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: needs path editing in PS to convert degenerate
|
||||||
|
* end-caps into the shapes as expected by cairo (Or maybe PS is the correct
|
||||||
|
* behaviour?)
|
||||||
|
*/
|
||||||
CAIRO_TEST (degenerate_dash,
|
CAIRO_TEST (degenerate_dash,
|
||||||
"Tests the behaviour of dashed segments that end on a off-on transition",
|
"Tests the behaviour of dashed segments that end on a off-on transition",
|
||||||
"dash, degenerate", /* keywords */
|
"dash, degenerate", /* keywords */
|
||||||
|
|
|
||||||
|
|
@ -108,6 +108,10 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: undefined behaviour in PS, needs path editing to convert degenerate
|
||||||
|
* segments into circles/rectangles as expected by cairo
|
||||||
|
*/
|
||||||
CAIRO_TEST (degenerate_path,
|
CAIRO_TEST (degenerate_path,
|
||||||
"Tests the behaviour of degenerate paths with different cap types",
|
"Tests the behaviour of degenerate paths with different cap types",
|
||||||
"degenerate", /* keywords */
|
"degenerate", /* keywords */
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,10 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: complication of pre-multiplying device_offset into the pattern_matrix
|
||||||
|
* and then requiring further manipulation for SVG
|
||||||
|
*/
|
||||||
CAIRO_TEST (device_offset_scale,
|
CAIRO_TEST (device_offset_scale,
|
||||||
"Test that the device-offset transform is transformed by the ctm.",
|
"Test that the device-offset transform is transformed by the ctm.",
|
||||||
"device-offset", /* keywords */
|
"device-offset", /* keywords */
|
||||||
|
|
|
||||||
|
|
@ -96,6 +96,11 @@ preamble (cairo_test_context_t *ctx)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: The cairo_in_fill () function can sometimes produce false positives
|
||||||
|
* when the tessellator produces empty trapezoids and the query point lands
|
||||||
|
* exactly on a trapezoid edge.
|
||||||
|
*/
|
||||||
CAIRO_TEST (in_fill_empty_trapezoid,
|
CAIRO_TEST (in_fill_empty_trapezoid,
|
||||||
"Test that the tessellator isn't producing obviously empty trapezoids",
|
"Test that the tessellator isn't producing obviously empty trapezoids",
|
||||||
"in, trap", /* keywords */
|
"in, trap", /* keywords */
|
||||||
|
|
|
||||||
|
|
@ -74,6 +74,7 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* XFAIL: range overflow of fixed-point */
|
||||||
CAIRO_TEST (long_lines,
|
CAIRO_TEST (long_lines,
|
||||||
"Test long lines"
|
"Test long lines"
|
||||||
"\nLong lines are not drawn due to the limitations of the internal 16.16 fixed-point coordinates",
|
"\nLong lines are not drawn due to the limitations of the internal 16.16 fixed-point coordinates",
|
||||||
|
|
|
||||||
|
|
@ -133,6 +133,7 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* XFAIL: loss of precision converting a cairo matrix to */
|
||||||
CAIRO_TEST (scale_offset_image,
|
CAIRO_TEST (scale_offset_image,
|
||||||
"Tests drawing surfaces under various scales and transforms",
|
"Tests drawing surfaces under various scales and transforms",
|
||||||
"surface, scale-offset", /* keywords */
|
"surface, scale-offset", /* keywords */
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,11 @@ draw (cairo_t *cr, int width, int height)
|
||||||
return CAIRO_TEST_SUCCESS;
|
return CAIRO_TEST_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XFAIL: vector surfaces take snapshot of patterns in contrast to the raster
|
||||||
|
* backends which don't. One solution would be to clone overlapping areas of
|
||||||
|
* dst/source, so patterns were effectively snapshotted across all backends.
|
||||||
|
*/
|
||||||
CAIRO_TEST (self_copy_overlap,
|
CAIRO_TEST (self_copy_overlap,
|
||||||
"Tests painting to itself using itself as the source"
|
"Tests painting to itself using itself as the source"
|
||||||
"\nBackends treat this case inconsistently---vector backends are creating snapshots.",
|
"\nBackends treat this case inconsistently---vector backends are creating snapshots.",
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue