Commit Graph

856 Commits

Author SHA1 Message Date
e5a72ae3c4 Move queue tests to the test framework 2010-07-30 19:51:17 -04:00
f6d3e224df notify: Add tests for threadsafe object notifies
https://bugzilla.gnome.org/show_bug.cgi?id=166020
2010-07-22 21:56:21 +02:00
b720732059 Move uri tests to the test framework 2010-07-05 23:13:18 -04:00
953962d783 Move tree tests to the test framework 2010-07-05 23:13:18 -04:00
5123bc69e7 Move slist tests to the test framework 2010-07-05 23:13:18 -04:00
b61fd45ac3 Move list tests to the test framework 2010-07-05 23:13:18 -04:00
26e29cb360 Move charset conversion tests to the test framework 2010-07-04 20:51:06 -04:00
e26b92b947 Move node tests to the test framework 2010-06-23 09:25:29 -04:00
01abbc4bd3 Move node test to the test framework 2010-06-23 09:25:29 -04:00
5c1b3a0263 Move date tests to the test framework 2010-06-23 09:25:29 -04:00
2f438f18ae Move hash tests to the test framework 2010-06-21 23:08:01 -04:00
5629366c3d Move checksum tests to the test framework 2010-06-21 23:08:01 -04:00
7bea2a7a4f Move utf8 validation tests to the test framework 2010-06-20 21:16:24 -04:00
5b08ef84e4 Move utf8 pointer tests to test framework 2010-06-20 21:04:47 -04:00
0ed575213b Consolide base64 tests in a single file 2010-06-20 16:53:39 -04:00
08d6e535be Move scanner tests to glib/tests 2010-06-20 16:53:38 -04:00
09aa2e79ab Move sequence tests to the test framework 2010-06-20 12:23:13 -04:00
bf8ce25216 Move base64 tests of to test framework 2010-06-20 11:34:31 -04:00
f849dbac05 Move regex tests to the g_test framework 2010-06-20 11:20:54 -04:00
db68f8203a Add g_value_take_variant
Turns out we do need g_value_take_variant(), so we can correctly
implement VARIANT:* marshalers.

Bug #621947.
2010-06-19 19:07:36 +02:00
4708b8ecc3 Add fundamental type and pspec for GVariant
Make G_TYPE_VARIANT a fundamental type instead of boxed, and add
g_variant_{set,get,dup}_variant.

Add GParamSpecVariant.

Bug #610863.
2010-06-17 21:00:54 +02:00
1b8ee5196e Sprinkle some $(AM_V_GEN) around to make the build more silent. 2010-06-15 22:01:02 -04:00
992e07c8b2 Fix warnings
Do explicit casts to avoid warnings.
2010-06-09 10:32:12 +02:00
183102104a [mainloop-test] Fix compilation errors 2010-05-26 16:21:15 -04:00
6b53e4826f GSource: add g_source_set_name, g_source_get_name, g_source_set_name_by_id
These allow applications to give meaningful names to their sources.
Source names can then be used for debugging and profiling, for
example with systemtap or gdb.

https://bugzilla.gnome.org/show_bug.cgi?id=606044
2010-05-25 16:59:22 -04:00
96d105906e Fix run-assert-msg-test to work with libtool-2.2.x. 2010-03-08 00:16:23 -05:00
1e6b184225 add performance tests to gitignore 2010-02-10 13:59:35 -05:00
3e30e8a87e make tests not dynamic link against /lib/libglib
For some reason, even though the tests are linked against libgobject.la
and libgobject.la mentions libglib.la as a dependency, the tests are
running against the system glib instead of the in-tree one.

Adding the libglib.la file as an explicit LDFLAG fixes it.
2010-02-10 11:35:01 -05:00
241c7f476d Don't use deprecated g_win32 API 2010-02-04 14:53:20 +02:00
6aa73f03eb improve gitignore 2010-01-28 22:43:51 -05:00
3658727cfa always use our own internal assertion message symbol
Re-using glibc's __abort_msg symbol causes linking problems, since the symbol
is declared private. Always use our own__glib_abort_msg symbol to store
assertion messages, to avoid compatibility and linking problems.

Also fix the test case to work with out of tree builds (such as "make
distcheck"), and re-enable it.

https://bugzilla.gnome.org/show_bug.cgi?id=594872
2010-01-26 11:22:31 +01:00
975aea7bce Disable yet another failing test that was recently added... 2010-01-25 14:13:48 -05:00
7693b0af44 [tests] Remove C++ style comments
It makes the IBM XL C Compiler (the 'native' non-free compiler
on the AIX 5.3 and 6.1 platform) stop compiling with syntax error.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=581300

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-01-20 18:58:32 +01:00
3c5e1fd903 Remove additional thread support in performance test
We're always enabling threads now so this is not needed.
2010-01-13 10:24:09 +01:00
da66897950 Support storing assertion messages into core dump
Crash interception/debugging systems like Apport or ABRT capture core dumps for
later crash analysis. However, if a program exits with an assertion failure,
the core dump is not useful since the assertion message is only printed to
stderr.

glibc recently got a patch which stores the message of assert() into the
__abort_msg global variable.
(http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=48dcd0ba)
That works fine for programs which actually use the standard C assert() macro.

This patch adds the same functionality for glib's assertion tests. If we are
building against a glibc which already has __abort_msg (2.11 and later, or
backported above git commit), use that, otherwise put it into our own field
__glib_assert_msg.

Usage:

  $ cat test.c
  #include <glib.h>

  int main() {
      g_assert(1 < 0);
      return 0;
  }

  $ ./test
  **ERROR:test.c:5:main: assertion failed: (1 < 0)
  Aborted (Core dumped)

  $ gdb --batch --ex 'print (char*) __abort_msg' ./test core
  [...]
  $1 = 0x93bf028 "ERROR:test.c:5:main: assertion failed: (1 < 0)"

https://bugzilla.gnome.org/show_bug.cgi?id=594872
2009-12-23 15:51:11 +00:00
80bda52b57 Fix dynamictype test to build 2009-11-29 21:19:10 -05:00
b35fa1994d Cast iface_init to GInterfaceInitFunc
This is in line with what all other type define macros do.

https://bugzilla.gnome.org/show_bug.cgi?id=508157
2009-11-26 12:32:36 +01:00
36646f46ab Add test for G_IMPLEMENT_INTERFACE_DYNAMIC 2009-11-26 11:54:44 +01:00
f4d9789fcf Add gobject performance tests for threaded code
This measures how much things like lock contention affects the gobject
code.
2009-10-02 21:02:48 +02:00
b1f94af095 Add performance tests for GObject primitives
These are basic performance test for a couple of basic gobject
primitives:

* construction of simple objects. Simple is a bare gobject derived
  class with no properties, signals or interfaces.

* construction of complex objects. Complex is a gobject subclass
  with construct properties, normal properties, signals, and
  implements an interface.

* run-time type check of complex objects

* signal emissions

Lots of care is taken to try to make the results reproducible. Each
test is run for multible "rounds", where we try to make each round be
"not too short" in order to be significant wrt timer accuracy, but
also "not to long" to make the probability of some other random event
happening on the system (interrupts, other process scheduled, etc)
during the round less likely.
The current target round time is 4 msecs, which was picked without
rigour, but seems small wrt e.g. scheduler time.

For each test we then run the calculated round size for 60 seconds,
and then report the performance based on the minimal time of one
round. The model here is that any random stuff that happens during a
round can only slow it down, there is nothing that can make it go
faster, so the minimal time is the best estimate of how fast one round
goes.

The result is not ideal, even on a "idle" system the results vary
from round to round, but the variation seems to be less than 1%.
So, any performance difference reported by this test over 1% is
probably statistically significant.

Additionally the tests can be run with or without threads being
initialized. The script tests/gobject/run-performance.sh makes
it easy to produce a performance report for the current checkout.

https://bugzilla.gnome.org/show_bug.cgi?id=557100
2009-10-02 21:02:23 +02:00
8212aadac7 g_time_val_from_iso8601: handle timezoneless dates
per ISO 8601:2004 4.2.5.2

Based on a patch from Andy Shevchenko
http://bugzilla.gnome.org/show_bug.cgi?id=589491
2009-09-01 09:40:03 -04:00
5694ab7642 Revert "Move gio tests from gio/tests/ to tests/gio/"
This reverts commit 2262d76b33.

Move GIO tests back to where they belong.
2009-07-05 22:49:24 -04:00
29e6525b1e Two "make check" fixes for late changes to the thread-context patch
g_simple_async_result_complete() now checks that it's being run from
the correct main loop, so tests/gio/simple-async-result was failing,
because it called it from outside any main loop. (And gio's pltcheck
was failing because I hadn't added g_main_current_source() to it.)
2009-07-01 13:52:49 -04:00
2262d76b33 Move gio tests from gio/tests/ to tests/gio/
This avoids getting tests built every time when working on libgio and
running make in the gio/ directory.
2009-07-01 19:03:19 +02:00
75ef018248 Updated msvc build files 2009-05-30 15:29:23 +02:00
f33a484b4a Fix up tests forgotten in Michaels commit
When Michael cleaned up after my fumbled commit of his gmarkup
optimizations, he fumbled himself and forgot to fix up the tests...
2009-05-03 17:10:16 -04:00
92ac8d165e Misc warning fixes
glib/pcre/pcre_ucp_search_funcs.c, glib/pcre/pcre_valid_utf8.c: add
back missing config.h includes, and this time add them to the copies
in glib/update-pcre/ too so they don't get lost again on the next PCRE
update.

glib/garray.c, glib/gbase64.c: fix signed/unsigned pointer casts

gio/xdgmime/xdgmimeglob.c: remove unused variable

gio/tests/live-g-file.c: fix printf args on x86_64

tests/Makefile.am, tests/regex-test.c: remove redundant -DENABLE_REGEX
2009-05-01 10:37:45 -04:00
efc2cdbfc9 Fix parsing of timezones
Make g_time_val_from_iso8601 handle timezones with minutes correctly;
also accept comma as a fraction separator.  (#578369)
2009-04-08 10:26:11 -04:00
84fdf0d00e Fix distcheck
svn path=/trunk/; revision=7932
2009-03-01 16:46:45 +00:00
82e1d3e753 Bug 523742 – Use noinst for non-installable libraries
* tests/Makefile.am: use noninst_LTLIBRARIES for noninstalled
        libraries.Patch by Björn Lindqvist


svn path=/trunk/; revision=7860
2009-02-12 03:55:38 +00:00