7288 Commits

Author SHA1 Message Date
Emmanuel Fleury
7dcaa7eeda Add the corresponding test for g_unichar_totitle(0) 2019-05-14 13:38:14 +02:00
Emmanuel Fleury
48d65634a5 Handling U+0000 explicitely to avoid collision with other cases
Fix issue #135
2019-05-14 13:35:49 +02:00
Philip Withnall
662cddcb4b glib: Deprecate gtester and gtester-report
Add warnings about their deprecation everywhere. The tools will continue
to work until we break API, but will be less well maintained. You should
use TAP for communicating test results to the test harness provided by
your build system or CI system instead.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #1441
2019-05-14 12:14:54 +01:00
Philip Withnall
bd8658e16a Merge branch 'g_format_size_is_broken_on_Windows' into 'master'
Fixing g_format_size() on Windows

Closes #429

See merge request GNOME/glib!837
2019-05-14 10:25:30 +00:00
Rafal Luzynski
35c28be327 tests: Update month name check for Greek locale
Update the abbreviated month name in the test to match the actual
translation. Otherwise the test fails with false positive.

Vocabulary:

July (nominative)  - Greek: Ιούλιος (abbreviated: Ιούλ)
Of July (genitive) - Greek: Ιουλίου (abbreviated: Ιουλ)

This is similar to commit 4d215e006ee69bd7a993bf853722993433adbf9a
and commit 7fe793e125c316ac34edd8158df5a132cb044bc1.

Closes #1776
2019-05-13 23:11:56 +02:00
Emmanuel Fleury
08f08448ec Fixing g_format_size() on Windows
It seems that the issue went away on current Window systems.

Fix #429
2019-05-13 14:23:57 +02:00
Philip Withnall
9974cec26b glib: Rename G_STDIO_NO_WRAP_ON_UNIX → G_STDIO_WRAP_ON_UNIX
This clarifies the meaning a bit. Don’t change the logic associated with
it. Add a few comments to clarify things further.

Based on work done by Emmanuel Fleury.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
Fixes: #77
2019-05-10 12:58:56 +01:00
Kalev Lember
e4bd6dd515 Add autoptr support for GRWLock 2019-05-10 12:48:20 +02:00
Philip Withnall
a1d5395f10 Merge branch 'autoptr-assertions' into 'master'
Various minor cleanups to autoptrs

See merge request GNOME/glib!821
2019-05-08 20:51:58 +00:00
Sebastian Dröge
6ce96382d3 Merge branch 'unicode-12.1' into 'master'
glib: Update Unicode Character Database to version 12.1.0

See merge request GNOME/glib!822
2019-05-08 20:48:41 +00:00
Philip Withnall
5a30f852d6 docs: Improve formatting of g_autoptr() documentation
Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 21:21:39 +01:00
Philip Withnall
62be3d5d3e tests: Use g_assert_*() in autoptr tests rather than g_assert()
It gives clearer failure messages, and won’t get compiled out when
building with G_DISABLE_ASSERT.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 21:21:39 +01:00
Philip Withnall
ae47f0d156 Merge branch 'more-auto-macros' into 'master'
Add g_autoqueue

See merge request GNOME/glib!474
2019-05-08 20:19:43 +00:00
Marco Trevisan (Treviño)
1d96e94070 gmacros: Add g_autoqueue to automatically free queues
This works as g_auto(s)list already does, and allows to create queues that are
fully auto free'd on destruction.
2019-05-08 14:25:24 -05:00
Philip Withnall
64ddd32b79 glib: Update Unicode Character Database to version 12.1.0
Using commands:
```
glib/gen-unicode-tables.pl -both 12.1.0 path/to/UCD
tests/gen-casefold-txt.py 12.1.0 path/to/UCD/CaseFolding.txt \
   > tests/casefold.txt
tests/gen-casemap-txt.py 12.1.0 path/to/UCD/UnicodeData.txt \
   path/to/UCD/SpecialCasing.txt > tests/casemap.txt
```

Using UCD release https://www.unicode.org/Public/zipped/12.1.0/UCD.zip.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-08 13:07:55 +01:00
Philip Withnall
f666502dd2 gdate: Officially mark GTime as deprecated
The documentation has marked it as deprecated for a long time, but not
in a structured way. Use the gtk-doc ‘Deprecated’ tag to mark it as
deprecated.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Helps: #1438
2019-05-08 12:09:54 +01:00
Emmanuel Fleury
17fb60c165 Improving code coverage of glib/guniprop.c 2019-05-07 18:31:04 +02:00
Emmanuel Fleury
ae4eea7a39 Formating test cases to the new standards
- Added comments at the begin of each test case
- Changed 'g_assert()' into 'g_assert_xxx()'
- Sorted the 'g_test_add_func()' entries
2019-05-07 18:31:04 +02:00
Emmanuel Fleury
d8cc47831d Getting fullwidth for g_unichar_xdigit(_value)
Fix issue #58.
2019-05-07 18:31:04 +02:00
Sebastian Dröge
9be2ce31d5 Merge branch '1768-strlcat-test-fix' into 'master'
tests: Increase buffer size for g_strlcat() tests

Closes #1768

See merge request GNOME/glib!811
2019-05-02 14:55:36 +00:00
Sebastian Dröge
d5f9b5327a Merge branch 'queue-tests' into 'master'
Get to 100% coverage on GQueue tests

See merge request GNOME/glib!806
2019-05-02 14:51:24 +00:00
Philip Withnall
d5093350f3 gqueue: Remove a redundant branch
queue->tail->next cannot be non-NULL, as pushing onto the end of the
queue is handled by the call to g_queue_push_tail_link() above.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
4f38620b13 tests: Add unit tests for g_queue_push_nth_link()
This should get its branch coverage up to 100%. For completeness’ sake.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
f033948998 tests: Add a test for calling g_queue_clear_full() with a NULL free_func
This improves the branch coverage of gqueue.c a little.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:53:09 +01:00
Philip Withnall
2aa71ab63b tests: Rearrange assertions in the g_queue_clear_full() test
This makes it a bit clearer that we expect the queue to be empty as a
result of calling g_queue_clear_full(), rather than as a result of any
of the later cleanup.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:50:38 +01:00
Sebastian Dröge
aaf0a7c943 Merge branch '1713-ucd-12' into 'master'
glib: Update Unicode Character Database to version 12.0.0

Closes #1713

See merge request GNOME/glib!804
2019-05-02 12:49:16 +00:00
Philip Withnall
81ba6e54fe tests: Remove redundant non-NULL checks in g_strlcat() test
The buffer is a local array, not a pointer, so can never be NULL.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-02 13:28:55 +01:00
Philip Withnall
777a6030a6 tests: Add checks for buffer sizing in g_strlcat() tests
Just to ensure we’re passing a valid value for dest_size.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Helps: #1768
2019-05-02 13:28:27 +01:00
Philip Withnall
7541085589 tests: Increase buffer size for g_strlcat() tests
There was a buffer overflow on the last g_strlcat() call in the test.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #1768
2019-05-02 13:27:53 +01:00
Sebastian Dröge
0095056008 Merge branch '1755-revert-gstrfunc' into 'master'
Revert "macros: Try to use the standard __func__ first in G_STRFUNC"

Closes #1755

See merge request GNOME/glib!799
2019-05-02 12:24:15 +00:00
Philip Withnall
22d4a44cd6 Merge branch 'emmanuel.fleury/glib-g_strcanon_documentation_fix' into 'master'
Modified version of !784 — Adding tests cases for a better coverage of glib/tests/strfuncs.c

See merge request GNOME/glib!809
2019-05-01 23:30:07 +00:00
Emmanuel Fleury
4afab02376 Adding tests cases for a better coverage of glib/tests/strfuncs.c 2019-05-02 00:13:25 +01:00
Christian Hergert
b3925ff5e4 glist: code style cleanup for g_list_insert_before()
This makes the g_list_insert_before() follow more closely the guidelines
for GLib, which is to avoid implicit pointer boolean value and to prefer
for over while to improve readability.
2019-05-01 13:01:14 -07:00
Christian Hergert
a4c3feb835 queue: add g_queue_insert_before_link() and g_queue_insert_after_link()
This adds two new helpers that allow for inserting pre-allocated GList
elements to the queue similar to existing helpers. This may be advantagous
in some situations such as statically allocated GList elements.
2019-05-01 13:01:14 -07:00
Christian Hergert
b0132bb64f list: add g_list_insert_before_link()
This adds a new insertion helper using a pre-allocated link which may be
advantagous in some situations such as statically linked GList elements.
2019-05-01 13:01:14 -07:00
Emmanuele Bassi
eb55d6413d Check GCC version before ignoring diagnostic message
The `alloc-size-larger-than` warning is available starting with GCC 7,
and using it in a pragma will generate a warning on older versions of
GCC.
2019-04-30 14:49:00 +01:00
Emmanuele Bassi
6cb6b418bf Add a version check for duplicated-branches warning
The GHashTable code ignores the duplicated-branches GCC warning, but we
need to do a compiler and version check, as either non-GCC compatible
compilers, or older versions of GCC will warn about the unknown pragma
or diagnostic.

If we don't do this while turning warnings into error, we're going to
fail the build unnecessarily.
2019-04-30 14:49:00 +01:00
Emmanuel Fleury
b3eab1deaf Fixing glib/tests/strfuncs.c to conform to new test coding standards 2019-04-30 09:43:01 +02:00
Emmanuel Fleury
95a5f63775 Fix some documentation issue in glib/gstrfuncs.c
Apparently, the documentation of g_strcanon() was not really cristal
clear, so this new code sample try to make it clear the fact that we
are working on the given string and not a copy. Moreover, it provides
a way to keep the original string at once.

Fix #29
2019-04-30 09:43:01 +02:00
Simon McVittie
a537e538be testing: Run tests specified with -p in the order specified
Closes: #1763
Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 17:28:55 +01:00
Simon McVittie
48cc3abede testing: Comment that test order with -p is reversed
Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 16:12:02 +01:00
Simon McVittie
dfec3c6789 Test what happens when GTestSkipCount is 0 or more than number of tests
Using --GTestSkipCount 0 is the same as omitting it. A skip count
greater than the number of tests is the same as equalling the number
of tests: they are all skipped.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 16:08:55 +01:00
Simon McVittie
bcee67e29c gtestutils: Test the combination of --tap and -p
Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 15:54:10 +01:00
Simon McVittie
b24cdffd5c gtestutils: Allow combining --tap with -p
The -p option is documented, and can be used to select and repeat
test-cases. This is particularly useful when debugging a single
failure among a large number of test-cases, or when debugging a
test-case that you suspect influences another test-case by leaking
global state.

Until now, -p was only supported with GLib's default (GLib-specific)
textual output format, and not with the standardized TAP format that
we are now encouraging. If we are considering making TAP the new default
(see glib#1619) it should get feature-equivalence with the current
default.

Because -p allows test-cases to be re-ordered and repeated, and an entry
in the test_paths list can match any number of test-cases (including
zero), we don't know ahead of time how many test-cases we are going to
run. TAP allows the "plan" to be deferred to the end, exactly to support
situations like this.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 15:54:10 +01:00
Simon McVittie
efa56aa957 gtestutils: Test the combination of --tap and --GTestSkipCount
Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 15:54:10 +01:00
Simon McVittie
14082191e8 gtestutils: Make --tap compatible with --GTestSkipCount
The undocumented --GTestSkipCount option is internal to the deprecated
gtester tool and rather obscure, but it's straightforward to support
by making G_TEST_LOG_SKIP_CASE produce TAP output similar to what already
happened when we emitted G_TEST_LOG_STOP_CASE with result
G_TEST_RUN_SKIPPED. I might as well do that while I'm looking at the
interaction between the --tap, -p and -s options.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 15:54:10 +01:00
Simon McVittie
88bac46287 gtestutils: Add regression test for combining -s with --tap
Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-04-29 15:54:10 +01:00
Philip Withnall
87014c8e97 glib: Update Unicode Character Database to version 12.0.0
Using commands:
   glib/gen-unicode-tables.pl -both 12.0.0 path/to/UCD
   tests/gen-casefold-txt.py 12.0.0 path/to/UCD/CaseFolding.txt \
     > tests/casefold.txt
   tests/gen-casemap-txt.py 12.0.0 path/to/UCD/UnicodeData.txt \
      path/to/UCD/SpecialCasing.txt > tests/casemap.txt
plus some manual additions of the new G_UNICODE_SCRIPT_* symbols to
gunicode.h, guniprop.c and glib/tests/unicode.c.

Using UCD release https://www.unicode.org/Public/zipped/12.0.0/UCD.zip.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Fixes: #1713
2019-04-29 14:16:12 +01:00
Philip Withnall
1c77c93e81 Merge branch 'gconstrutor-h-stdlib-h-msvc' into 'master'
glib/gconstructor.h: Include stdlib.h for MSVC builds

See merge request GNOME/glib!791
2019-04-29 12:10:52 +00:00
Philip Withnall
1916700541 Revert "macros: Try to use the standard __func__ first in G_STRFUNC"
This reverts commit 9f75cc9edf1d311ef4bacc3d686c7afa0c4dcbb2.

It breaks usage of G_STRFUNC when compiling applications with
`-Wpedantic` — `__func__` is not `#define`d, so G_STRFUNC was falling
through to using `__FUNCTION__`, which raises a warning with
`-Wpedantic`.

Fun times.

Fixes: #1755
2019-04-26 13:08:21 +01:00