1610 Commits

Author SHA1 Message Date
Matthias Clasen
b21b3a01c7 Fix bug base in array-test 2011-02-15 00:03:19 -05:00
Matthias Clasen
a46885242b Add a testcase for bug 640489 2011-02-15 00:03:19 -05:00
Ryan Lortie
10154d21f0 Bug 642052: add currently-broken test case
The test case fails for now.  It will be fixed by the next commit.
2011-02-14 23:23:33 -05:00
Matthias Clasen
309f5f978b Improve test coverage
Various test additions, mainly in GObject
2011-02-13 23:49:19 -05:00
Matthias Clasen
147139d968 Use g_assert_no_error
The option-context test had its own version.
2011-02-13 23:49:18 -05:00
Ryan Lortie
b1d02f9323 GVariant: support NULL for empty arrays in varargs
g_variant_new("as", NULL); now gives an empty array of strings, for
example.

This was documented as working already, but was never actually
implemented (due to the fact that it muddies the water when considering
maybe types).  It's being implemented now because its convenience to
programmers exceeds any damage done to the conceptual purity of the API.
2011-02-11 10:14:29 -05:00
Tobias Mueller
8602a3a682 Fixed format string issue in a test, fixes bug 640725 2011-01-27 23:10:02 -05:00
Matthias Clasen
069daa69f6 Add testcase for bug 640695 2011-01-27 23:07:53 -05:00
Matthias Clasen
3f059a6a12 Remove a test that seems to fail depending on time of day 2011-01-21 23:41:12 -05:00
Matthias Clasen
c03dc6bf7d Update the included copy of PCRE
Update PCRE to version 8.12.
At the same time, also add Unicode 6.0 script support.
2011-01-21 23:10:01 -05:00
Behdad Esfahbod
0a57086540 Update to Unicode 6.0
One new GUnicodeBreak enum member.  Three new GUnicodeScript members,
and one member renamed to fix a typo.

Tests, docs, and scripts are updated.  PCRE update still needed.
2011-01-21 16:30:19 -05:00
Ray Strode
a437c5e768 tests: add format test case for noon hour in 12h mode
It currently displays it as "0" instead of "12", so this
test case demonstrates the bug.
2011-01-17 14:31:34 -05:00
Matthias Clasen
b67d9cb7ee Add regex test cases
These come from https://bugzilla.gnome.org/show_bug.cgi?id=638894
2011-01-07 12:07:19 -05:00
Christian Persch
3d824065b8 Add g_get_locale_variants()
Make _g_compute_locale_variants() public as g_get_locale_variants().

Bug #635998.
2011-01-05 22:57:20 +01:00
Xavier Claessens
50f96ae79b Add unit test for g_sequence_lookup() and g_sequence_lookup_iter(). 2010-12-20 17:30:58 +01:00
Javier Jardón
f0354ff059 grand: Fix URLs for info on the Mersenne Twister
Reported by Allin Cottrell here:
http://mail.gnome.org/archives/gtk-devel-list/2010-December/msg00134.html
2010-12-17 16:12:16 +00:00
Dan Winship
7ee902a3d0 ghostutils: Convert non-ASCII dots to '.' when converting hostnames
Also add some test cases to test/hostutils for that and a few other
things, and make the test program just act as an ASCII/unicode
hostname converter rather than a test program if it's run with an
argument.

https://bugzilla.gnome.org/show_bug.cgi?id=633350
2010-12-15 03:56:35 -05:00
Matthias Clasen
b52294d14c Try to fix the version test on builders 2010-12-04 14:12:07 -05:00
Ryan Lortie
7fc6f8a159 Add g_variant_lookup() and tests
Convenience API for doing lookups in dictionaries where the key is a
string or object path.
2010-11-05 21:33:43 -04:00
Ryan Lortie
99d2c2eef5 Add testcase for environment functions 2010-10-28 22:20:56 -04:00
Ryan Lortie
7c184df292 Bug 158725 - free linked list with data
Add some helpers for freeing a linked list along with its elements by
providing a GDestroyNotify to call on each of them.

Add a test.

Based on a patch from Cosimo Cecchi.
2010-10-28 11:20:57 -04:00
Ryan Lortie
a7662ef315 GVariant tests: fix bad allignment assumption
One of the GVariant test cases allocates a pair of character arrays on
the stack and then passes them to functions that assume that they will
be aligned to a multiple of two.

This is not the case for some versions of GCC (4.0.3 on PowerPC).
2010-10-05 02:11:22 -04:00
Ryan Lortie
fff6814973 Bug 630077 - GDateTime week number support
Fully implement support for ISO 8601 week dates in GDateTime and
document that this is the case.

Add an exhaustive test case to ensure correctness.
2010-10-01 11:20:55 -04:00
Ryan Lortie
6393ffa3a6 GDateTime: fix a test that fails from time to time
The test fails if it's a different date in the time zone of the machine
running the test than it currently is in UTC.
2010-09-18 01:20:22 +03:00
Ryan Lortie
6b0e31ce48 Clean-up/tweaking of GDateTime and GTimeZone 2010-09-17 11:40:10 -04:00
Emmanuele Bassi
3e9fb52214 datetime: Rename g_date_time_printf() to g_date_time_format()
The function does not use any printf() modifiers, so using printf() is a
misnomer.

Prior art: strftime, g_ascii_formatd

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
4bac6613cf datetime: Update modifiers for DST changes
If a DateTime gets modified to cross the DST state from its previous
state then we want to update the DateTime to compensate for the new
offset.

In other words, if we have a DateTime defined as:

  DateTime({ y: 2009, m: 8, d: 15, hh: 3, mm: 0, tz: 'Europe/London' });

and we add six months to it, the hour must be changed to 60 minutes
behind, as the DST comes into effect.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
0746f74036 datetime: Allow setting fractionary seconds in new_full()
Otherwise we'll have to do:

  dt = g_date_time_new_full (Y, M, D, h, m, s, tz);
  tmp = g_date_time_add_usec (dt, usec);
  g_date_time_unref (dt);
  dt = tmp;

With its additional allocations.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
67f1e52ce2 datetime: Rework time zone support in constructors
Timezone handling is complicated. Really complicated.

In order to simplify it a little bit, we need to expose the GTimeZone
structure.

First of all, we allow creating time zone information directly from the
offset and the DST state, and then pass it to the g_date_time_new_full()
constructor. We also need to clean up the mess that is UTC-vs.-localtime
for the other constructors.

We also allow creating a GTimeZone from the Olson zoneinfo database
names; a time zone created like this will be "floating": it will just
reference the zoneinfo file - which are mmap()'ed, kept in a cache and
refcounted. Once the GTimeZone has been associated with a GDateTime, it
will be "anchored" to it: the offset will be resolved, as well as the
DST state.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Ryan Lortie
235820d0ef GVariant: Check for size == 0 in get_bytestring
And add a test from David that shows the problem.

Closes #629698
2010-09-14 14:56:38 -04:00
Thiago Santos
875ad12345 gdatetime: Use proleptic gregorian
Use Proleptic Gregorian calendar instead of the Julian calendar
as the internal representation.

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

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2010-09-06 11:50:30 +01:00
Emmanuele Bassi
9a61fb2c64 datetime: Re-use add_dmy()
Avoid code duplication.
2010-08-26 12:58:19 +01:00
Tor Lillqvist
3c86a77ae5 Fix Win32 build 2010-08-26 12:41:46 +03:00
Matthias Clasen
8803182f4a Guarantee that g_get_tmp_dir () doesn't return an empty string
If it does, g_file_open_tmp() would be in trouble. Pointed
out by Morten Welinder in bug 627969.
2010-08-25 20:04:45 -04:00
Emmanuele Bassi
026375b395 datetime: Avoid excessive copies in add_full()
The current implementation of g_date_time_add_full() creates multiple
GDateTime temporary objects and unrefs them immediately; even with the
slice allocator this could result in a performance bottleneck,
especially if the atomic integer operations fall back to slow paths.

We can isolate the components of the add_full() operation and create
internal modifiers that operate on an existing GDateTime; this brings
down the number of GDateTime copies created from six to one.

While at it, the test suite for add_full() should have more checks for
roll-over of months and days.

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2010-08-25 23:04:42 +01:00
Emmanuele Bassi
0a59ab6e85 datetime: Use %Z for the timezone name
We should try and follow strftime(3) for the format control characters
as much as possible.
2010-08-25 12:14:04 +01:00
Thiago Santos
e1f13ee9ed Add GDateTime to GLib
GDateTime is an opaque data type containing a date and time
representation. It's immutable once created and reference
counted.

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

Based on the code by: Christian Hergert <chris@dronelabs.com>

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2010-08-24 23:41:21 +01:00
Matthias Clasen
780d6bfa88 Improve testutils test coverage 2010-08-23 00:38:19 -04:00
Matthias Clasen
fa6926e5d4 Improve printf test coverage 2010-08-23 00:38:19 -04:00
Matthias Clasen
7d970fadbc Improve GDate test coverate 2010-08-23 00:38:19 -04:00
Dan Winship
8f5ec0dad3 Fix misc compiler warnings in (mostly) test programs 2010-08-19 18:24:53 -04:00
Christian Persch
a35efb0939 G_OPTION_FLAG_NO_ARG is only for callback options
Bug #627252.
2010-08-18 15:32:07 +02:00
Matthias Clasen
e02571e93b Add bug references to some tests 2010-08-13 21:23:23 -04:00
Matthias Clasen
c9916d64b1 Improve regex test coverage 2010-08-08 21:32:03 -04:00
Matthias Clasen
bbd1d2a724 Improve regex test coverage 2010-08-08 01:12:05 -04:00
Ryan Lortie
80046f36e0 gitignore update 2010-08-06 16:42:36 -04:00
Ryan Lortie
5e044a943c typo fix: Dist the data for the test cases
change 'dist_hook:' to 'dist-hook:'
2010-08-06 13:11:20 -04:00
Ryan Lortie
b3b7ea8e22 Replace -I with $(glib_INCLUDES) and friends
Stop using ad hoc -I in all of our Makefile.am.  Use the new variables
instead.
2010-08-06 13:10:34 -04:00
Ryan Lortie
25c6bdc22a error test case: don't double-free the source
g_propagate_prefixed_error() frees the source already, don't
g_error_free() it.
2010-08-06 10:29:32 -04:00
paul
9f6faaffb6 Add $(top_builddir)/glib to includes
This is required to find glibconfig.h during srcdir != builddir builds
2010-08-05 09:08:34 -04:00