Commit graph

533 commits

Author SHA1 Message Date
Vladimir Vukicevic
cd6b44e9c9 [test] Fix composite-integer-translate-over test
This test wasn't translating by an integer, but instead by 5.5.  Fixed
test and reference image.
2006-09-29 14:44:00 -07:00
Carl Worth
e4dc73ab1c Rename test from stale path-data name to copy-path 2006-09-26 15:48:06 -07:00
Carl Worth
5f833c134b Fix cairo_copy_path and cairo_copy_path_flat to propagate errors.
One of these functions was already documented to be doing this, and
the other one should have been. Now the documentation and behavior
for both are consistent, (and the path-data test case verifies this).
2006-09-26 15:48:06 -07:00
Robert O'Callahan
191e108b93 Add clip getters API + tests
Add new public API methods:

void cairo_clip_extents (cairo_t *cr,                                               double *x1, double *y1,
    double *x2, double *y2);
cairo_rectangle_list_t *cairo_copy_clip_rectangles (cairo_t *);
void cairo_rectangle_list_destroy (cairo_rectangle_list_t *);

Also add 'get-clip' and 'get-path-extents' tests.
2006-09-25 23:22:45 -07:00
Vladimir Vukicevic
303b529195 dash and pattern getter functions
Adds API functions for inspecting the current dash state, as well as
the contents of pattern objects:

  cairo_get_dash
  cairo_get_dash_count
  cairo_pattern_get_rgba
  cairo_pattern_get_surface
  cairo_pattern_get_color_stop_rgba
  cairo_pattern_get_color_stop_count
  cairo_pattern_get_linear_points
  cairo_pattern_get_radial_circles
2006-09-19 12:19:21 -07:00
Vladimir Vukicevic
a56b962428 Add win32 output files to gitignore 2006-09-19 12:19:21 -07:00
Vladimir Vukicevic
924bbd06f3 Check for valid path status value before calling _cairo_set_error
cairo_status_t is a signed type, so we need to check for invalid codes
that are < 0 as well.

Also removes the MSVC goop in path-data.c that was attempting to work
around the assert earlier.
2006-09-11 12:36:41 -07:00
Vladimir Vukicevic
e1a8a8b65a [win32] Set win32 assertion failure handlers for tests to stderr
assert() will default to displaying a dialog box, which makes it hard
to run tests automatically.  Set the reporting mode to only report
to stderr in cairo_test(), and in path-data, since that triggers
an early assert.
2006-09-09 23:54:40 -07:00
Vladimir Vukicevic
00d5a2ed48 [win32] Makefile.win32: use correct (/MD) runtime library flag everywhere
There was a bad mix of LIBCMT (the static runtime lib) and MSVCRT (the dynamic
one) before, because LIBCMT is the default.  This specifies /MD everywhere.
2006-09-09 23:29:17 -07:00
Vladimir Vukicevic
d78fd375d3 [win32] Makefile.win32: fix test and add html targets
Add html target to toplevel and test/ Makefile.win32
2006-09-09 22:18:47 -07:00
Vladimir Vukicevic
d3076a1843 Merge branch 'master' of git+ssh://git.cairographics.org/git/cairo into cairo-master 2006-09-09 18:57:57 -07:00
Vladimir Vukicevic
9735cb9a24 Improve make-html.pl, add self-contained output format
Setting CAIRO_TEST_SHOW_INLINE in the environment before running
make-html.pl will generate a html file with all the logs and necessary
images inlined as data URI's.
2006-09-09 18:55:46 -07:00
Carl Worth
aeca64f6cd boilerplate: Allow targets to distinguish between test and perf.
Add a new cairo_boilerplate_mode_t so that the boilerplate targets can
do slightly different things if being tested for correctness vs. being
run for performance.
2006-09-09 17:32:50 -07:00
Vladimir Vukicevic
97f26c5235 Merge branch 'master' of git+ssh://git.cairographics.org/git/cairo into cairo-master 2006-09-09 17:09:03 -07:00
Vladimir Vukicevic
0e59041321 [win32] win32-specific Makefiles for building with MSVC
This patch adds a bunch of makefiles for building cairo with Visual C++.
gnu make is still required, and make must be run from a command prompt
that has the Visual C++ paths set up, as well as has the cygwin environment
in the path.  Run 'make -f Makefile.win32'.
2006-09-09 17:08:18 -07:00
Vladimir Vukicevic
3c5a02c3ed [win32] Misc win32 compilation fixes
Fix win32/MSVC defines for snprintf, inline, and M_PI
2006-09-09 17:06:21 -07:00
Carl Worth
416e94532b test/bitmap-font: Fix arguments to FcFreeTypeQuery to avoid warnings. 2006-09-09 16:04:51 -07:00
Carl Worth
195fd5cde6 boilerplate: Rename cairo_test_target_t to cairo_boilerplate_target_t 2006-09-09 16:04:51 -07:00
Carl Worth
3a92ab69c8 test: Report details errors when image output files cannot be found. 2006-09-07 13:09:25 -07:00
Behdad Esfahbod
3d398b1a21 [test/Makefile] Unset DIST_SUBDIRS 2006-09-06 13:49:53 -04:00
Carl Worth
bcb7863f00 Move target tolerance to cairo_test_target structure (should let single-pixel SVG errors pass)
Previously we were setting the target tolerance based on the surface
type. But that doesn't work as multiple backends will provide a surface
of type meta. So instead we put the tolerance as a value in the
cairo_test_target data structure.

With this change, some single-pixel errors of 1 in the SVG backend
should now be ignored.
2006-09-05 22:25:21 -07:00
Benjamin Otte
2ebb9af434 boilerplate: Fix compilation for glitz. 2006-08-31 13:30:10 -07:00
Behdad Esfahbod
7ad6e94101 [test] Use FcFreeTypeQuery 2006-08-31 14:22:10 -04:00
Behdad Esfahbod
851dd63719 [test] Use $(srcdir) to find valgrind supressions 2006-08-31 13:18:47 -04:00
Carl Worth
2c16aa6304 perf: Don't measure meta-surface-backed surface types. 2006-08-31 08:53:58 -07:00
Carl Worth
4915e0baa7 boilerplate: Fix missing include of config.h which was preventing many backends from being tested 2006-08-31 08:36:29 -07:00
Carl Worth
d1834cca19 test: Ignore single-bit errors for SVG backend.
The interface of the various buffer/image_diff functions is improved to
provide the maximum pixel difference in addition to the number of pixels
that differ. This value can then be used to compare against a per-backend
tolerance.

Currently I've set the SVG backend's tolerance to 1 to handle some issues
we're currently seeing of single-bit differences on different systems, (but
we're not exactly sure why yet).

Also I improved the image_diff routines to properly report a status value
on failure rather than the bogus value of -1 for pixels_changed.
2006-08-31 04:01:10 -07:00
Carl Worth
d52a1f762d Move test-specific stuff out of boilerplate/ and back into test/
This now gives us two separate libtool convenience libraries,
so they have to have separate names now:
libcairoboilerplate.la and libcairotest.la.
2006-08-31 01:39:06 -07:00
Carl Worth
9547521885 boilerplate: Remove custom read/write-png code in favor of using cairo surfaces
Also combine image_diff and image_diff_flattened into a single function
2006-08-31 01:09:39 -07:00
Carl Worth
5ef4c991f6 test: Add link to test log file in HTML output 2006-08-30 15:38:15 -07:00
Carl Worth
7f4e83ceeb Split libcairotest files out from test/ and into boilerplate/
The idea here is to setup boilerplate to allow code sharing between
test/ and the upcoming perf/
2006-08-30 15:34:27 -07:00
Behdad Esfahbod
a5f068e10d [test] Add 128 to any diff component such that differences are visible 2006-08-30 13:19:05 -04:00
Behdad Esfahbod
96c8f92883 [test] bufferdiff: take abs of the pixel diffs. Oops! 2006-08-22 22:00:58 -04:00
Carl Worth
790a359f89 EXTRA_DIST: Add missing source-clip-scale-svg-ref.png 2006-08-18 16:46:57 -07:00
Carl Worth
2860af3ce2 bitmap-font: Add missing pdf-specific reference image 2006-08-18 16:35:27 -07:00
Carl Worth
5f94275a4b Update .gitignore due to recent rename. 2006-08-18 16:09:53 -07:00
Carl Worth
3cf3d4343b Mark ft-text-vertical-layout tests as XFAIL since we'repunting these from the 1.2.4 release. 2006-08-18 14:23:31 -07:00
Carl Worth
84a9ca1835 Rename ft-text-vertical-layout-truetype to ft-text-vertical-layout-type3 2006-08-18 13:08:59 -07:00
Behdad Esfahbod
9c2d9d590b [test] text-rotate: Update ref images to make image pass again
after the font_options change we made in the test suite a while back.
2006-08-18 12:04:16 -04:00
Carl Worth
861f1cb4f7 Merge branch 'jrmuizel-stroking-fixes' into cairo
Conflicts:

	test/dash-caps-joins-ps-argb32-ref.png
	test/degenerate-path-ps-argb32-ref.png
	test/degenerate-path.c
2006-08-18 07:59:20 -07:00
Carl Worth
200a2d811e close-path: New test case to demonstrate corner case discovered by Tim Rowley
The bug shows up when doing cairo_copy_path_flat for a path that has
a curve_to immediately after a close_path. When the curve is flattened
the flattener is using (0,0) as the initial point rather than the proper
close_to point.

This test also serves to ensure a similar bug doesn't crop up when
closing a path that begins with an implicit move_to, (as from cairo_arc).
In that bug the path state may have no last-move-point and the path
is closed to (0,0). This bug is not present currently, but did appear
during the development of a fix for the bug above.
2006-08-18 06:32:11 -07:00
Behdad Esfahbod
6f8cf53b1e [test] Don't use signals if signal.h is not available 2006-08-17 22:03:36 -04:00
Carl Worth
e4e5002c48 bitmap-font: Add cairo_text_path;fill to demonstrate bug #7889 2006-08-17 17:50:41 -07:00
Carl Worth
e8e7ccf602 Add rotation to bitmap-font to demonstrate failure of bug #7888 2006-08-17 17:50:40 -07:00
Carl Worth
d7b52a8f44 Add long-lines to the XFAIL list, (we're not fixing it before 1.2.4) 2006-08-17 16:14:21 -07:00
Carl Worth
ccf60202d3 Add SVG-specific reference image for source-clip-scale test
The difference here is that the SVG backend uses a meta-surface for
its similar surface, so there are no rasterization/filtering
artefacts when scaling the source surface.
2006-08-17 13:35:16 -07:00
Carl Worth
64d2feb9f6 Harmonize implementations of source-clip and source-clip-scale to make similarities more evident. 2006-08-17 13:35:15 -07:00
Carl Worth
524507c39f Rename src-clip test to source-clip-scale 2006-08-17 13:35:15 -07:00
Vladimir Vukicevic
afb50580ce Add src-clip test case to demonstrate bug with clipping applying to a source surface. 2006-08-17 13:35:15 -07:00
Behdad Esfahbod
6122cc85c8 [test] Add $(LDADD) to svg2png_LDADD, to link to correct cairo
Previously it was using the cairo found in system.
2006-08-16 20:07:06 -04:00