Commit Graph

236 Commits

Author SHA1 Message Date
86e14c2c2f app/tests: Add a GIMP 2.8 XCF feature test template
Add template code for writing a test that makes sure GIMP 2.8 images
do not lose information when written to a file and loaded again, in
hope that mitch will fill in the rest ;)
2010-01-02 23:30:14 +01:00
19183f81b2 app/tests: Test loading of an XCF file created with GIMP 2.6
Do a basic regression test on being able to load XCF files created
with GIMP 2.6. To add things to this file, add things to
gimp_write_and_read_file() and run the code in GIMP 2.6.

Also add a file-local helper function gimp_test_load_image().
2010-01-02 23:16:55 +01:00
f86f9e2adf app/tests: Sort TESTS in Makefile.am 2010-01-02 23:10:54 +01:00
745d2dbf76 app/tests: Add a "gimp-comment" with an explanation of the file
Make it clear that the file is created from pure code execution and
not graphically with GIMP.
2010-01-02 23:09:21 +01:00
0724959b61 app/tests: Make channel same size as image in XCF test
In order to avoid crashes when rending the image, make the channel the
same size as the image.
2010-01-02 23:06:57 +01:00
c380512ce1 Revert "app: Add gimp_vectors_get_stroke()"
This reverts commit 2d2b6f03c5 and
adapts the code. We can use gimp_vectors_stroke_get_next (vectors,
NULL) instead of gimp_vectors_get_stroke (vectors, 0). Thanks to nomis
for pointing this out.
2010-01-02 20:20:10 +01:00
3e81e87bca app/tests: Improve code coverage and test names in XCF test
Add another layer, a channel, a selection and two vectors to the test
image. Parameterize the image construction so we can create different
variants of test images, and add a test for an "unusual" GimpImage,
which is an image with compatible vectors and with a floating
selection. The test are renamed to something with "GIMP 2.6" to
emphasize that the tests work with files that might as well have been
constructed with GIMP 2.6. Also adjust the list of things that should
be tested, but that isn't tested yet.

FWIW, using the GNU gcc gcov tool it can be seen that xcf-load.c now
has a code coverage of 67.04% of 722 lines.
2010-01-02 18:55:44 +01:00
a58e7ee918 app: add .libs to .gitignore 2009-12-30 15:22:35 +01:00
14ca90ac2f app/tests: Clean up test-ui.c a bit 2009-12-28 11:00:40 +01:00
a3a8cf16c0 add libgimpapptestutils.a to .gitignore 2009-12-27 19:47:14 +01:00
780ebd7c24 app/tests: Fix warnings about files not existing
Let each test sets GIMP2_DIRECTORY on their own through the help of a
new test utility function gimp_test_utils_set_gimp2_directory() that
is compiled into its own lib which tests are then linked with. Also,
instead of using "/tmp/gimpdir", we use "gimpdir-empty" in the source
dir. This way we get rid of a bunch of annoying warnings when running
the tests and have more control.
2009-12-24 23:01:48 +01:00
47709fab18 app/tests: Use implicit _SOURCES 2009-12-24 18:54:11 +01:00
999fb38164 app/tests: Create brushes, gradients and patterns dirs in gimpdir
Create brushes, gradients and patterns dirs in gimpdir to get rid of
warnings for those dirs not existing.
2009-12-24 18:15:43 +01:00
1e89d01417 app/tests: Run main loop until idle instead of for a given time
Use gimp_test_run_mainloop_until_idle() instead of
gimp_test_run_temp_mainloop () since we then don't have to wait for a
timeout, we only wait the minimal amount of time.
2009-12-24 17:50:39 +01:00
5e9aa1281c app/tests: Add regression test "/gimp-ui/tool-options-editor-updates"
Add a new test suite called "test-ui" which will contain several UI
related tests. Right now it just contains a test to make sure that the
tool options editor is updated when the tool changes
("/gimp-ui/tool-options-editor-updates").
2009-12-24 17:50:39 +01:00
caccbe8b67 app/tests: Add XCF write-and-load sanity test
Lay a foundation for having automated XCF file format testing. The
only current test constructs an image, writes it to a file, loads a
new image from that file, and makes sure the loaded image is in the
state we expected, i.e. the same state as the original file.

Next up is adding GIMP 2.6 regression testing to this test suite.
2009-12-21 19:04:48 +01:00
8699511bbd app: global_dock_window_factory -> global_dock_factory
With GimpDock not being a toplevel any longer, it makes more sense to
name global_dock_factory global_dock_window_factory. Do that.
2009-12-20 14:41:02 +01:00
34ad9dad1a app: Session manage multi-column dock windows
Introduce GimpSessionInfoDock and session manage multi-column dock
windows. We are still backwards compatible with sessionrc, the only
difference is that a "session-info" entry now can have multiple "dock"
entries.

Also make ond dock window multi-column in the regression test
app/tests/test-session-management.c and adjust positions and image
selection menus a bit.
2009-12-06 14:49:53 +01:00
c0e8018e8d app/tests: Use Palette Editor in sessionrc test for dockable aux info
Use Palette Editor in the sessionrc regression test so that the test
includes aux info for a dockable.
2009-12-04 08:31:49 +01:00
95bab5da5f app: gimp_dialog_factory_dock_new() -> _dock_with_window_new() 2009-12-01 21:42:24 +01:00
3cd7c5a6cd app/tests: Do role tests on the dock windows, not the docks 2009-09-26 12:48:44 +02:00
fca590925b app/tests: Add dockrc to session regression testing
Add dockrc to session regression testing and do some general cleanups
and generalizations in the test.
2009-09-19 13:04:18 +02:00
6e0befa6ba app: Add regression testing for sessionrc/docks
Add a regression test for sessionrc parsing, handing and writing. The
test work in the following way: GIMP starts so that sessionrc is
deserialized and stored internally, the UI is shown, and then the
internal data structure about windows is serialized to a new
sessionrc. The test makes sure that a new sessionrc actually has been
created, and then that the content of the new file is identical to the
old one.
2009-09-17 01:56:17 +02:00
dc51d81671 app: Don't use the gimpdir for WM tests
The WM tests mess up the GIMP dir, in particular any sessionrc if it
exists, due to the interface never being shown. Make the WM test use a
tmp dir to avoid that.
2009-09-17 01:51:54 +02:00
0601229f9f app: Add show_gui parameter to gimp_init_for_gui_testing()
Add show_gui parameter to gimp_init_for_gui_testing() so that we can
have tests that shows the the actual GIMP interface.
2009-09-17 01:51:53 +02:00
c847b56d0e app: Add GIMPDIR for tests
Add GIMPDIR for tests, both to get rid of warning about missing
tags.xml and for future usage.
2009-09-17 01:51:53 +02:00
fb549cdabf app: Call gimp_exit() in tests to avoid warnings about broken pipes 2009-09-17 01:51:53 +02:00
810f325a16 app: Add regression test for window roles 2009-09-08 19:32:39 +02:00
3e6f6088ee app: Create libapp.a for convenient test case linking
Create libapp.a for convenient test case linking and link the existing
tests against that.
2009-09-07 23:05:11 +02:00
5bb149fa9d Add some more checks that come for free to the existing tests 2009-09-07 20:52:10 +02:00
a0914f8df1 Add test-layers to .gitignore 2009-09-07 19:11:21 +02:00
a17f7e0d4f Add a layers test
Contains the add-layers test from the "template" test and also a
remove-layers one.
2009-09-07 19:09:48 +02:00
6542617751 Initialize some more stuff so real tests are possible
* tests.[ch]: initialize base so we have a tile cache and add
  parameter "gboolean use_cpu_accel" so we can test stuff both with
  and without using CPU features.

* tests/test-layer-grouping.c: changed accordingly. Call g_thread_init()
  so the tile cache works (and to be on the safe side in general).
2009-09-07 19:06:57 +02:00
2e2c7aaf34 Minor formatting cleanup 2009-09-07 18:55:18 +02:00
d6c8fa9783 app: Update .gitignore 2009-09-05 16:09:57 +02:00
14aa5314af app: Add GIMP core unit testing framework and a simple first test
Enable us to have regression testing by introducing a core testing
framework that uses the GLib JUnit-like test library.

Do this by adding a new subdir app/tests that will contain all our
tests (it contains one trivial test already). Also add app/tests.[ch]
with a new function gimp_init_for_testing() so that test cases can
easily setup the core object system.
2009-09-05 16:02:32 +02:00