1240 Commits

Author SHA1 Message Date
Emmanuel Fleury
86bcc5c942 Adding g_ptr_array_copy() function to glib/garray.c
Related to issue #269
2019-06-26 15:34:47 +02:00
Tristan Partin
b9988e5fc9 Add g_timer_is_active
Helper function for exposing the internal state of a GTimer.
2019-06-21 10:22:41 +00:00
Philip Withnall
5c5920d968 Merge branch 'fix-fileutils-test-windows' into 'master'
glib/tests/fileutils.c: Fix stdio Wrapper Test on Windows

See merge request GNOME/glib!931
2019-06-19 08:44:39 +00:00
Chun-wei Fan
7a72d3bbae glib/tests/fileutils.c: Fix stdio Wrapper Test on Windows
The g_creat() call was done in *nix style in regards to the mode parameter,
which the Windows CRT isn't going to understand (nor like, on newer CRTs).

Update the program such that it will pass, by using Windows-style
permission mode parameters for g_creat(), on Windows.
2019-06-19 11:21:20 +08:00
Chun-wei Fan
6e224f7677 glib/tests/convert.c: Skip tests that aren't meaningful for Windows
On Windows, everything is assumed as UTF-8 in g_get_filename_charsets(),
so setting G_FILENAME_ENCODING envvar has no effect, so we can just skip
the test on g_get_filename_charsets() where we try to influence it by
setting the G_FILENAME_ENCODING envvar.
2019-06-19 10:55:17 +08:00
Chun-wei Fan
bf40b7c746 glib/tests/refcount.c: Only expect saturation tests to pass on GCC
From grefcount.h, in order to disable warnings when G_DISABLE_CHECKS is
defined, we need to make use of the GCC-isque-only __extension__ for it
to work.  This means that in the saturation tests, we can only expect no
warnings to show if we are building on GCC-isque compilers with
G_DISABLE_CHECKS defined.

This will fix the refcount-macro test on Visual Studio builds at least.
2019-06-18 16:42:51 +08:00
Philip Withnall
fa5996927f Merge branch 'drop-g-disable-deprecated' into 'master'
Drop G_DISABLE_DEPRECATED

Closes #1060 and #638

See merge request GNOME/glib!871
2019-06-14 11:24:25 +00:00
Philip Withnall
9740b58814 Merge branch '77-wrap-on-linux' into 'master'
glib: Rename G_STDIO_NO_WRAP_ON_UNIX → G_STDIO_WRAP_ON_UNIX

Closes #77

See merge request GNOME/glib!830
2019-06-11 11:37:35 +00:00
Chun-wei Fan
5e0f384f88 glib/tests/win32.c: Fix test variable types
The variable types for the PID (bp) and event (be) are accidentally
reversed in the test program.  Correct their types so that tests do not
fail on Visual Studio x64 builds.

Fixes issue #1797
2019-06-04 20:08:20 +01:00
Philip Withnall
52b38ba6da tests: Don’t use a deprecated Unicode character type enumerator
Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-30 10:38:45 +01:00
Patrick Storz
56149722ae Add g_get_console_charset
Queries the charset used by the associated console, which does not
necessarily match the charset of the current locale as returned by
g_get_charset.

Fixes https://gitlab.gnome.org/GNOME/glib/issues/1270
2019-05-27 17:51:40 +00:00
Philip Withnall
4da8b7b35a gtestutils: Add g_test_summary() to add summary metadata to unit tests
This is a new function along the same lines as g_test_bug(): to allow
developers to annotate unit tests with information about the test (what
it tests, how it tests it) for future developers to read and learn from.

It will also output this summary as a comment in the test’s TAP output,
which might clarify test results.

Includes a unit test.

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

Fixes: #1450
2019-05-21 12:33:15 +01:00
Philip Withnall
81dbc7b07b tests: Set locale in gtestutils tests to allow UTF-8 output
Signed-off-by: Philip Withnall <withnall@endlessm.com>
2019-05-21 12:29:39 +01:00
Philip Withnall
522e74982e Merge branch '1441-1619-deprecate-gtester' into 'master'
Deprecate gtester and use TAP output for tests by default

Closes #1619 and #1441

See merge request GNOME/glib!842
2019-05-17 12:12:53 +00:00
Philip Withnall
4f5fe35385 Merge branch 'fix_g_unichar_totitle' into 'master'
Fix g unichar totitle

Closes #135

See merge request GNOME/glib!843
2019-05-14 12:05:30 +00:00
Philip Withnall
505f45ef95 tests: Remove redundant --tap options
Now that TAP output is used by default, passing `--tap` is unnecessary.

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

Helps: #1619
2019-05-14 12:42:51 +01:00
Emmanuel Fleury
7dcaa7eeda Add the corresponding test for g_unichar_totitle(0) 2019-05-14 13:38:14 +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
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
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
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
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
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
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
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
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
Emmanuel Fleury
b3eab1deaf Fixing glib/tests/strfuncs.c to conform to new test coding standards 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
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
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
LRN
cf39fbd08d W32: swap special g_get_prgname() for platform_get_argv0()
Commit 398008da added a W32-only code (from commit 7e0e251a)
to g_get_prgname() that makes this function never return NULL. This
is inconsistent with the other platforms. Revert the change, and add an
implementation for platform_get_argv0(), which is used by GOption when
g_get_prgname() == NULL.

The W32 platform_get_argv0() code is different from the one that was in
g_get_prgname(), because it should be getting argv0, not the name
of the executable that is being run (although most of the time they are
one and the same).

Adjust thest option-argv0 test to expect it to pass on W32.
2019-04-16 08:40:55 +00:00
Tomasz Miąsko
7db35ec7a8 tests: Check that option-argv0 test succeeds on Linux
To avoid potential regression in feature check that configures
`HAVE_PROC_SELF_CMDLINE` treat test failures on Linux as fatal.

This restores behaviour from before 4c038a27ff14170141f62f3ab61a6fa7c4747f09.
2019-04-07 00:00:00 +00:00