Commit Graph

484 Commits

Author SHA1 Message Date
Christian Persch
9c885d6dfd regex: Add JIT support 2012-06-29 20:03:17 +02:00
Christian Persch
37162259fd regex: Add new GRegexError code from PCRE 8.31 2012-06-29 09:01:49 +02:00
Christian Persch
fb0d4ef43b regex: Enable fixed test
This problem was fixed in PCRE 8.31, so uncomment the test.
2012-06-29 09:01:49 +02:00
Christian Persch
e1d0b15b49 regex: Add FIRSTLINE compile flag
This option exists since PCRE 6.0.
2012-06-28 22:08:17 +02:00
Christian Persch
1c029158f6 regex: Add g_match_info_get_mark
Since PCRE 8.03, PCRE supports backtracking control verbs with a name argument.
g_match_info_get_mark() will return the argument of the last encountered verb
in the whole matching process for failed or partial matches, and in the matching
path only for matches.
2012-06-28 22:08:17 +02:00
Christian Persch
6ccdc3379d regex: Add NOTEMPTY_ATSTART match option
Since PCRE 8.00 it supports a variant of PCRE_NOTEMPTY that works
similarly except that it only applies to the start of the matched string
but permits empty matches further in.
2012-06-28 22:08:17 +02:00
Christian Persch
d61b475f89 regex: Add PARTIAL_HARD match option
Since PCRE 8.00 it supports a new partial matching method PCRE_PARTIAL_HARD.
2012-06-28 22:08:17 +02:00
Christian Persch
c28a9ed498 regex: Add JavaScript compat mode
Since PCRE 7.7, there's a flag that changes the behaviour to be more
JavaScript compatible. Since it's no effort to expose it, just do so.
2012-06-28 22:08:17 +02:00
Christian Persch
5ebea3c467 regex: Don't leak internal PCRE options
g_regex_get_compile_get_compile_flags() and g_regex_get_match_flags()
were leaking PCRE flags that don't exist in the corresponding
public GRegexCompileFlags and GRegexMatchFlags; this change masks
these internal flags.
2012-06-28 22:08:17 +02:00
Christian Persch
8508f57110 regex: Fix newline definition for system PCRE
While we PCRE_BSR_UNICODE is the default in the internal PCRE, that may
not be true for the system one. Force the PCRE_BSR_UNICODE flag on it.
2012-06-28 22:08:17 +02:00
Christian Persch
591d41ef1f regex: Add accessor for PCRE_INFO_HASCRORLF
This flag is new in PCRE 7.3, and checks whether there is an explicit
CR or LF reference in the pattern.
2012-06-28 22:08:16 +02:00
Christian Persch
f01b8723a7 regex: Add NEWLINE_ANYCRLF compile option
The PCRE_NEWLINE_ANYCRLF option is new in PCRE 7.1. With it set, the only
only newline sequences recognised are CR, LF and CRLF.
2012-06-28 22:08:16 +02:00
Christian Persch
115076d841 regex: Update GRegexError with newer PCRE error codes
Update the GRegexError enum with new PCRE errors up to PCRE 8.30.

https://bugzilla.gnome.org/show_bug.cgi?id=677579
2012-06-28 22:08:16 +02:00
Christian Persch
340058d242 regex: Simplify regex compile tests
Use a macro instead of repeating the same code over and over again.
2012-06-28 22:08:16 +02:00
Martin Pitt
95f29687e1 /mainloop/timeouts test: Reduce race condition
Due to load, particular traits of the architecture, or other circumstances, the
/mainloop/timeouts sometimes manages to call the "every
100 ms" timer loop only 9 times in 1050 ms.

This is an inherent race-condition in the test; allow it some slack and accept
9 times as well.

https://bugzilla.gnome.org/show_bug.cgi?id=678959
2012-06-27 15:32:38 +02:00
Matthias Clasen
bea9941993 Mark utf8 performance tests as such 2012-06-23 21:01:33 -04:00
Matthias Clasen
1c6070a679 Add a test for G_USER_DIRECTOR_DESKTOP
Based on a patch by Marc-Antoine Perennou,
https://bugzilla.gnome.org/show_bug.cgi?id=676594
2012-06-23 17:51:11 -04:00
Colin Walters
7d622157f0 tests/unix: Ensure buffer is NUL terminated 2012-06-22 10:32:26 -04:00
Jonh Wendell
2fd6eb7e1c Adds g_list_copy_deep and g_slist_copy_deep
They make a full (deep) copy of a list.

In contrast with g_[s]list_copy(), these functions take a function as a argument
to make a copy of each list element, in addition to copying the list container itself.

The functions g_[s]list_copy() were reimplemented to just call the new functions
with NULL as the function argument, which will behave like current implementation.

https://bugzilla.gnome.org/show_bug.cgi?id=675024
2012-06-21 17:21:30 -03:00
Matthias Clasen
defa25f3d0 GKeyFile: Deal better with blank lines
There is no need to store a has_trailing_blank_line boolean for
each group, we can just check this at the time we assemble the data.

This fixes a problem without roundtrips where we would sometimes
add an extra blank line between groups.

The testcase here is inspired by
https://bugzilla.gnome.org/show_bug.cgi?id=677817
2012-06-15 18:53:09 -04:00
Matthias Clasen
e5d4af10a3 Improve GTimeZone test coverage 2012-06-13 14:44:20 -04:00
Matthias Clasen
f47de7ec2c Improve GTimeZone test coverage 2012-06-11 10:25:24 -04:00
Matthias Clasen
6ee10762b5 Improve GOptionContext test coverage 2012-06-11 10:25:19 -04:00
Colin Walters
7ccfa9ce4b tests/spawn-multithreaded: Decrease parallelism to avoid crashing on OS X
https://bugzilla.gnome.org/show_bug.cgi?id=677527
2012-06-06 07:15:48 -04:00
Christian Persch
6969b63827 environ: Allow NULL envp
https://bugzilla.gnome.org/show_bug.cgi?id=676397
2012-05-22 19:47:22 +02:00
Ravi Sankar Guntur
aded15c9d1 glib: fix memory leaks in gutils, protocol, and strfuncs tests
https://bugzilla.gnome.org/show_bug.cgi?id=672329

Signed-off-by: Ravi Sankar Guntur <ravi.g@samsung.com>
2012-05-17 00:38:43 -04:00
Matthias Clasen
d5d3c7b3a4 Cover some malloc corner cases in tests 2012-05-14 17:57:42 -04:00
Matthias Clasen
215844b3a6 Add a test for g_clear_pointer 2012-05-14 17:57:42 -04:00
Matthias Clasen
e3eb137bbb Use non-deprecated api in tests
https://bugzilla.gnome.org/show_bug.cgi?id=660851
2012-05-13 01:14:17 -04:00
Matthias Clasen
8783224202 Add some directory getter tests 2012-04-23 08:20:21 -04:00
Matthias Clasen
1089a0a9f6 Improve GOptionContext test coverage 2012-04-23 08:20:21 -04:00
Matthias Clasen
a151c97106 Make the child source test work
On my machine, this test was failing, because the timeout source
for quitting the inner mainloop was triggering repeatedly. Avoid
that by explicitly returning G_SOURCE_REMOVE from the callback.
2012-04-23 00:35:37 -04:00
Matthias Clasen
6d51527ba0 Revert "tests: fix test on windows"
This reverts commit 79361eede2.

Just commenting out a test without an explanation does not
look right to me. This needs at the minimum a link to a
bug report or an explanation for why the behaviour is platform
dependent. If the test was just wrong, it needs to be removed,
not commented out. If there is a bug in the win32 implementation,
it needs to be fixed.
2012-04-19 13:25:26 -04:00
Andoni Morales Alastruey
79361eede2 tests: fix test on windows 2012-04-19 15:20:43 +02:00
Andoni Morales Alastruey
af7dc168f6 test: only check for defined errors 2012-04-19 15:20:31 +02:00
Alexander Larsson
2414d7d6a1 Fix build on win32
Some errnos don't exist on win32
2012-04-19 10:24:08 +02:00
Colin Walters
3ac2930e1a tests: Fix race conditions in mainloop/invoke test
1) The test was using GCond incorrectly (it always needs a
   state variable)
2) The state assertion was racing with the thread; just delete it.
   All we're really trying to test here is that the invoke runs by the
   time the thread is gone, and the function has an assertion that
   it runs in the correct thread.

https://bugzilla.gnome.org/show_bug.cgi?id=674213
2012-04-16 14:14:29 -04:00
Colin Walters
3054ecf109 tests/mainloop: Add a test for recursive child sources
https://bugzilla.gnome.org/show_bug.cgi?id=669260
2012-04-16 13:47:27 -04:00
Dan Winship
bdbb531340 tests/mainloop: add a test for child sources
https://bugzilla.gnome.org/show_bug.cgi?id=669260
2012-04-16 13:47:27 -04:00
Kalev Lember
aacd3469a5 tests/fileutils: Fix Windows build 2012-04-16 18:46:12 +03:00
Cosimo Cecchi
0f57e5c70c tests/date: force English locale running the GDateTime tests
The parsing test needs to make some assumption about the locale
representation of the string to be parsed, so we need to explicitly
override the locale here.
2012-04-16 10:53:43 -04:00
Matthias Clasen
c1a83a4ac8 Fix distcheck
I forgot to dist a test script, and forgot to look for it
in srcdir instead of builddir.
2012-04-13 19:53:07 -04:00
Dan Winship
baf0ebf7b2 tests/mainloop: fix a race condition
Rather than depending on the machine's speed/load, just interlock
between the two threads properly.
2012-04-13 12:15:15 -04:00
Dan Winship
e0aa0ae8a2 tests/mainloop: use g_assert_cmpint(), for better error messages 2012-04-13 12:15:11 -04:00
Matthias Clasen
50aed1cc8f Make the markup-parse test independent of the locale
I added a setlocale call, because we need it for Unicode to
come out right; but I forgot to fix the locale, so we now
fail when comparing error messages to the expected (English)
result. Correct this by setting LANG explicitly to en_US.utf-8.

https://bugzilla.gnome.org/show_bug.cgi?id=669285
2012-04-13 09:39:48 -04:00
Cosimo Cecchi
c39d6954d3 tests: always use four digit years for date parsing tests
Or some system with different locale settings might get confused whether
a two digit year is to be parsed with regard to the current century or
as an absolute year.
2012-04-09 15:47:29 -04:00
Matthias Clasen
fb0951e67a spawn: Improve test coverage
Add a test that excercises the script execution code.
Unfortunately, much of this code only runs in the forked
child, and therefore its execution does not get caught
by gcov.
2012-04-08 10:24:52 -04:00
Matthias Clasen
b87e7ca729 mainloop: Improve test coverage 2012-04-08 10:24:51 -04:00
Matthias Clasen
2a1ea40920 utils: Improve test coverage
Add a test for some of our gettext variants.
2012-04-08 10:24:51 -04:00
Matthias Clasen
5951295937 fileutils: Improve test coverage
Add tests for corner cases of g_path_get_basename, and
for the errno-to-file-error conversion.
2012-04-08 10:24:51 -04:00