2024-10-29T01:21
2024-10-29T01:21
+ id -u glib2-test
id: 'glib2-test': no such user
+ useradd glib2-test
+ su glib2-test -c 'gnome-desktop-testing-runner glib'
Running test: glib/shell.test
# random seed: R02S2826c52e81bea4059860313203fb1e16
1..51
# Start of shell tests
# Start of cmdline tests
test cmdline: foo bar
ok 1 /shell/cmdline/0
test cmdline: foo 'bar'
ok 2 /shell/cmdline/1
test cmdline: foo "bar"
ok 3 /shell/cmdline/2
test cmdline: foo '' 'bar'
ok 4 /shell/cmdline/3
test cmdline: foo "bar"'baz'blah'foo'\''blah'"boo"
ok 5 /shell/cmdline/4
test cmdline: foo 	 	blah	foo		bar  baz
ok 6 /shell/cmdline/5
test cmdline: foo '    spaces more spaces lots of     spaces in this   '  	
ok 7 /shell/cmdline/6
test cmdline: foo \
bar
ok 8 /shell/cmdline/7
test cmdline: foo '' ''
ok 9 /shell/cmdline/8
test cmdline: foo \" la la la
ok 10 /shell/cmdline/9
test cmdline: foo \ foo woo woo\ 
ok 11 /shell/cmdline/10
test cmdline: foo "yada yada \$\""
ok 12 /shell/cmdline/11
test cmdline: foo "c:\\"
ok 13 /shell/cmdline/12
test cmdline: foo # bla bla bla
 bar
ok 14 /shell/cmdline/13
test cmdline: foo a#b
ok 15 /shell/cmdline/14
test cmdline: #foo
ok 16 /shell/cmdline/15
test cmdline: foo bar \
ok 17 /shell/cmdline/16
test cmdline: foo 'bar baz
ok 18 /shell/cmdline/17
test cmdline: foo '"bar" baz
ok 19 /shell/cmdline/18
test cmdline: 
ok 20 /shell/cmdline/19
test cmdline:   
ok 21 /shell/cmdline/20
test cmdline: # foo bar
ok 22 /shell/cmdline/21
test cmdline: foo '/bar/summer'\''09 tours.pdf'
ok 23 /shell/cmdline/22
# End of cmdline tests
# Start of quote tests
ok 24 /shell/quote/0
ok 25 /shell/quote/1
ok 26 /shell/quote/2
ok 27 /shell/quote/3
ok 28 /shell/quote/4
ok 29 /shell/quote/5
ok 30 /shell/quote/6
# End of quote tests
# Start of unquote tests
ok 31 /shell/unquote/0
ok 32 /shell/unquote/1
ok 33 /shell/unquote/2
ok 34 /shell/unquote/3
ok 35 /shell/unquote/4
ok 36 /shell/unquote/5
ok 37 /shell/unquote/6
ok 38 /shell/unquote/7
ok 39 /shell/unquote/8
ok 40 /shell/unquote/9
ok 41 /shell/unquote/10
ok 42 /shell/unquote/11
ok 43 /shell/unquote/12
ok 44 /shell/unquote/13
ok 45 /shell/unquote/14
ok 46 /shell/unquote/15
ok 47 /shell/unquote/16
ok 48 /shell/unquote/17
ok 49 /shell/unquote/18
ok 50 /shell/unquote/19
ok 51 /shell/unquote/20
# End of unquote tests
# End of shell tests
PASS: glib/shell.test
Running test: glib/gdbus-names.test
# random seed: R02Sc61935304e104b26255b999fe2f6bcc3
1..10
# Start of gdbus tests
ok 1 /gdbus/validate-names
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 2 /gdbus/bus-own-name
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 3 /gdbus/bus-watch-name
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 4 /gdbus/bus-watch-name-auto-start
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
dbus-daemon[9938]: [session uid=1000 pid=9938] Activating service name='org.gtk.GDBus.FakeService' requested by ':1.0' (uid=1000 pid=9930 comm="/usr/libexec/installed-tests/glib/gdbus-names")
# Acquired a message bus connection
dbus-daemon[9938]: [session uid=1000 pid=9938] Successfully activated service 'org.gtk.GDBus.FakeService'
# Acquired the name org.gtk.GDBus.FakeService
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 5 /gdbus/bus-watch-name-auto-start-service-exist
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 6 /gdbus/bus-watch-name-closures
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 7 /gdbus/bus-watch-name-closures-auto-start
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 8 /gdbus/bus-watch-different-context
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/604
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 9 /gdbus/bus-unwatch-early
ok 10 /gdbus/escape-object-path
# End of gdbus tests
PASS: glib/gdbus-names.test
Running test: glib/hostutils.test
# random seed: R02S1e64524f974db615bf4b6d2e224dbba5
1..3
# Start of hostutils tests
ok 1 /hostutils/to_ascii
ok 2 /hostutils/to_unicode
ok 3 /hostutils/is_ip_addr
# End of hostutils tests
PASS: glib/hostutils.test
Running test: glib/slice-threadinit.test
PASS: glib/slice-threadinit.test
Running test: glib/pattern.test
# random seed: R02S30a757470caaa5c97b172bf236cfd4b0
1..90
# Start of pattern tests
# Start of compile tests
ok 1 /pattern/compile/0
ok 2 /pattern/compile/1
ok 3 /pattern/compile/2
ok 4 /pattern/compile/3
ok 5 /pattern/compile/4
ok 6 /pattern/compile/5
ok 7 /pattern/compile/6
ok 8 /pattern/compile/7
ok 9 /pattern/compile/8
ok 10 /pattern/compile/9
ok 11 /pattern/compile/10
ok 12 /pattern/compile/11
ok 13 /pattern/compile/12
ok 14 /pattern/compile/13
# End of compile tests
# Start of copy tests
ok 15 /pattern/copy/0
ok 16 /pattern/copy/1
ok 17 /pattern/copy/2
ok 18 /pattern/copy/3
ok 19 /pattern/copy/4
ok 20 /pattern/copy/5
ok 21 /pattern/copy/6
ok 22 /pattern/copy/7
ok 23 /pattern/copy/8
ok 24 /pattern/copy/9
ok 25 /pattern/copy/10
ok 26 /pattern/copy/11
ok 27 /pattern/copy/12
ok 28 /pattern/copy/13
# End of copy tests
# Start of match tests
ok 29 /pattern/match/0
ok 30 /pattern/match/1
ok 31 /pattern/match/2
ok 32 /pattern/match/3
ok 33 /pattern/match/4
ok 34 /pattern/match/5
ok 35 /pattern/match/6
ok 36 /pattern/match/7
ok 37 /pattern/match/8
ok 38 /pattern/match/9
ok 39 /pattern/match/10
ok 40 /pattern/match/11
ok 41 /pattern/match/12
ok 42 /pattern/match/13
ok 43 /pattern/match/14
ok 44 /pattern/match/15
ok 45 /pattern/match/16
ok 46 /pattern/match/17
ok 47 /pattern/match/18
ok 48 /pattern/match/19
ok 49 /pattern/match/20
ok 50 /pattern/match/21
ok 51 /pattern/match/22
ok 52 /pattern/match/23
ok 53 /pattern/match/24
ok 54 /pattern/match/25
ok 55 /pattern/match/26
ok 56 /pattern/match/27
ok 57 /pattern/match/28
ok 58 /pattern/match/29
ok 59 /pattern/match/30
ok 60 /pattern/match/31
ok 61 /pattern/match/32
ok 62 /pattern/match/33
ok 63 /pattern/match/34
ok 64 /pattern/match/35
ok 65 /pattern/match/36
ok 66 /pattern/match/37
ok 67 /pattern/match/38
ok 68 /pattern/match/39
ok 69 /pattern/match/40
ok 70 /pattern/match/41
ok 71 /pattern/match/42
ok 72 /pattern/match/43
ok 73 /pattern/match/44
ok 74 /pattern/match/45
ok 75 /pattern/match/46
ok 76 /pattern/match/47
ok 77 /pattern/match/48
ok 78 /pattern/match/49
ok 79 /pattern/match/50
# End of match tests
# Start of equal tests
ok 80 /pattern/equal/0
ok 81 /pattern/equal/1
ok 82 /pattern/equal/2
ok 83 /pattern/equal/3
ok 84 /pattern/equal/4
ok 85 /pattern/equal/5
ok 86 /pattern/equal/6
ok 87 /pattern/equal/7
ok 88 /pattern/equal/8
ok 89 /pattern/equal/9
ok 90 /pattern/equal/10
# End of equal tests
# End of pattern tests
PASS: glib/pattern.test
Running test: glib/win32-appinfo.test
# random seed: R02S3e7209575b6e6ffed86e512231f8e737
1..5
# Start of appinfo tests
ok 1 /appinfo/utf16-strfuncs
ok 2 /appinfo/win32-extract-executable
ok 3 /appinfo/win32-rundll32-fixup
ok 4 /appinfo/win32-parse-filename
ok 5 /appinfo/win32-utf16-conversion-fail
# Start of subprocess tests
# End of subprocess tests
# End of appinfo tests
PASS: glib/win32-appinfo.test
Running test: glib/atomic.test
# random seed: R02S15be57b84392220f0e4b0572f49b5fcb
1..2
# Start of atomic tests
ok 1 /atomic/types
ok 2 /atomic/threaded
# End of atomic tests
PASS: glib/atomic.test
Running test: glib/data-input-stream.test
# random seed: R02Se67373c50d35f12a3d5e3322bc2844a3
1..10
# Start of data-input-stream tests
ok 1 /data-input-stream/basic
ok 2 /data-input-stream/read-lines-LF
ok 3 /data-input-stream/read-lines-LF-valid-utf8
ok 4 /data-input-stream/read-lines-LF-invalid-utf8
ok 5 /data-input-stream/read-lines-CR
ok 6 /data-input-stream/read-lines-CR-LF
ok 7 /data-input-stream/read-lines-any
ok 8 /data-input-stream/read-until
ok 9 /data-input-stream/read-upto
ok 10 /data-input-stream/read-int
# End of data-input-stream tests
PASS: glib/data-input-stream.test
Running test: glib/g-file-info.test
# random seed: R02Scf550e8002c066c5d7a96db15f64cc8e
1..5
# Start of g-file-info tests
ok 1 /g-file-info/test_g_file_info
# /g-file-info/xattrs summary: Test setting and getting escaped xattrs
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 2 /g-file-info/xattrs # SKIP xattrs not supported on this file system
# Start of test_g_file_info tests
# /g-file-info/test_g_file_info/modification-time summary: Test that getting the modification time of a file works.
ok 3 /g-file-info/test_g_file_info/modification-time
# /g-file-info/test_g_file_info/access-time summary: Test that getting the access time of a file works.
ok 4 /g-file-info/test_g_file_info/access-time
# /g-file-info/test_g_file_info/creation-time summary: Test that getting the creation time of a file works.
ok 5 /g-file-info/test_g_file_info/creation-time # SKIP Skipping testing creation time as it?s not supported by the kernel
# End of test_g_file_info tests
# End of g-file-info tests
PASS: glib/g-file-info.test
Running test: glib/memory-monitor-portal.test
TAP version 13
ok 1 __main__.TestLowMemoryMonitorPortal.test_low_memory_warning_portal_signal # SKIP Cannot import dbus
1..1
PASS: glib/memory-monitor-portal.test
Running test: glib/gio-test.test
PASS: glib/gio-test.test
Running test: glib/memory-monitor.test
# random seed: R02S23d3615da56ddab809a1d066ede2ccb0
1..1
# Start of memory-monitor tests
# GLib-GIO-DEBUG: Failed to initialize portal (GMemoryMonitorPortal) for gio-memory-monitor: Not using portals
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dbus (GMemoryMonitorDBus) for ?gio-memory-monitor?
ok 1 /memory-monitor/default
# End of memory-monitor tests
PASS: glib/memory-monitor.test
Running test: glib/async-close-output-stream.test
# random seed: R02S1ac54679a46169f3b96918e891d21314
1..3
# Start of close-async tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937
ok 1 /close-async/without-flush
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937
ok 2 /close-async/with-flush
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937
ok 3 /close-async/with-async-flush
# End of close-async tests
PASS: glib/async-close-output-stream.test
Running test: glib/markup-parse.test
# random seed: R02Sbb8734ab77bb4b2fb2a8d55366ec500e
1..71
# Start of markup tests
# Start of parse tests
ok 1 /markup/parse/fail-3.gmarkup
ok 2 /markup/parse/fail-9.gmarkup
ok 3 /markup/parse/valid-8.gmarkup
ok 4 /markup/parse/valid-7.gmarkup
ok 5 /markup/parse/fail-24.gmarkup
ok 6 /markup/parse/fail-42.gmarkup
ok 7 /markup/parse/fail-40.gmarkup
ok 8 /markup/parse/valid-17.gmarkup
ok 9 /markup/parse/fail-54.gmarkup
ok 10 /markup/parse/fail-27.gmarkup
ok 11 /markup/parse/valid-16.gmarkup
ok 12 /markup/parse/fail-30.gmarkup
ok 13 /markup/parse/valid-2.gmarkup
ok 14 /markup/parse/fail-53.gmarkup
ok 15 /markup/parse/fail-26.gmarkup
ok 16 /markup/parse/valid-12.gmarkup
ok 17 /markup/parse/fail-28.gmarkup
ok 18 /markup/parse/fail-37.gmarkup
ok 19 /markup/parse/fail-17.gmarkup
ok 20 /markup/parse/fail-46.gmarkup
ok 21 /markup/parse/fail-41.gmarkup
ok 22 /markup/parse/valid-6.gmarkup
ok 23 /markup/parse/valid-5.gmarkup
ok 24 /markup/parse/fail-12.gmarkup
ok 25 /markup/parse/valid-13.gmarkup
ok 26 /markup/parse/valid-9.gmarkup
ok 27 /markup/parse/fail-32.gmarkup
ok 28 /markup/parse/valid-4.gmarkup
ok 29 /markup/parse/fail-8.gmarkup
ok 30 /markup/parse/fail-39.gmarkup
ok 31 /markup/parse/fail-45.gmarkup
ok 32 /markup/parse/fail-5.gmarkup
ok 33 /markup/parse/fail-13.gmarkup
ok 34 /markup/parse/fail-18.gmarkup
ok 35 /markup/parse/fail-29.gmarkup
ok 36 /markup/parse/fail-44.gmarkup
ok 37 /markup/parse/fail-47.gmarkup
ok 38 /markup/parse/fail-19.gmarkup
ok 39 /markup/parse/fail-16.gmarkup
ok 40 /markup/parse/fail-48.gmarkup
ok 41 /markup/parse/fail-52.gmarkup
ok 42 /markup/parse/fail-31.gmarkup
ok 43 /markup/parse/fail-7.gmarkup
ok 44 /markup/parse/fail-6.gmarkup
ok 45 /markup/parse/valid-1.gmarkup
ok 46 /markup/parse/fail-2.gmarkup
ok 47 /markup/parse/fail-23.gmarkup
ok 48 /markup/parse/valid-11.gmarkup
ok 49 /markup/parse/fail-33.gmarkup
ok 50 /markup/parse/fail-11.gmarkup
ok 51 /markup/parse/valid-3.gmarkup
ok 52 /markup/parse/fail-15.gmarkup
ok 53 /markup/parse/fail-25.gmarkup
ok 54 /markup/parse/fail-50.gmarkup
ok 55 /markup/parse/fail-20.gmarkup
ok 56 /markup/parse/fail-14.gmarkup
ok 57 /markup/parse/fail-35.gmarkup
ok 58 /markup/parse/fail-1.gmarkup
ok 59 /markup/parse/fail-36.gmarkup
ok 60 /markup/parse/fail-4.gmarkup
ok 61 /markup/parse/valid-14.gmarkup
ok 62 /markup/parse/fail-43.gmarkup
ok 63 /markup/parse/fail-22.gmarkup
ok 64 /markup/parse/fail-51.gmarkup
ok 65 /markup/parse/valid-10.gmarkup
ok 66 /markup/parse/fail-38.gmarkup
ok 67 /markup/parse/valid-15.gmarkup
ok 68 /markup/parse/fail-49.gmarkup
ok 69 /markup/parse/fail-10.gmarkup
ok 70 /markup/parse/fail-21.gmarkup
ok 71 /markup/parse/fail-34.gmarkup
# End of parse tests
# End of markup tests
PASS: glib/markup-parse.test
Running test: glib/gnotification.test
# random seed: R02Sbf04a8108c6fca12cd14564a5356c002
1..2
# Start of gnotification tests
ok 1 /gnotification/basic
ok 2 /gnotification/properties
# End of gnotification tests
PASS: glib/gnotification.test
Running test: glib/slice-concurrent.test
# random seed: R02S35184ea54be60a168cb9cb956a201621
1..1
# Start of slice tests
# a
# e
# f
# c
# c
# b
# f
# c
# g
# e
# h
# h
# d
# a
# d
# b
# h
# b
# c
# e
# g
# f
# h
# c
# h
# a
# a
# h
# a
# e
# g
# f
# h
# g
# e
# c
# c
# d
# a
# h
# h
# a
# e
# b
# c
# h
# a
# c
# d
# h
# d
# g
# h
# h
# e
# a
# a
# a
# c
# a
# g
# b
# h
# e
# b
# d
# h
# c
# c
# b
# c
# c
# a
# a
# d
# h
# g
# f
# f
# b
# d
# g
# b
# g
# c
# g
# d
# b
# b
# b
# g
# e
# h
# f
# f
# b
# f
# h
# g
# c
# a
# c
# a
# d
# g
# d
# b
# g
# e
# a
# c
# f
# f
# a
# e
# e
# d
# d
# e
# d
# e
# e
# g
# e
# h
# c
# b
# f
# d
# g
# e
# e
# f
# g
# c
# h
# g
# d
# b
# g
# h
# h
# h
# h
# Thread 1: 48735 blocks freed, 1474 blocks not freed
# Thread 2: 48052 blocks freed, 1770 blocks not freed
# Thread 3: 48071 blocks freed, 2014 blocks not freed
# Thread 4: 47903 blocks freed, 1956 blocks not freed
# Thread 5: 48534 blocks freed, 1259 blocks not freed
# Thread 6: 47283 blocks freed, 2961 blocks not freed
# Thread 7: 48626 blocks freed, 1250 blocks not freed
# Thread 8: 50000 blocks freed, 112 blocks not freed
ok 1 /slice/concurrent
# End of slice tests
PASS: glib/slice-concurrent.test
Running test: glib/defaultiface.test
PASS: glib/defaultiface.test
Running test: glib/mem-overflow.test
# random seed: R02Sdb9858360471d229adffd9b859af08f9
1..2
# Start of mem tests
ok 1 /mem/overflow
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=615379
ok 2 /mem/empty-alloc
# Start of overflow tests
# Start of subprocess tests
# End of subprocess tests
# End of overflow tests
# Start of empty-alloc tests
# End of empty-alloc tests
# End of mem tests
PASS: glib/mem-overflow.test
Running test: glib/timer.test
# random seed: R02Scf32695dcaf3d91f655c3330a360af44
1..9
# Start of timer tests
ok 1 /timer/basic
ok 2 /timer/stop
ok 3 /timer/continue
ok 4 /timer/reset
ok 5 /timer/is_active
# End of timer tests
# Start of timeval tests
ok 6 /timeval/add
ok 7 /timeval/from-iso8601
ok 8 /timeval/to-iso8601
# Start of to-iso8601 tests
ok 9 /timeval/to-iso8601/overflow
# End of to-iso8601 tests
# End of timeval tests
PASS: glib/timer.test
Running test: glib/bookmarkfile.test
# random seed: R02Sa958330a8cd6666515b3d231fc13bec0
1..50
# Start of bookmarks tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/load-from-data-dirs/.dirs/runtime
ok 1 /bookmarks/load-from-data-dirs
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/to-file/.dirs/runtime
# Roundtrip from newly created bookmark file /tmp/bookmarkfile-test-PLOTW2.xbel
# Roundtrip from a valid bookmark file
ok 2 /bookmarks/to-file
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/move-item/.dirs/runtime
ok 3 /bookmarks/move-item
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/misc/.dirs/runtime
ok 4 /bookmarks/misc
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/deprecated/.dirs/runtime
ok 5 /bookmarks/deprecated
# Start of parse tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-33.xbel/.dirs/runtime
ok 6 /bookmarks/parse/fail-33.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-14.xbel/.dirs/runtime
ok 7 /bookmarks/parse/fail-14.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-13.xbel/.dirs/runtime
ok 8 /bookmarks/parse/fail-13.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-42.xbel/.dirs/runtime
ok 9 /bookmarks/parse/fail-42.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-34.xbel/.dirs/runtime
ok 10 /bookmarks/parse/fail-34.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-19.xbel/.dirs/runtime
ok 11 /bookmarks/parse/fail-19.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-26.xbel/.dirs/runtime
ok 12 /bookmarks/parse/fail-26.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-05.xbel/.dirs/runtime
ok 13 /bookmarks/parse/fail-05.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-28.xbel/.dirs/runtime
ok 14 /bookmarks/parse/fail-28.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-29.xbel/.dirs/runtime
ok 15 /bookmarks/parse/fail-29.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-23.xbel/.dirs/runtime
ok 16 /bookmarks/parse/fail-23.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-17.xbel/.dirs/runtime
ok 17 /bookmarks/parse/fail-17.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-25.xbel/.dirs/runtime
ok 18 /bookmarks/parse/fail-25.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-41.xbel/.dirs/runtime
ok 19 /bookmarks/parse/fail-41.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-22.xbel/.dirs/runtime
ok 20 /bookmarks/parse/fail-22.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-04.xbel/.dirs/runtime
ok 21 /bookmarks/parse/fail-04.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-35.xbel/.dirs/runtime
ok 22 /bookmarks/parse/fail-35.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-31.xbel/.dirs/runtime
ok 23 /bookmarks/parse/fail-31.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-18.xbel/.dirs/runtime
ok 24 /bookmarks/parse/fail-18.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-02.xbel/.dirs/runtime
ok 25 /bookmarks/parse/valid-02.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-03.xbel/.dirs/runtime
ok 26 /bookmarks/parse/valid-03.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-01.xbel/.dirs/runtime
ok 27 /bookmarks/parse/fail-01.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-38.xbel/.dirs/runtime
ok 28 /bookmarks/parse/fail-38.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-09.xbel/.dirs/runtime
ok 29 /bookmarks/parse/fail-09.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-02.xbel/.dirs/runtime
ok 30 /bookmarks/parse/fail-02.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-12.xbel/.dirs/runtime
ok 31 /bookmarks/parse/fail-12.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-16.xbel/.dirs/runtime
ok 32 /bookmarks/parse/fail-16.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-06.xbel/.dirs/runtime
ok 33 /bookmarks/parse/fail-06.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-30.xbel/.dirs/runtime
ok 34 /bookmarks/parse/fail-30.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-37.xbel/.dirs/runtime
ok 35 /bookmarks/parse/fail-37.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-36.xbel/.dirs/runtime
ok 36 /bookmarks/parse/fail-36.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-20.xbel/.dirs/runtime
ok 37 /bookmarks/parse/fail-20.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-24.xbel/.dirs/runtime
ok 38 /bookmarks/parse/fail-24.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-10.xbel/.dirs/runtime
ok 39 /bookmarks/parse/fail-10.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-11.xbel/.dirs/runtime
ok 40 /bookmarks/parse/fail-11.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-03.xbel/.dirs/runtime
ok 41 /bookmarks/parse/fail-03.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-32.xbel/.dirs/runtime
ok 42 /bookmarks/parse/fail-32.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-21.xbel/.dirs/runtime
ok 43 /bookmarks/parse/fail-21.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-07.xbel/.dirs/runtime
ok 44 /bookmarks/parse/fail-07.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-39.xbel/.dirs/runtime
ok 45 /bookmarks/parse/fail-39.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-40.xbel/.dirs/runtime
ok 46 /bookmarks/parse/fail-40.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-08.xbel/.dirs/runtime
ok 47 /bookmarks/parse/fail-08.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-15.xbel/.dirs/runtime
ok 48 /bookmarks/parse/fail-15.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/fail-27.xbel/.dirs/runtime
ok 49 /bookmarks/parse/fail-27.xbel
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_MMNTW2/bookmarks/parse/valid-01.xbel/.dirs/runtime
ok 50 /bookmarks/parse/valid-01.xbel
# End of parse tests
# End of bookmarks tests
PASS: glib/bookmarkfile.test
Running test: glib/convert.test
# random seed: R02S0887fe1937b2ae2635a5cb9a96dfad4b
1..12
# Start of conversion tests
ok 1 /conversion/no-conv
ok 2 /conversion/iconv-state
ok 3 /conversion/illegal-sequence
ok 4 /conversion/byte-order
ok 5 /conversion/unicode
ok 6 /conversion/filename-utf8
ok 7 /conversion/filename-display
ok 8 /conversion/convert-embedded-nul
# Start of locale-to-utf8 tests
ok 9 /conversion/locale-to-utf8/embedded-nul
# Start of embedded-nul tests
# Start of subprocess tests
# End of subprocess tests
# End of embedded-nul tests
# End of locale-to-utf8 tests
# Start of locale-from-utf8 tests
ok 10 /conversion/locale-from-utf8/embedded-nul
# Start of embedded-nul tests
# Start of subprocess tests
# End of subprocess tests
# End of embedded-nul tests
# End of locale-from-utf8 tests
# Start of filename-to-utf8 tests
ok 11 /conversion/filename-to-utf8/embedded-nul
# Start of embedded-nul tests
# Start of subprocess tests
# End of subprocess tests
# End of embedded-nul tests
# End of filename-to-utf8 tests
# Start of filename-from-utf8 tests
ok 12 /conversion/filename-from-utf8/embedded-nul
# Start of embedded-nul tests
# Start of subprocess tests
# End of subprocess tests
# End of embedded-nul tests
# End of filename-from-utf8 tests
# End of conversion tests
PASS: glib/convert.test
Running test: glib/gdbus-test-codegen-min-required-2-64.test
# random seed: R02S35345b11ec47460022bc2d450e9f52af
1..8
# Start of gdbus tests
# Start of codegen tests
ok 1 /gdbus/codegen/annotations
ok 2 /gdbus/codegen/interface_stability
ok 3 /gdbus/codegen/object-manager
ok 4 /gdbus/codegen/property-naming
ok 5 /gdbus/codegen/autocleanups
ok 6 /gdbus/codegen/deprecations
ok 7 /gdbus/codegen/standalone-interface-info
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726
ok 8 /gdbus/codegen/unix-fd-list
# End of codegen tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-test-codegen-min-required-2-64.test
Running test: glib/cache.test
# random seed: R02Sac4b36a3b645dd37f5381032361fe058
1..1
# Start of cache tests
ok 1 /cache/basic
# End of cache tests
PASS: glib/cache.test
Running test: glib/thread-test.test
Executing: glib/thread-test.test
Executing: glib/thread-test.test
Executing: glib/thread-test.test
Executing: glib/thread-test.test
PASS: glib/thread-test.test
Running test: glib/charset.test
# random seed: R02Scd8813ded68c85ea3ae42035c851e8e2
1..2
# Start of charset tests
# Test 0
# Test 1
# Test 2
# Test 3
ok 1 /charset/language_names_with_category
ok 2 /charset/language_names_with_category_async
# End of charset tests
PASS: glib/charset.test
Running test: glib/hash.test
# random seed: R02S43817674fc8640d2385636076b2dd27c
1..28
# Start of hash tests
ok 1 /hash/misc
ok 2 /hash/one
ok 3 /hash/honeyman
ok 4 /hash/direct
ok 5 /hash/direct2
ok 6 /hash/int
ok 7 /hash/int64
ok 8 /hash/double
ok 9 /hash/string
ok 10 /hash/set
ok 11 /hash/set-ref
ok 12 /hash/ref
ok 13 /hash/remove-all
ok 14 /hash/recursive-remove-all
ok 15 /hash/find
ok 16 /hash/foreach
ok 17 /hash/foreach-steal
ok 18 /hash/steal-extended
ok 19 /hash/lookup-extended
ok 20 /hash/new-similar
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642944
ok 21 /hash/lookup-null-key
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=650459
ok 22 /hash/destroy-modify
ok 23 /hash/consistency
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=662544
ok 24 /hash/iter-replace
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=692815
ok 25 /hash/set-insert-corruption
ok 26 /hash/set-to-strv
ok 27 /hash/primes
# Start of recursive-remove-all tests
# End of recursive-remove-all tests
# Start of steal-extended tests
ok 28 /hash/steal-extended/optional
# End of steal-extended tests
# End of hash tests
PASS: glib/hash.test
Running test: glib/appmonitor.test
# random seed: R02S225ccdb0d0e8dca9ee951c7fd40d74ca
1..1
# Start of monitor tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/system-config1:/tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/system-data1:/tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/runtime
# Using data directory: /tmp/test_appmonitor_VJGSW2/monitor/app/.dirs/data
ok 1 /monitor/app
# End of monitor tests
PASS: glib/appmonitor.test
Running test: glib/refstring.test
# random seed: R02Se3cd5b83cdd0904cafbb92469a054152
1..5
# Start of refstring tests
# s = 'hello, world' (0x5578a3fa09e0)
ok 1 /refstring/base
ok 2 /refstring/length
ok 3 /refstring/length-auto
ok 4 /refstring/length-nuls
# s = 'hello, world' (0x5578a3fa09e0)
# p = s = 'hello, world' (0x5578a3fa09e0)
# releasing p[0x5578a3fa09e0] ('hello, world')
# p = 'goodbye, world' (0x5578a3f9ab80)
# releasing p[0x5578a3f9ab80] ('goodbye, world')
# releasing s[0x5578a3fa09e0] ('hello, world')
ok 5 /refstring/intern
# End of refstring tests
PASS: glib/refstring.test
Running test: glib/signalgroup.test
# random seed: R02Sbd388e045e6e779d177185a08894debe
1..9
# Start of GObject tests
# Start of SignalGroup tests
ok 1 /GObject/SignalGroup/invalid
ok 2 /GObject/SignalGroup/simple
ok 3 /GObject/SignalGroup/changing-target
ok 4 /GObject/SignalGroup/blocking
ok 5 /GObject/SignalGroup/weak-ref-target
ok 6 /GObject/SignalGroup/connect-object
ok 7 /GObject/SignalGroup/signal-parsing
ok 8 /GObject/SignalGroup/properties
ok 9 /GObject/SignalGroup/interface
# Start of signal-parsing tests
# End of signal-parsing tests
# End of SignalGroup tests
# End of GObject tests
PASS: glib/signalgroup.test
Running test: glib/cancellable.test
# random seed: R02S070e09ccb73c984a56b9aa1e5b09d681
1..3
# Start of cancellable tests
ok 1 /cancellable/multiple-concurrent # SKIP Not running timing heavy test
ok 2 /cancellable/null
# End of cancellable tests
# Start of cancellable-source tests
# /cancellable-source/threaded-dispose summary: Test a thread race between disposing of a GCancellableSource (in one thread) and cancelling the GCancellable it refers to (in another thread)
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1841
ok 3 /cancellable-source/threaded-dispose
# End of cancellable-source tests
PASS: glib/cancellable.test
Running test: glib/642026.test
# random seed: R02S4e458c0a5bd40df9a0069bf88ab8eeda
1..1
# Start of glib tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026
ok 1 /glib/642026
# End of glib tests
PASS: glib/642026.test
Running test: glib/markup-subparser.test
# random seed: R02S85909c398c9be870532a599c39d1c11e
1..14
# Start of glib tests
# Start of markup tests
# Start of subparser tests
# Start of success tests
ok 1 /glib/markup/subparser/success/0
ok 2 /glib/markup/subparser/success/1
ok 3 /glib/markup/subparser/success/2
ok 4 /glib/markup/subparser/success/3
ok 5 /glib/markup/subparser/success/4
ok 6 /glib/markup/subparser/success/5
ok 7 /glib/markup/subparser/success/6
# End of success tests
# Start of failure tests
ok 8 /glib/markup/subparser/failure/0
ok 9 /glib/markup/subparser/failure/1
ok 10 /glib/markup/subparser/failure/2
ok 11 /glib/markup/subparser/failure/3
ok 12 /glib/markup/subparser/failure/4
ok 13 /glib/markup/subparser/failure/5
ok 14 /glib/markup/subparser/failure/6
# End of failure tests
# End of subparser tests
# End of markup tests
# End of glib tests
PASS: glib/markup-subparser.test
Running test: glib/closure-refcount.test
# random seed: R02Se80017bad8dc5c3733cd8de27a8a3b1b
1..1
# Start of closure tests
# Init 0x55b84e825030
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread2
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread1
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread2
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread1
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread2
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread1
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread2
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Yielding from thread1
# Yielding from main thread
# Yielding from main thread
# Yielding from main thread
# Stopping
# Stopped
ok 1 /closure/refcount
# End of closure tests
PASS: glib/closure-refcount.test
Running test: glib/gdbus-addresses.test
# random seed: R02S57172ddc9626f4ad24e52aeaa0e20e7b
1..9
# Start of gdbus tests
ok 1 /gdbus/empty-address
ok 2 /gdbus/unsupported-address
ok 3 /gdbus/address-parsing
ok 4 /gdbus/unix-address
ok 5 /gdbus/nonce-tcp-address
ok 6 /gdbus/tcp-address
ok 7 /gdbus/autolaunch-address
ok 8 /gdbus/mixed-address
ok 9 /gdbus/escape-address
# End of gdbus tests
PASS: glib/gdbus-addresses.test
Running test: glib/refcount-macro.test
# random seed: R02S353c5f4832bc1a28028d3e369c5ab3d0
1..4
# Start of refcount tests
ok 1 /refcount/grefcount
ok 2 /refcount/gatomicrefcount
# Start of grefcount tests
ok 3 /refcount/grefcount/saturation
# End of grefcount tests
# Start of gatomicrefcount tests
ok 4 /refcount/gatomicrefcount/saturation
# End of gatomicrefcount tests
# End of refcount tests
PASS: glib/refcount-macro.test
Running test: glib/module-test-plugin.test
# random seed: R02S34af7aa8e18f10a7ac704fe14d37cb50
PASS: glib/module-test-plugin.test
Running test: glib/signal-handler.test
# random seed: R02S3006919f9b33e70b089615adb761f0d0
1..0
PASS: glib/signal-handler.test
Running test: glib/scannerapi.test
# random seed: R02Sebe1a72730d11f7a11536848f7784e03
1..4
# Start of scanner tests
ok 1 /scanner/warn
ok 2 /scanner/error
ok 3 /scanner/symbols
ok 4 /scanner/tokens
# End of scanner tests
PASS: glib/scannerapi.test
Running test: glib/refcount.test
# random seed: R02Se369f13b0c938a880d1f7143914efd3e
1..4
# Start of refcount tests
ok 1 /refcount/grefcount
ok 2 /refcount/gatomicrefcount
# Start of grefcount tests
ok 3 /refcount/grefcount/saturation
# End of grefcount tests
# Start of gatomicrefcount tests
ok 4 /refcount/gatomicrefcount/saturation
# End of gatomicrefcount tests
# End of refcount tests
PASS: glib/refcount.test
Running test: glib/properties4.test
START: /usr/libexec/installed-tests/glib/properties4
PASS: glib/properties4.test
Running test: glib/overflow.test
# random seed: R02Sedb2673b528658c7e8c4abf73c7cdcbd
1..6
# Start of glib tests
# Start of checked-math tests
ok 1 /glib/checked-math/guint-add
ok 2 /glib/checked-math/guint-mul
ok 3 /glib/checked-math/guint64-add
ok 4 /glib/checked-math/guint64-mul
ok 5 /glib/checked-math/gsize-add
ok 6 /glib/checked-math/gsize-mul
# End of checked-math tests
# End of glib tests
PASS: glib/overflow.test
Running test: glib/genmarshal.py.test
TAP version 13
ok 1 __main__.TestGenmarshal.test_empty_list
# tmpdir: /tmp/tmpuffft72h
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmpuffft72h/tmp27niy4zy.list: 
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpuffft72h/tmp27niy4zy.list', '--header', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# #include <glib-object.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpuffft72h/tmp27niy4zy.list', '--body', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #include <glib-object.h>
# 
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
ok 2 __main__.TestGenmarshal.test_help
# tmpdir: /tmp/tmp5hqzo9s0
# genmarshal: /usr/bin/glib-genmarshal
# Running: ['/usr/bin/glib-genmarshal', '--help']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: usage: glib-genmarshal [-h] [--prefix STRING] [--output FILE] [--skip-source]
#                        [--internal] [--valist-marshallers] [-v]
#                        [--g-fatal-warnings] [--include-header [HEADER]]
#                        [--pragma-once] [-D CPP_DEFINES] [-U CPP_UNDEFINES]
#                        [--prototypes] [--header] [--body]
#                        [--stdinc | --nostdinc] [--quiet | --verbose]
#                        [FILE ...]
# 
# Generate signal marshallers for GObject
# 
# positional arguments:
#   FILE                  Files with lists of marshallers to generate, or "-"
#                         for standard input
# 
# options:
#   -h, --help            show this help message and exit
#   --prefix STRING       Specify marshaller prefix
#   --output FILE         Write output into the specified file
#   --skip-source         Skip source location comments
#   --internal            Mark generated functions as internal
#   --valist-marshallers  Generate va_list marshallers
#   -v, --version         Print version information, and exit
#   --g-fatal-warnings    Make warnings fatal
#   --include-header [HEADER]
#                         Include the specified header in the body
#   --pragma-once         Use "pragma once" as the inclusion guard
#   -D CPP_DEFINES        Pre-processor define
#   -U CPP_UNDEFINES      Pre-processor undefine
#   --prototypes          Generate the marshallers prototype in the C code
#   --header              Generate C headers
#   --body                Generate C code
#   --stdinc              Include standard marshallers
#   --nostdinc            Use standard marshallers
#   --quiet               Only print warnings and errors
#   --verbose             Be verbose, and include debugging information
ok 3 __main__.TestGenmarshal.test_no_args
# tmpdir: /tmp/tmpy90pxpfj
# genmarshal: /usr/bin/glib-genmarshal
# Running: ['/usr/bin/glib-genmarshal']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output:
ok 4 __main__.TestGenmarshal.test_void_boolean
# tmpdir: /tmp/tmp08ylz1qp
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmp08ylz1qp/tmpw8hgebuu.list: VOID:BOOLEAN
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp08ylz1qp/tmpw8hgebuu.list', '--header', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# #include <glib-object.h>
# 
# G_BEGIN_DECLS
# 
# /* VOID:BOOLEAN (/tmp/tmp08ylz1qp/tmpw8hgebuu.list:1) */
# #define g_cclosure_user_marshal_VOID__BOOLEAN	g_cclosure_marshal_VOID__BOOLEAN
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp08ylz1qp/tmpw8hgebuu.list', '--body', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #include <glib-object.h>
# 
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
ok 5 __main__.TestGenmarshal.test_void_boolean_int64
# tmpdir: /tmp/tmp4xjr1bjd
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmp4xjr1bjd/tmpmg9c1qv0.list: VOID:BOOLEAN,INT64
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp4xjr1bjd/tmpmg9c1qv0.list', '--header', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# #include <glib-object.h>
# 
# G_BEGIN_DECLS
# 
# /* VOID:BOOLEAN,INT64 (/tmp/tmp4xjr1bjd/tmpmg9c1qv0.list:1) */
# extern
# void g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure     *closure,
#                                                   GValue       *return_value,
#                                                   guint         n_param_values,
#                                                   const GValue *param_values,
#                                                   gpointer      invocation_hint,
#                                                   gpointer      marshal_data);
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp4xjr1bjd/tmpmg9c1qv0.list', '--body', '--quiet']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #include <glib-object.h>
# 
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
# 
# /* VOID:BOOLEAN,INT64 (/tmp/tmp4xjr1bjd/tmpmg9c1qv0.list:1) */
# void
# g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure     *closure,
#                                              GValue       *return_value G_GNUC_UNUSED,
#                                              guint         n_param_values,
#                                              const GValue *param_values,
#                                              gpointer      invocation_hint G_GNUC_UNUSED,
#                                              gpointer      marshal_data)
# {
#   typedef void (*GMarshalFunc_VOID__BOOLEAN_INT64) (gpointer data1,
#                                                     gboolean arg1,
#                                                     gint64 arg2,
#                                                     gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__BOOLEAN_INT64 callback;
# 
#   g_return_if_fail (n_param_values == 3);
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = g_value_peek_pointer (param_values + 0);
#     }
#   else
#     {
#       data1 = g_value_peek_pointer (param_values + 0);
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__BOOLEAN_INT64) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             g_marshal_value_peek_boolean (param_values + 1),
#             g_marshal_value_peek_int64 (param_values + 2),
#             data2);
# }
ok 6 __main__.TestGenmarshal.test_void_param_nostdinc
# tmpdir: /tmp/tmpw1hz4kjx
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmpw1hz4kjx/tmpjkpgyakm.list: VOID:PARAM
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpw1hz4kjx/tmpjkpgyakm.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# G_BEGIN_DECLS
# 
# /* VOID:PARAM (/tmp/tmpw1hz4kjx/tmpjkpgyakm.list:1) */
# extern
# void g_cclosure_user_marshal_VOID__PARAM (GClosure     *closure,
#                                           GValue       *return_value,
#                                           guint         n_param_values,
#                                           const GValue *param_values,
#                                           gpointer      invocation_hint,
#                                           gpointer      marshal_data);
# extern
# void g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure,
#                                            GValue   *return_value,
#                                            gpointer  instance,
#                                            va_list   args,
#                                            gpointer  marshal_data,
#                                            int       n_params,
#                                            GType    *param_types);
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpw1hz4kjx/tmpjkpgyakm.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
# 
# /* VOID:PARAM (/tmp/tmpw1hz4kjx/tmpjkpgyakm.list:1) */
# void
# g_cclosure_user_marshal_VOID__PARAM (GClosure     *closure,
#                                      GValue       *return_value G_GNUC_UNUSED,
#                                      guint         n_param_values,
#                                      const GValue *param_values,
#                                      gpointer      invocation_hint G_GNUC_UNUSED,
#                                      gpointer      marshal_data)
# {
#   typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1,
#                                             gpointer arg1,
#                                             gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__PARAM callback;
# 
#   g_return_if_fail (n_param_values == 2);
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = g_value_peek_pointer (param_values + 0);
#     }
#   else
#     {
#       data1 = g_value_peek_pointer (param_values + 0);
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             g_marshal_value_peek_param (param_values + 1),
#             data2);
# }
# 
# void
# g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure,
#                                       GValue   *return_value G_GNUC_UNUSED,
#                                       gpointer  instance,
#                                       va_list   args,
#                                       gpointer  marshal_data,
#                                       int       n_params,
#                                       GType    *param_types)
# {
#   typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1,
#                                             gpointer arg1,
#                                             gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__PARAM callback;
#   gpointer arg0;
#   va_list args_copy;
# 
#   G_VA_COPY (args_copy, args);
#   arg0 = (gpointer) va_arg (args_copy, gpointer);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     arg0 = g_param_spec_ref (arg0);
#   va_end (args_copy);
# 
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = instance;
#     }
#   else
#     {
#       data1 = instance;
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             arg0,
#             data2);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     g_param_spec_unref (arg0);
# }
ok 7 __main__.TestGenmarshal.test_void_string_nostdinc
# tmpdir: /tmp/tmp7zsw8brj
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmp7zsw8brj/tmpvww20xov.list: VOID:STRING
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp7zsw8brj/tmpvww20xov.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# G_BEGIN_DECLS
# 
# /* VOID:STRING (/tmp/tmp7zsw8brj/tmpvww20xov.list:1) */
# extern
# void g_cclosure_user_marshal_VOID__STRING (GClosure     *closure,
#                                            GValue       *return_value,
#                                            guint         n_param_values,
#                                            const GValue *param_values,
#                                            gpointer      invocation_hint,
#                                            gpointer      marshal_data);
# extern
# void g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure,
#                                             GValue   *return_value,
#                                             gpointer  instance,
#                                             va_list   args,
#                                             gpointer  marshal_data,
#                                             int       n_params,
#                                             GType    *param_types);
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp7zsw8brj/tmpvww20xov.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
# 
# /* VOID:STRING (/tmp/tmp7zsw8brj/tmpvww20xov.list:1) */
# void
# g_cclosure_user_marshal_VOID__STRING (GClosure     *closure,
#                                       GValue       *return_value G_GNUC_UNUSED,
#                                       guint         n_param_values,
#                                       const GValue *param_values,
#                                       gpointer      invocation_hint G_GNUC_UNUSED,
#                                       gpointer      marshal_data)
# {
#   typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1,
#                                              gpointer arg1,
#                                              gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__STRING callback;
# 
#   g_return_if_fail (n_param_values == 2);
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = g_value_peek_pointer (param_values + 0);
#     }
#   else
#     {
#       data1 = g_value_peek_pointer (param_values + 0);
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             g_marshal_value_peek_string (param_values + 1),
#             data2);
# }
# 
# void
# g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure,
#                                        GValue   *return_value G_GNUC_UNUSED,
#                                        gpointer  instance,
#                                        va_list   args,
#                                        gpointer  marshal_data,
#                                        int       n_params,
#                                        GType    *param_types)
# {
#   typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1,
#                                              gpointer arg1,
#                                              gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__STRING callback;
#   gpointer arg0;
#   va_list args_copy;
# 
#   G_VA_COPY (args_copy, args);
#   arg0 = (gpointer) va_arg (args_copy, gpointer);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     arg0 = g_strdup (arg0);
#   va_end (args_copy);
# 
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = instance;
#     }
#   else
#     {
#       data1 = instance;
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             arg0,
#             data2);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     g_free (arg0);
# }
ok 8 __main__.TestGenmarshal.test_void_variant_nostdinc_valist_marshaller
# tmpdir: /tmp/tmp_uipye6o
# genmarshal: /usr/bin/glib-genmarshal
# /tmp/tmp_uipye6o/tmpeu4d3jhv.list: VOID:VARIANT
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp_uipye6o/tmpeu4d3jhv.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__
# 
# G_BEGIN_DECLS
# 
# /* VOID:VARIANT (/tmp/tmp_uipye6o/tmpeu4d3jhv.list:1) */
# extern
# void g_cclosure_user_marshal_VOID__VARIANT (GClosure     *closure,
#                                             GValue       *return_value,
#                                             guint         n_param_values,
#                                             const GValue *param_values,
#                                             gpointer      invocation_hint,
#                                             gpointer      marshal_data);
# extern
# void g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure,
#                                              GValue   *return_value,
#                                              gpointer  instance,
#                                              va_list   args,
#                                              gpointer  marshal_data,
#                                              int       n_params,
#                                              GType    *param_types);
# 
# 
# G_END_DECLS
# 
# #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */
# Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp_uipye6o/tmpeu4d3jhv.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# #ifdef G_ENABLE_DEBUG
# #define g_marshal_value_peek_boolean(v)  g_value_get_boolean (v)
# #define g_marshal_value_peek_char(v)     g_value_get_schar (v)
# #define g_marshal_value_peek_uchar(v)    g_value_get_uchar (v)
# #define g_marshal_value_peek_int(v)      g_value_get_int (v)
# #define g_marshal_value_peek_uint(v)     g_value_get_uint (v)
# #define g_marshal_value_peek_long(v)     g_value_get_long (v)
# #define g_marshal_value_peek_ulong(v)    g_value_get_ulong (v)
# #define g_marshal_value_peek_int64(v)    g_value_get_int64 (v)
# #define g_marshal_value_peek_uint64(v)   g_value_get_uint64 (v)
# #define g_marshal_value_peek_enum(v)     g_value_get_enum (v)
# #define g_marshal_value_peek_flags(v)    g_value_get_flags (v)
# #define g_marshal_value_peek_float(v)    g_value_get_float (v)
# #define g_marshal_value_peek_double(v)   g_value_get_double (v)
# #define g_marshal_value_peek_string(v)   (char*) g_value_get_string (v)
# #define g_marshal_value_peek_param(v)    g_value_get_param (v)
# #define g_marshal_value_peek_boxed(v)    g_value_get_boxed (v)
# #define g_marshal_value_peek_pointer(v)  g_value_get_pointer (v)
# #define g_marshal_value_peek_object(v)   g_value_get_object (v)
# #define g_marshal_value_peek_variant(v)  g_value_get_variant (v)
# #else /* !G_ENABLE_DEBUG */
# /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
#  *          Do not access GValues directly in your code. Instead, use the
#  *          g_value_get_*() functions
#  */
# #define g_marshal_value_peek_boolean(v)  (v)->data[0].v_int
# #define g_marshal_value_peek_char(v)     (v)->data[0].v_int
# #define g_marshal_value_peek_uchar(v)    (v)->data[0].v_uint
# #define g_marshal_value_peek_int(v)      (v)->data[0].v_int
# #define g_marshal_value_peek_uint(v)     (v)->data[0].v_uint
# #define g_marshal_value_peek_long(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_ulong(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_int64(v)    (v)->data[0].v_int64
# #define g_marshal_value_peek_uint64(v)   (v)->data[0].v_uint64
# #define g_marshal_value_peek_enum(v)     (v)->data[0].v_long
# #define g_marshal_value_peek_flags(v)    (v)->data[0].v_ulong
# #define g_marshal_value_peek_float(v)    (v)->data[0].v_float
# #define g_marshal_value_peek_double(v)   (v)->data[0].v_double
# #define g_marshal_value_peek_string(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_param(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_boxed(v)    (v)->data[0].v_pointer
# #define g_marshal_value_peek_pointer(v)  (v)->data[0].v_pointer
# #define g_marshal_value_peek_object(v)   (v)->data[0].v_pointer
# #define g_marshal_value_peek_variant(v)  (v)->data[0].v_pointer
# #endif /* !G_ENABLE_DEBUG */
# 
# /* VOID:VARIANT (/tmp/tmp_uipye6o/tmpeu4d3jhv.list:1) */
# void
# g_cclosure_user_marshal_VOID__VARIANT (GClosure     *closure,
#                                        GValue       *return_value G_GNUC_UNUSED,
#                                        guint         n_param_values,
#                                        const GValue *param_values,
#                                        gpointer      invocation_hint G_GNUC_UNUSED,
#                                        gpointer      marshal_data)
# {
#   typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1,
#                                               gpointer arg1,
#                                               gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__VARIANT callback;
# 
#   g_return_if_fail (n_param_values == 2);
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = g_value_peek_pointer (param_values + 0);
#     }
#   else
#     {
#       data1 = g_value_peek_pointer (param_values + 0);
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             g_marshal_value_peek_variant (param_values + 1),
#             data2);
# }
# 
# void
# g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure,
#                                         GValue   *return_value G_GNUC_UNUSED,
#                                         gpointer  instance,
#                                         va_list   args,
#                                         gpointer  marshal_data,
#                                         int       n_params,
#                                         GType    *param_types)
# {
#   typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1,
#                                               gpointer arg1,
#                                               gpointer data2);
#   GCClosure *cc = (GCClosure *) closure;
#   gpointer data1, data2;
#   GMarshalFunc_VOID__VARIANT callback;
#   gpointer arg0;
#   va_list args_copy;
# 
#   G_VA_COPY (args_copy, args);
#   arg0 = (gpointer) va_arg (args_copy, gpointer);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     arg0 = g_variant_ref_sink (arg0);
#   va_end (args_copy);
# 
# 
#   if (G_CCLOSURE_SWAP_DATA (closure))
#     {
#       data1 = closure->data;
#       data2 = instance;
#     }
#   else
#     {
#       data1 = instance;
#       data2 = closure->data;
#     }
#   callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback);
# 
#   callback (data1,
#             arg0,
#             data2);
#   if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL)
#     g_variant_unref (arg0);
# }
1..8
PASS: glib/genmarshal.py.test
Running test: glib/gdbus-test-codegen-old.test
# random seed: R02Sd63fad8676a54c2767e135dfeb6368f6
1..8
# Start of gdbus tests
# Start of codegen tests
ok 1 /gdbus/codegen/annotations
ok 2 /gdbus/codegen/interface_stability
ok 3 /gdbus/codegen/object-manager
ok 4 /gdbus/codegen/property-naming
ok 5 /gdbus/codegen/autocleanups
ok 6 /gdbus/codegen/deprecations
ok 7 /gdbus/codegen/standalone-interface-info
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726
ok 8 /gdbus/codegen/unix-fd-list
# End of codegen tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-test-codegen-old.test
Running test: glib/spawn-singlethread.test
# random seed: R02S720867f52a950a44a7eb66af739e30f3
1..7
# Start of gthread tests
ok 1 /gthread/spawn-single-sync
ok 2 /gthread/spawn-single-async
thread 1thread 1ok 3 /gthread/spawn-single-async-with-fds
ok 4 /gthread/spawn-script
ok 5 /gthread/spawn-posix-spawn
# Start of spawn tests
ok 6 /gthread/spawn/nonexistent
# FD map:
#  ? 6 ? 16
#  ? 7 ? 17
#  ? 8 ? 18
#  ? 9 ? 19
#  ? 10 ? 20
#  ? 11 ? 21
#  ? 12 ? 22
#  ? 13 ? 23
#  ? 14 ? 24
#  ? 3 ? 13
ok 7 /gthread/spawn/fd-assignment-clash
# End of spawn tests
# End of gthread tests
PASS: glib/spawn-singlethread.test
Running test: glib/unix.test
# random seed: R02S3275f828d3665d07cdc88ded339f2c85
1..11
# Start of glib-unix tests
ok 1 /glib-unix/pipe
ok 2 /glib-unix/error
ok 3 /glib-unix/nonblocking
ok 4 /glib-unix/sighup
ok 5 /glib-unix/sigterm
Executing: glib/unix.test
ok 6 /glib-unix/sighup_again
ok 7 /glib-unix/sighup_add_remove
ok 8 /glib-unix/sighup_nested
ok 9 /glib-unix/callback_after_signal
# Start of get-passwd-entry tests
# /glib-unix/get-passwd-entry/root summary: Tests that g_unix_get_passwd_entry() works for a known-existing username.
ok 10 /glib-unix/get-passwd-entry/root
# /glib-unix/get-passwd-entry/nonexistent summary: Tests that g_unix_get_passwd_entry() returns an error for a nonexistent username.
ok 11 /glib-unix/get-passwd-entry/nonexistent
# End of get-passwd-entry tests
# End of glib-unix tests
PASS: glib/unix.test
Running test: glib/slice-color.test
# random seed: R02Sb6ea5f9c6e2b4f55df904a6d96bfdeb4
1..1
# Start of slice tests
# Allocate and touch 682 blocks of 512 bytes (= 349184 bytes) 1000000 times with color increment
# Access-time = 1.105471s
ok 1 /slice/colors
# End of slice tests
PASS: glib/slice-color.test
Running test: glib/g-icon.test
# random seed: R02S80d481bb19a8f47bcd73e289d9ca2caf
1..6
# Start of icons tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /icons/to-string
ok 2 /icons/serialize
ok 3 /icons/themed
ok 4 /icons/emblemed
ok 5 /icons/file
ok 6 /icons/bytes
# End of icons tests
PASS: glib/g-icon.test
Running test: glib/converter-stream.test
# random seed: R02Sc53edbf176168a6b3337942fb90c858d
1..17
# Start of converter tests
ok 1 /converter/basics
# End of converter tests
# Start of converter-input-stream tests
ok 2 /converter-input-stream/expander
ok 3 /converter-input-stream/compressor
# Start of truncation tests
ok 4 /converter-input-stream/truncation/zlib
ok 5 /converter-input-stream/truncation/gzip
ok 6 /converter-input-stream/truncation/raw
# End of truncation tests
# Start of charset tests
ok 7 /converter-input-stream/charset/utf8->latin1
ok 8 /converter-input-stream/charset/latin1->utf8
ok 9 /converter-input-stream/charset/fallbacks
# End of charset tests
# End of converter-input-stream tests
# Start of converter-output-stream tests
# Start of roundtrip tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 10 /converter-output-stream/roundtrip/zlib-0
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 11 /converter-output-stream/roundtrip/zlib-9
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 12 /converter-output-stream/roundtrip/gzip-0
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 13 /converter-output-stream/roundtrip/gzip-9
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 14 /converter-output-stream/roundtrip/raw-0
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945
ok 15 /converter-output-stream/roundtrip/raw-9
# End of roundtrip tests
# End of converter-output-stream tests
# Start of converter-stream tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 16 /converter-stream/pollable
ok 17 /converter-stream/leftover
# End of converter-stream tests
PASS: glib/converter-stream.test
Running test: glib/io-channel.test
# random seed: R02S14013d08fe25e995c7cf71ab78e56345
1..2
# Start of io-channel tests
# Line one
# 
# Line two
# 
# Line three
# 
# /* Hello */
# 
# \x1234\x567890\x6666
# 
# read 62 bytes, wrote 62 bytes
ok 1 /io-channel/read-write
# Start of read-line tests
# /io-channel/read-line/embedded-nuls summary: Test that reading a line containing embedded nuls works when using non-standard line terminators.
ok 2 /io-channel/read-line/embedded-nuls
# End of read-line tests
# End of io-channel tests
PASS: glib/io-channel.test
Running test: glib/mapping-test.test
GLib-Message: 01:21:39.608: test_mapping: ok
GLib-Message: 01:21:39.610: test_private: ok
GLib-Message: 01:21:39.611: test_child_private: child spawned
GLib-Message: 01:21:39.611: test_child_private: received first child signal
GLib-Message: 01:21:39.611: test_child_private: received parent signal
GLib-Message: 01:21:39.614: test_child_private: received second child signal
GLib-Message: 01:21:39.614: test_child_private: ok
PASS: glib/mapping-test.test
Running test: glib/g-file.test
# random seed: R02S5446b73826e88a2b0a1929bb6e37cd3e
1..8
# Start of g-file tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /g-file/test_g_file_new_null
ok 2 /g-file/test_g_file_new_for_path
ok 3 /g-file/test_g_file_new_for_uri
ok 4 /g-file/test_g_file_dup
ok 5 /g-file/test_g_file_get_parse_name_utf8
file:///var/volatile/tmp/test-tmp-glib_g-file.test-4DKQW2
file:///var/volatile/tmp
file:///tmp
file:////UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88
file:///UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88
ok 6 /g-file/test_g_file_new_for_commandline_arg
/dir1 /dir1/dir2/dir3/
/dir1/ /dir1/dir2/dir3/
/dir1 /dir1/dir2/dir3
/dir1/ /dir1/dir2/dir3
/tmp/ /something/
/dir1/dir2 /dir1/
//dir1/new //dir1/new/dir2/dir3
/dir/UTF-8 p??li? ?lu?ou?k? k?? /dir/UTF-8 p??li? ?lu?ou?k? k??/dir2
file:///dir1 file:///dir1/dir2/dir3/
file:///dir1/ file:///dir1/dir2/dir3/
file:///dir1 file:///dir1/dir2/dir3
file:///dir1/ file:///dir1/dir2/dir3
file:///tmp/ file:///something/
file:///dir1/dir2 file:///dir1/
file:////dir1/new file:////dir1/new/dir2/dir3
file:///dir/UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 file:///dir/UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88/dir2
ok 7 /g-file/test_g_file_has_prefix
ok 8 /g-file/test_g_file_get_parent_child
# End of g-file tests
PASS: glib/g-file.test
Running test: glib/unicode.test
# random seed: R02Sbdabcd8ada20bb9d541f9a9a747161ef
1..38
# Start of unicode tests
ok 1 /unicode/alnum
ok 2 /unicode/alpha
ok 3 /unicode/break-type
ok 4 /unicode/canonical-decomposition
ok 5 /unicode/casefold
ok 6 /unicode/casemap_and_casefold
ok 7 /unicode/cases
ok 8 /unicode/character-type
ok 9 /unicode/cntrl
ok 10 /unicode/combining-class
ok 11 /unicode/compose
ok 12 /unicode/decompose
ok 13 /unicode/decompose-tail
ok 14 /unicode/defined
ok 15 /unicode/digit
ok 16 /unicode/digit-value
ok 17 /unicode/fully-decompose-canonical
ok 18 /unicode/fully-decompose-len
ok 19 /unicode/normalization
ok 20 /unicode/graph
ok 21 /unicode/iso15924
ok 22 /unicode/lower
ok 23 /unicode/mark
ok 24 /unicode/mirror
ok 25 /unicode/print
ok 26 /unicode/punctuation
ok 27 /unicode/script
ok 28 /unicode/space
ok 29 /unicode/strdown
ok 30 /unicode/strup
ok 31 /unicode/turkish-strupdown
ok 32 /unicode/title
ok 33 /unicode/upper
ok 34 /unicode/validate
ok 35 /unicode/wide
ok 36 /unicode/xdigit
ok 37 /unicode/xdigit-value
ok 38 /unicode/zero-width
# End of unicode tests
PASS: glib/unicode.test
Running test: glib/flags.test
# random seed: R02Sb82b4ef4aa1c5a5e16861b78ba82a49e
1..1
# Start of gobject tests
# Start of flags tests
ok 1 /gobject/flags/validate
# End of flags tests
# End of gobject tests
PASS: glib/flags.test
Running test: glib/properties.test
START: /usr/libexec/installed-tests/glib/properties
.b.e.c.f.d.f.b.c.e.d.f.b.d.c.e.f.b.d.e.c.f.b.e.d.c.b.f.e.d.c.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.dExecuting: glib/properties.test
.f.b.e.d.c.f.b.e.d.c.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.d.c.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.d.f.b.e.c.f.d.b.e.f.c.d.b.e.f.c.d.b.e.f.c.d.b.e.f.c.d.b.e.f.c.d.b.f.e.c.d.b.f.e.c.d.b.f.e.d.c.b
stopping
stopped
PASS: glib/properties.test
Running test: glib/qdata.test
# random seed: R02S8f646204f9bc9420919b590e10566869
1..2
# Start of qdata tests
ok 1 /qdata/threaded
ok 2 /qdata/dup
# End of qdata tests
PASS: glib/qdata.test
Running test: glib/timeloop-closure.test
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Elapsed user: 16
Elapsed system: 101
Elapsed total: 117
total / iteration: 0.0039
PASS: glib/timeloop-closure.test
Running test: glib/resolver-parsing.test
# random seed: R02S642c0da5c92c2d0bb61bdf4b066f3192
1..20
# Start of gresolver tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/invalid-header/.dirs/runtime
ok 1 /gresolver/invalid-header
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/unknown-record-type/.dirs/runtime
# GLib-GIO-DEBUG: Unrecognised DNS record type 20
ok 2 /gresolver/unknown-record-type
# Start of mx tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/valid/.dirs/runtime
ok 3 /gresolver/mx/valid
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/.dirs/runtime
ok 4 /gresolver/mx/invalid
# Start of invalid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short/.dirs/runtime
ok 5 /gresolver/mx/invalid/too-short
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/mx/invalid/too-short2/.dirs/runtime
ok 6 /gresolver/mx/invalid/too-short2
# End of invalid tests
# End of mx tests
# Start of ns tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/valid/.dirs/runtime
ok 7 /gresolver/ns/valid
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/ns/invalid/.dirs/runtime
ok 8 /gresolver/ns/invalid
# End of ns tests
# Start of soa tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/valid/.dirs/runtime
ok 9 /gresolver/soa/valid
# Start of invalid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/mname/.dirs/runtime
ok 10 /gresolver/soa/invalid/mname
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/rname/.dirs/runtime
ok 11 /gresolver/soa/invalid/rname
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/soa/invalid/too-short/.dirs/runtime
ok 12 /gresolver/soa/invalid/too-short
# End of invalid tests
# End of soa tests
# Start of srv tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/valid/.dirs/runtime
ok 13 /gresolver/srv/valid
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/.dirs/runtime
ok 14 /gresolver/srv/invalid
# Start of invalid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short/.dirs/runtime
ok 15 /gresolver/srv/invalid/too-short
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/srv/invalid/too-short2/.dirs/runtime
ok 16 /gresolver/srv/invalid/too-short2
# End of invalid tests
# End of srv tests
# Start of txt tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/.dirs/runtime
ok 17 /gresolver/txt/valid
# Start of valid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/valid/multiple-strings/.dirs/runtime
ok 18 /gresolver/txt/valid/multiple-strings
# End of valid tests
# Start of invalid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/empty/.dirs/runtime
ok 19 /gresolver/txt/invalid/empty
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/system-config1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/system-data1:/tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_AW4DW2/gresolver/txt/invalid/overflow/.dirs/runtime
ok 20 /gresolver/txt/invalid/overflow
# End of invalid tests
# End of txt tests
# End of gresolver tests
PASS: glib/resolver-parsing.test
Running test: glib/strfuncs.test
# random seed: R02Sd94db1a69fa9c060ccc5a8fc31b83aba
1..45
# Start of strfuncs tests
ok 1 /strfuncs/ascii-strcasecmp
ok 2 /strfuncs/ascii_strdown
ok 3 /strfuncs/ascii_strdup
ok 4 /strfuncs/ascii_strtod
ok 5 /strfuncs/bounds-check
ok 6 /strfuncs/has-prefix
ok 7 /strfuncs/has-suffix
ok 8 /strfuncs/memdup
ok 9 /strfuncs/memdup2
ok 10 /strfuncs/stpcpy
ok 11 /strfuncs/str_match_string
ok 12 /strfuncs/str_tokenize_and_fold
ok 13 /strfuncs/strcanon
ok 14 /strfuncs/strchomp
ok 15 /strfuncs/strchug
ok 16 /strfuncs/strcompress-strescape
ok 17 /strfuncs/strconcat
ok 18 /strfuncs/strdelimit
ok 19 /strfuncs/strdup
ok 20 /strfuncs/strdup-printf
ok 21 /strfuncs/strdupv
ok 22 /strfuncs/strerror
ok 23 /strfuncs/strip-context
ok 24 /strfuncs/strjoin
ok 25 /strfuncs/strjoinv
ok 26 /strfuncs/strlcat
ok 27 /strfuncs/strlcpy
ok 28 /strfuncs/strncasecmp
ok 29 /strfuncs/strndup
ok 30 /strfuncs/strnfill
ok 31 /strfuncs/strreverse
ok 32 /strfuncs/strsignal
ok 33 /strfuncs/strsplit
ok 34 /strfuncs/strsplit-set
ok 35 /strfuncs/strstr
ok 36 /strfuncs/strtod
ok 37 /strfuncs/strtoull-strtoll
ok 38 /strfuncs/strup
ok 39 /strfuncs/strv-contains
ok 40 /strfuncs/strv-equal
ok 41 /strfuncs/strv-length
ok 42 /strfuncs/test-is-to-digit
ok 43 /strfuncs/transliteration
# Start of ascii-string-to-num tests
ok 44 /strfuncs/ascii-string-to-num/pathological
ok 45 /strfuncs/ascii-string-to-num/usual
# End of ascii-string-to-num tests
# End of strfuncs tests
PASS: glib/strfuncs.test
Running test: glib/collate.test
# random seed: R02S74c33962c3fdcf331c929508bde075b7
1..9
# Start of unicode tests
# Start of collate tests
ok 1 /unicode/collate/0
ok 2 /unicode/collate/1
ok 3 /unicode/collate/2
# End of collate tests
# Start of collate-key tests
ok 4 /unicode/collate-key/0
ok 5 /unicode/collate-key/1
ok 6 /unicode/collate-key/2
# End of collate-key tests
# Start of collate-filename tests
ok 7 /unicode/collate-filename/0
ok 8 /unicode/collate-filename/1
ok 9 /unicode/collate-filename/2
# End of collate-filename tests
# End of unicode tests
PASS: glib/collate.test
Running test: glib/gdbus-threading.test
# random seed: R02S50830a1778b15b63a18aa41b6d70d4cb
1..3
# Start of gdbus tests
ok 1 /gdbus/delivery-in-thread
# GLib-GIO-DEBUG: refcount of 0x558a4364b060 is not right (2 rather than 1) in test_method_calls_in_thread(), sleeping
ok 2 /gdbus/method-calls-in-thread
ok 3 /gdbus/threaded-singleton
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-threading.test
Running test: glib/include.test
# random seed: R02Sd6d45b3bfc4b3b2130558542c7074f05
1..1
# Start of include tests
ok 1 /include/rwlock
# End of include tests
PASS: glib/include.test
Running test: glib/cxx.test
PASS: glib/cxx.test
Running test: glib/relation.test
# random seed: R02S2a16bb9386241ec7606ea5c6d433b6dd
1..1
# Start of glib tests
ok 1 /glib/relation
# End of glib tests
PASS: glib/relation.test
Running test: glib/autoptr-gio.test
# random seed: R02Sa6badf9b883b0438890dededdab09a79
1..1
# Start of autoptr tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /autoptr/autoptr
# End of autoptr tests
PASS: glib/autoptr-gio.test
Running test: glib/tls-database.test
# random seed: R02Sb8f1bc121541643dd21f4a7fd76e0a92
1..1
# Start of tls-backend tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend?
ok 1 /tls-backend/set-default-database
# End of tls-backend tests
PASS: glib/tls-database.test
Running test: glib/memory-output-stream.test
# random seed: R02S8c618a4c378ac8f29b3cb32147883cb5
1..10
# Start of memory-output-stream tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540423
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=720080
ok 1 /memory-output-stream/truncate
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540459
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540461
ok 2 /memory-output-stream/get-data-size
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=605733
ok 3 /memory-output-stream/properties
ok 4 /memory-output-stream/write-bytes
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2471
ok 5 /memory-output-stream/write-null
ok 6 /memory-output-stream/writev
ok 7 /memory-output-stream/writev_nonblocking
ok 8 /memory-output-stream/steal_as_bytes
# Start of seek tests
ok 9 /memory-output-stream/seek/fixed
ok 10 /memory-output-stream/seek/resizable
# End of seek tests
# End of memory-output-stream tests
PASS: glib/memory-output-stream.test
Running test: glib/object.test
# random seed: R02S88556aecf69798054f539480eafc0b47
1..2
# Start of object tests
# Start of constructor tests
ok 1 /object/constructor/singleton
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=661576
ok 2 /object/constructor/infanticide
# End of constructor tests
# End of object tests
PASS: glib/object.test
Running test: glib/gsubprocess.test
# random seed: R02S2907e2100d2b7cd5333fec315cf101be
1..82
# Start of gsubprocess tests
ok 1 /gsubprocess/noop
ok 2 /gsubprocess/noop-all-to-null
ok 3 /gsubprocess/noop-no-wait
ok 4 /gsubprocess/noop-stdin-inherit
ok 5 /gsubprocess/search-path
ok 6 /gsubprocess/search-path-from-envp
Executing: glib/gsubprocess.test
ok 7 /gsubprocess/signal
ok 8 /gsubprocess/exit1
ok 9 /gsubprocess/echo1
ok 10 /gsubprocess/echo-merged
ok 11 /gsubprocess/cat-utf8
ok 12 /gsubprocess/cat-eof
Executing: glib/gsubprocess.test
ok 13 /gsubprocess/multi1
ok 14 /gsubprocess/communicate
ok 15 /gsubprocess/terminate
ok 16 /gsubprocess/env
ok 17 /gsubprocess/cwd
ok 18 /gsubprocess/launcher-close
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 19 /gsubprocess/stdout-file
ok 20 /gsubprocess/stdout-fd
ok 21 /gsubprocess/child-setup
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
ok 22 /gsubprocess/launcher-environment
# Start of exit1 tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456
ok 23 /gsubprocess/exit1/cancel
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456
ok 24 /gsubprocess/exit1/cancel_in_cb
# End of exit1 tests
# Start of communicate tests
ok 25 /gsubprocess/communicate/cancelled
ok 26 /gsubprocess/communicate/async
ok 27 /gsubprocess/communicate/utf8
# hello world
ok 28 /gsubprocess/communicate/no-pipes
ok 29 /gsubprocess/communicate/separate-stderr
ok 30 /gsubprocess/communicate/stdout-only
# hello world
ok 31 /gsubprocess/communicate/stderr-only
ok 32 /gsubprocess/communicate/stdout-silence
ok 33 /gsubprocess/communicate/nothing
# Start of async tests
ok 34 /gsubprocess/communicate/async/cancelled
# hello world
ok 35 /gsubprocess/communicate/async/no-pipes
ok 36 /gsubprocess/communicate/async/separate-stderr
ok 37 /gsubprocess/communicate/async/stdout-only
# hello world
ok 38 /gsubprocess/communicate/async/stderr-only
ok 39 /gsubprocess/communicate/async/stdout-silence
# Start of cancelled tests
ok 40 /gsubprocess/communicate/async/cancelled/no-pipes
ok 41 /gsubprocess/communicate/async/cancelled/separate-stderr
ok 42 /gsubprocess/communicate/async/cancelled/stdout-only
ok 43 /gsubprocess/communicate/async/cancelled/stderr-only
ok 44 /gsubprocess/communicate/async/cancelled/stdout-silence
# End of cancelled tests
# End of async tests
# Start of utf8 tests
ok 45 /gsubprocess/communicate/utf8/cancelled
ok 46 /gsubprocess/communicate/utf8/async
# hello world
ok 47 /gsubprocess/communicate/utf8/no-pipes
ok 48 /gsubprocess/communicate/utf8/separate-stderr
ok 49 /gsubprocess/communicate/utf8/stdout-only
# hello world
ok 50 /gsubprocess/communicate/utf8/stderr-only
ok 51 /gsubprocess/communicate/utf8/stdout-silence
ok 52 /gsubprocess/communicate/utf8/invalid
# Start of async tests
ok 53 /gsubprocess/communicate/utf8/async/cancelled
# hello world
ok 54 /gsubprocess/communicate/utf8/async/no-pipes
ok 55 /gsubprocess/communicate/utf8/async/separate-stderr
ok 56 /gsubprocess/communicate/utf8/async/stdout-only
# hello world
ok 57 /gsubprocess/communicate/utf8/async/stderr-only
ok 58 /gsubprocess/communicate/utf8/async/stdout-silence
ok 59 /gsubprocess/communicate/utf8/async/invalid
# Start of cancelled tests
ok 60 /gsubprocess/communicate/utf8/async/cancelled/no-pipes
ok 61 /gsubprocess/communicate/utf8/async/cancelled/separate-stderr
ok 62 /gsubprocess/communicate/utf8/async/cancelled/stdout-only
ok 63 /gsubprocess/communicate/utf8/async/cancelled/stderr-only
ok 64 /gsubprocess/communicate/utf8/async/cancelled/stdout-silence
# End of cancelled tests
# End of async tests
# Start of cancelled tests
ok 65 /gsubprocess/communicate/utf8/cancelled/no-pipes
ok 66 /gsubprocess/communicate/utf8/cancelled/separate-stderr
ok 67 /gsubprocess/communicate/utf8/cancelled/stdout-only
ok 68 /gsubprocess/communicate/utf8/cancelled/stderr-only
ok 69 /gsubprocess/communicate/utf8/cancelled/stdout-silence
# End of cancelled tests
# End of utf8 tests
# Start of cancelled tests
ok 70 /gsubprocess/communicate/cancelled/no-pipes
ok 71 /gsubprocess/communicate/cancelled/separate-stderr
ok 72 /gsubprocess/communicate/cancelled/stdout-only
ok 73 /gsubprocess/communicate/cancelled/stderr-only
ok 74 /gsubprocess/communicate/cancelled/stdout-silence
# End of cancelled tests
# End of communicate tests
# Start of env tests
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
ok 75 /gsubprocess/env/inherit
# End of env tests
# Start of pass-fd tests
ok 76 /gsubprocess/pass-fd/basic
ok 77 /gsubprocess/pass-fd/empty-child-setup
ok 78 /gsubprocess/pass-fd/inherit-fds
# End of pass-fd tests
# Start of fd-conflation tests
ok 79 /gsubprocess/fd-conflation/basic
ok 80 /gsubprocess/fd-conflation/empty-child-setup
ok 81 /gsubprocess/fd-conflation/inherit-fds
ok 82 /gsubprocess/fd-conflation/child-err-report-fd
# End of fd-conflation tests
# End of gsubprocess tests
PASS: glib/gsubprocess.test
Running test: glib/slist.test
# random seed: R02S3d7dca67d28f105063697413ae6e537f
1..14
# Start of slist tests
ok 1 /slist/sort
ok 2 /slist/sort-with-data
ok 3 /slist/insert-sorted
ok 4 /slist/insert-sorted-with-data
ok 5 /slist/reverse
ok 6 /slist/nth
ok 7 /slist/remove
ok 8 /slist/remove-all
ok 9 /slist/insert
ok 10 /slist/position
ok 11 /slist/concat
ok 12 /slist/copy
# Start of sort tests
ok 13 /slist/sort/stable
# End of sort tests
# Start of copy tests
ok 14 /slist/copy/deep
# End of copy tests
# End of slist tests
PASS: glib/slist.test
Running test: glib/gdbus-export.test
# random seed: R02Saa11e79b37785bdcd1aa4169d26f360d
1..6
# Start of gdbus tests
ok 1 /gdbus/object-registration
ok 2 /gdbus/object-registration-with-closures
ok 3 /gdbus/registered-interfaces
ok 4 /gdbus/async-properties
# Start of threaded-unregistration tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400
# /gdbus/threaded-unregistration/object summary: Test that object/subtree unregistration from one thread doesn?t cause problems when racing with method callbacks in another thread for that object or subtree
Executing: glib/gdbus-export.test
ok 5 /gdbus/threaded-unregistration/object # SKIP Failed to reproduce race (0 iterations with unregistration first, 1000 with call first); skipping test
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400
# /gdbus/threaded-unregistration/subtree summary: Test that object/subtree unregistration from one thread doesn?t cause problems when racing with method callbacks in another thread for that object or subtree
ok 6 /gdbus/threaded-unregistration/subtree # SKIP Failed to reproduce race (0 iterations with unregistration first, 1000 with call first); skipping test
# End of threaded-unregistration tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-export.test
Running test: glib/bytes.test
# random seed: R02S1ae27e5c53d4d64efcde53418cb5a236
1..21
# Start of bytes tests
ok 1 /bytes/new
ok 2 /bytes/new-take
ok 3 /bytes/new-static
ok 4 /bytes/new-with-free-func
ok 5 /bytes/new-from-bytes
ok 6 /bytes/new-from-bytes-slice
ok 7 /bytes/new-from-bytes-shared-ref
ok 8 /bytes/hash
ok 9 /bytes/equal
ok 10 /bytes/compare
ok 11 /bytes/null
ok 12 /bytes/get-region
# /bytes/unref-null summary: Test that calling g_bytes_unref() on NULL is a no-op
ok 13 /bytes/unref-null
# Start of to-data tests
ok 14 /bytes/to-data/transferred
ok 15 /bytes/to-data/two-refs
ok 16 /bytes/to-data/non-malloc
ok 17 /bytes/to-data/different-free-func
# End of to-data tests
# Start of to-array tests
ok 18 /bytes/to-array/transferred
ok 19 /bytes/to-array/two-refs
ok 20 /bytes/to-array/non-malloc
# Start of transferred tests
# g_bytes_unref_to_array() can only take GBytes up to G_MAXUINT in length; test that longer ones are rejected
ok 21 /bytes/to-array/transferred/oversize
# End of transferred tests
# End of to-array tests
# End of bytes tests
PASS: glib/bytes.test
Running test: glib/task.test
# random seed: R02S3549b7431d33123e0e4f6020a6b5bbdd
1..29
# Start of gtask tests
ok 1 /gtask/basic
ok 2 /gtask/error
ok 3 /gtask/return-from-same-iteration
ok 4 /gtask/return-from-toplevel
ok 5 /gtask/return-from-anon-thread
ok 6 /gtask/return-from-wrong-thread
ok 7 /gtask/no-callback
ok 8 /gtask/report-error
ok 9 /gtask/priority
ok 10 /gtask/name
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1608
ok 11 /gtask/asynchronous-cancellation
ok 12 /gtask/check-cancellable
ok 13 /gtask/return-if-cancelled
ok 14 /gtask/run-in-thread
ok 15 /gtask/run-in-thread-sync
ok 16 /gtask/run-in-thread-priority
ok 17 /gtask/run-in-thread-nested
ok 18 /gtask/run-in-thread-overflow
ok 19 /gtask/return-on-cancel
ok 20 /gtask/return-on-cancel-sync
ok 21 /gtask/return-on-cancel-atomic
ok 22 /gtask/return-pointer
ok 23 /gtask/return-value
ok 24 /gtask/object-keepalive
ok 25 /gtask/legacy-error
# Start of return tests
ok 26 /gtask/return/error-first
ok 27 /gtask/return/value-first
# Start of in-idle tests
ok 28 /gtask/return/in-idle/error-first
ok 29 /gtask/return/in-idle/value-first
# End of in-idle tests
# End of return tests
# End of gtask tests
PASS: glib/task.test
Running test: glib/async-splice-output-stream.test
# random seed: R02S1689df510f9ec6c14be023a18b8e9a94
1..5
# Start of async-splice tests
ok 1 /async-splice/copy-chunks
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 2 /async-splice/copy-chunks-threaded-input
ok 3 /async-splice/copy-chunks-threaded-output
ok 4 /async-splice/copy-chunks-threaded
ok 5 /async-splice/cancelled
# End of async-splice tests
PASS: glib/async-splice-output-stream.test
Running test: glib/date.test
# random seed: R02S70aa8cc36107469cc3a4b8f302d30a07
1..121
# Start of date tests
ok 1 /date/basic
ok 2 /date/empty
ok 3 /date/dmy
ok 4 /date/julian
ok 5 /date/compare
ok 6 /date/dates
ok 7 /date/strftime
ok 8 /date/two-digit-years
ok 9 /date/parse
ok 10 /date/parse_locale_change
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=793550
ok 11 /date/month_substring
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=749206
ok 12 /date/month_names # SKIP libc doesn’t support all alternative month names
ok 13 /date/clamp
ok 14 /date/order
ok 15 /date/copy
# Vector 0: 0000-00-00, invalid
# Vector 1: 0001-01-01, valid
# Vector 2: 0000-01-01, invalid
# Vector 3: 2000-02-30, invalid
# Vector 4: 2000-02-29, valid
# Vector 5: 2001-02-29, invalid
# Vector 6: 65535-01-01, valid
ok 16 /date/valid-dmy
# Start of parse tests
# Test 0
# Test 1
ok 17 /date/parse/invalid
# End of parse tests
# Start of year tests
ok 18 /date/year/1
ok 19 /date/year/2
ok 20 /date/year/3
ok 21 /date/year/4
ok 22 /date/year/5
ok 23 /date/year/6
ok 24 /date/year/7
ok 25 /date/year/8
ok 26 /date/year/9
ok 27 /date/year/10
ok 28 /date/year/11
ok 29 /date/year/12
ok 30 /date/year/13
ok 31 /date/year/14
ok 32 /date/year/98
ok 33 /date/year/99
ok 34 /date/year/100
ok 35 /date/year/101
ok 36 /date/year/102
ok 37 /date/year/103
ok 38 /date/year/397
ok 39 /date/year/398
ok 40 /date/year/399
ok 41 /date/year/400
ok 42 /date/year/401
ok 43 /date/year/402
ok 44 /date/year/403
ok 45 /date/year/404
ok 46 /date/year/405
ok 47 /date/year/406
ok 48 /date/year/1598
ok 49 /date/year/1599
ok 50 /date/year/1600
ok 51 /date/year/1601
ok 52 /date/year/1602
ok 53 /date/year/1650
ok 54 /date/year/1651
ok 55 /date/year/1897
ok 56 /date/year/1898
ok 57 /date/year/1899
ok 58 /date/year/1900
ok 59 /date/year/1901
ok 60 /date/year/1902
ok 61 /date/year/1903
ok 62 /date/year/1961
ok 63 /date/year/1962
ok 64 /date/year/1963
ok 65 /date/year/1964
ok 66 /date/year/1965
ok 67 /date/year/1967
ok 68 /date/year/1968
ok 69 /date/year/1969
ok 70 /date/year/1970
ok 71 /date/year/1971
ok 72 /date/year/1972
ok 73 /date/year/1973
ok 74 /date/year/1974
ok 75 /date/year/1975
ok 76 /date/year/1976
ok 77 /date/year/1977
ok 78 /date/year/1978
ok 79 /date/year/1979
ok 80 /date/year/1980
ok 81 /date/year/1981
ok 82 /date/year/1982
ok 83 /date/year/1983
ok 84 /date/year/1984
ok 85 /date/year/1985
ok 86 /date/year/1986
ok 87 /date/year/1987
ok 88 /date/year/1988
ok 89 /date/year/1989
ok 90 /date/year/1990
ok 91 /date/year/1991
ok 92 /date/year/1992
ok 93 /date/year/1993
ok 94 /date/year/1994
ok 95 /date/year/1995
ok 96 /date/year/1996
ok 97 /date/year/1997
ok 98 /date/year/1998
ok 99 /date/year/1999
ok 100 /date/year/2000
ok 101 /date/year/2001
ok 102 /date/year/2002
ok 103 /date/year/2003
ok 104 /date/year/2004
ok 105 /date/year/2005
ok 106 /date/year/2006
ok 107 /date/year/2007
ok 108 /date/year/2008
ok 109 /date/year/2009
ok 110 /date/year/2010
ok 111 /date/year/2011
ok 112 /date/year/2012
ok 113 /date/year/3000
ok 114 /date/year/3001
ok 115 /date/year/3002
ok 116 /date/year/3998
ok 117 /date/year/3999
ok 118 /date/year/4000
ok 119 /date/year/4001
ok 120 /date/year/4002
ok 121 /date/year/4003
# End of year tests
# End of date tests
PASS: glib/date.test
Running test: glib/gdbus-close-pending.test
# random seed: R02S20a1839f0a5098177a5ce4fd1b670a04
1..2
# Start of gdbus tests
ok 1 /gdbus/close-pending
ok 2 /gdbus/unref-pending
# End of gdbus tests
PASS: glib/gdbus-close-pending.test
Running test: glib/deftype.test
PASS: glib/deftype.test
Running test: glib/rec-mutex.test
# random seed: R02S070f03e7f9a1fd631087c38ba227cb74
1..4
# Start of thread tests
ok 1 /thread/rec-mutex1
ok 2 /thread/rec-mutex2
ok 3 /thread/rec-mutex3
ok 4 /thread/rec-mutex4
# End of thread tests
PASS: glib/rec-mutex.test
Running test: glib/gdbus-connection-slow.test
# random seed: R02S2481bfc94b50a320db6ce304b9df94a8
1..2
# Start of gdbus tests
# Start of connection tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 1 /gdbus/connection/flush
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 2 /gdbus/connection/large_message
# End of connection tests
# End of gdbus tests
PASS: glib/gdbus-connection-slow.test
Running test: glib/type.test
# random seed: R02Sda9ebcf3fd64cc615a1ef1813308dec4
1..4
# Start of type tests
ok 1 /type/registration-serial
ok 2 /type/interface-prerequisite
ok 3 /type/interface-check
ok 4 /type/next-base
# End of type tests
PASS: glib/type.test
Running test: glib/tls-bindings.test
# random seed: R02S0ce61e0c3c08a943cd6010ca6003cfc5
1..2
# Start of tls-connection tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend?
ok 1 /tls-connection/get-tls-channel-binding
ok 2 /tls-connection/get-dtls-channel-binding
# End of tls-connection tests
PASS: glib/tls-bindings.test
Running test: glib/base64.test
# random seed: R02S2406e16b3ecb81f418a1c3770043b0a1
1..28
# Start of base64 tests
ok 1 /base64/encode
ok 2 /base64/decode
ok 3 /base64/decode-inplace
ok 4 /base64/encode-decode
# Start of full tests
ok 5 /base64/full/1
ok 6 /base64/full/2
ok 7 /base64/full/3
ok 8 /base64/full/4
# End of full tests
# Start of encode tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698
ok 9 /base64/encode/empty
# Start of incremental tests
# Start of small-block tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066
ok 10 /base64/encode/incremental/small-block/1
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066
ok 11 /base64/encode/incremental/small-block/2
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066
ok 12 /base64/encode/incremental/small-block/3
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066
ok 13 /base64/encode/incremental/small-block/4
# End of small-block tests
# End of incremental tests
# End of encode tests
# Start of incremental tests
# Start of nobreak tests
ok 14 /base64/incremental/nobreak/1
ok 15 /base64/incremental/nobreak/2
ok 16 /base64/incremental/nobreak/3
ok 17 /base64/incremental/nobreak/4-a
ok 18 /base64/incremental/nobreak/4-b
ok 19 /base64/incremental/nobreak/4-c
# End of nobreak tests
# Start of break tests
ok 20 /base64/incremental/break/1
ok 21 /base64/incremental/break/2
ok 22 /base64/incremental/break/3
# End of break tests
# Start of smallblock tests
ok 23 /base64/incremental/smallblock/1
ok 24 /base64/incremental/smallblock/2
ok 25 /base64/incremental/smallblock/3
ok 26 /base64/incremental/smallblock/4
# End of smallblock tests
# End of incremental tests
# Start of decode tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698
ok 27 /base64/decode/empty
# End of decode tests
# Start of encode-decode tests
# Vector 0: 
# Vector 1: f
# Vector 2: fo
# Vector 3: foo
# Vector 4: foob
# Vector 5: fooba
# Vector 6: foobar
ok 28 /base64/encode-decode/rfc4648
# End of encode-decode tests
# End of base64 tests
PASS: glib/base64.test
Running test: glib/thread.test
# random seed: R02S5bf2453a75b16b08e83730e45028cfb8
1..6
# Start of thread tests
ok 1 /thread/thread1
ok 2 /thread/thread2
ok 3 /thread/thread3
ok 4 /thread/thread4
ok 5 /thread/thread5
ok 6 /thread/thread6
# End of thread tests
PASS: glib/thread.test
Running test: glib/network-address.test
# random seed: R02S61a418d069c8a9647b94c85b6a0d7162
1..69
# Start of network-address tests
ok 1 /network-address/basic
ok 2 /network-address/scope-id
ok 3 /network-address/uri-scope-id
ok 4 /network-address/to-string
# Start of parse-host tests
ok 5 /network-address/parse-host/0
ok 6 /network-address/parse-host/1
ok 7 /network-address/parse-host/2
ok 8 /network-address/parse-host/3
ok 9 /network-address/parse-host/4
ok 10 /network-address/parse-host/5
ok 11 /network-address/parse-host/6
ok 12 /network-address/parse-host/7
ok 13 /network-address/parse-host/8
ok 14 /network-address/parse-host/9
ok 15 /network-address/parse-host/10
# End of parse-host tests
# Start of parse-uri tests
ok 16 /network-address/parse-uri/0
ok 17 /network-address/parse-uri/1
ok 18 /network-address/parse-uri/2
ok 19 /network-address/parse-uri/3
ok 20 /network-address/parse-uri/4
ok 21 /network-address/parse-uri/5
ok 22 /network-address/parse-uri/6
ok 23 /network-address/parse-uri/7
ok 24 /network-address/parse-uri/8
ok 25 /network-address/parse-uri/9
# End of parse-uri tests
# Start of resolve-address tests
# Input: 192.168.1.2
ok 26 /network-address/resolve-address/0
# Input: fe80::42
ok 27 /network-address/resolve-address/1
# Input: 192.168.1.2:80
ok 28 /network-address/resolve-address/2
# Input: [fe80::42]
ok 29 /network-address/resolve-address/3
# Input: [fe80::42]:80
ok 30 /network-address/resolve-address/4
# Input: 192.168.258
ok 31 /network-address/resolve-address/5
# Input: 192.11010306
ok 32 /network-address/resolve-address/6
# Input: 3232235778
ok 33 /network-address/resolve-address/7
# Input: 0300.0250.0001.0001
ok 34 /network-address/resolve-address/8
# Input: 0xC0.0xA8.0x01.0x02
ok 35 /network-address/resolve-address/9
# Input: 0xc0.0xa8.0x01.0x02
ok 36 /network-address/resolve-address/10
# Input: 0xc0a80102
ok 37 /network-address/resolve-address/11
# End of resolve-address tests
# Start of loopback tests
ok 38 /network-address/loopback/basic
ok 39 /network-address/loopback/sync
ok 40 /network-address/loopback/async
# End of loopback tests
# Start of localhost tests
ok 41 /network-address/localhost/async
ok 42 /network-address/localhost/sync
# End of localhost tests
# Start of happy-eyeballs tests
ok 43 /network-address/happy-eyeballs/basic
ok 44 /network-address/happy-eyeballs/parallel
Executing: glib/network-address.test
ok 45 /network-address/happy-eyeballs/slow-ipv4
ok 46 /network-address/happy-eyeballs/slow-ipv6
ok 47 /network-address/happy-eyeballs/very-slow-ipv6
ok 48 /network-address/happy-eyeballs/slow-connection-and-ipv4
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
ok 49 /network-address/happy-eyeballs/ipv6-error-ipv4-first
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
ok 50 /network-address/happy-eyeballs/ipv6-error-ipv6-first
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/865
# /network-address/happy-eyeballs/ipv6-error-ipv4-very-slow summary: Ensure that we successfully return IPv4 results even when they come significantly later than an IPv6 failure.
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
ok 51 /network-address/happy-eyeballs/ipv6-error-ipv4-very-slow
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
ok 52 /network-address/happy-eyeballs/ipv4-error-ipv6-first
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
ok 53 /network-address/happy-eyeballs/ipv4-error-ipv4-first
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
ok 54 /network-address/happy-eyeballs/both-error
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
ok 55 /network-address/happy-eyeballs/both-error-delays-1
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
# GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken
ok 56 /network-address/happy-eyeballs/both-error-delays-2
# GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken
ok 57 /network-address/happy-eyeballs/both-error-delays-3
# End of happy-eyeballs tests
# End of network-address tests
# Start of gresolver tests
# Start of resolve-address tests
# Input: 192.168.1.2
ok 58 /gresolver/resolve-address/0
# Input: fe80::42
ok 59 /gresolver/resolve-address/1
# Input: 192.168.1.2:80
# Error: Error resolving ?192.168.1.2:80?: Name or service not known
ok 60 /gresolver/resolve-address/2
# Input: [fe80::42]
# Error: Error resolving ?[fe80::42]?: Name or service not known
ok 61 /gresolver/resolve-address/3
# Input: [fe80::42]:80
# Error: Error resolving ?[fe80::42]:80?: Name or service not known
ok 62 /gresolver/resolve-address/4
# Input: 192.168.258
# Error: Error resolving ?192.168.258?: Name or service not known
ok 63 /gresolver/resolve-address/5
# Input: 192.11010306
# Error: Error resolving ?192.11010306?: Name or service not known
ok 64 /gresolver/resolve-address/6
# Input: 3232235778
# Error: Error resolving ?3232235778?: Name or service not known
ok 65 /gresolver/resolve-address/7
# Input: 0300.0250.0001.0001
# Error: Error resolving ?0300.0250.0001.0001?: Name or service not known
ok 66 /gresolver/resolve-address/8
# Input: 0xC0.0xA8.0x01.0x02
# Error: Error resolving ?0xC0.0xA8.0x01.0x02?: Name or service not known
ok 67 /gresolver/resolve-address/9
# Input: 0xc0.0xa8.0x01.0x02
# Error: Error resolving ?0xc0.0xa8.0x01.0x02?: Name or service not known
ok 68 /gresolver/resolve-address/10
# Input: 0xc0a80102
# Error: Error resolving ?0xc0a80102?: Name or service not known
ok 69 /gresolver/resolve-address/11
# End of resolve-address tests
# End of gresolver tests
PASS: glib/network-address.test
Running test: glib/param.test
# random seed: R02Scbb3eb562832ca2c5c53808f81e81f66
1..17
# Start of param tests
ok 1 /param/value
ok 2 /param/strings
ok 3 /param/qdata
ok 4 /param/validate
ok 5 /param/convert
ok 6 /param/default
ok 7 /param/is-valid-name
# Start of invalid-name tests
# /param/invalid-name/colon summary: Test that properties cannot be created with invalid names
ok 8 /param/invalid-name/colon
# /param/invalid-name/first-char summary: Test that properties cannot be created with invalid names
ok 9 /param/invalid-name/first-char
# /param/invalid-name/empty summary: Test that properties cannot be created with invalid names
ok 10 /param/invalid-name/empty
# End of invalid-name tests
# Start of implement tests
# Start of subprocess tests
# End of subprocess tests
# End of implement tests
# End of param tests
# Start of value tests
ok 11 /value/transform
# End of value tests
# Start of paramspec tests
ok 12 /paramspec/char
ok 13 /paramspec/string
ok 14 /paramspec/override
ok 15 /paramspec/gtype
ok 16 /paramspec/variant
# Start of variant tests
ok 17 /paramspec/variant/cmp
# End of variant tests
# End of paramspec tests
PASS: glib/param.test
Running test: glib/string.test
# random seed: R02S97de02c7c923ad56e291cba28350e2b1
1..20
# Start of string tests
ok 1 /string/test-string-chunks
ok 2 /string/test-string-chunk-insert
ok 3 /string/test-string-new
ok 4 /string/test-string-printf
ok 5 /string/test-string-assign
ok 6 /string/test-string-append-c
ok 7 /string/test-string-append
ok 8 /string/test-string-append-vprintf
ok 9 /string/test-string-prepend-c
ok 10 /string/test-string-prepend
ok 11 /string/test-string-insert
ok 12 /string/test-string-insert-unichar
ok 13 /string/test-string-equal
ok 14 /string/test-string-truncate
ok 15 /string/test-string-overwrite
ok 16 /string/test-string-nul-handling
ok 17 /string/test-string-up-down
ok 18 /string/test-string-set-size
ok 19 /string/test-string-to-bytes
# 0: Replacing "bar" with "baz" (limit 0) in "foo bar foo baz foo bar foobarbaz"
# -> 3 replacements, "foo baz foo baz foo baz foobazbaz"
# 1: Replacing "baz" with "bar" (limit 3) in "foo baz foo baz foo baz foobazbaz"
# -> 3 replacements, "foo bar foo bar foo bar foobazbaz"
# 2: Replacing "foobar" with "bar" (limit 1) in "foo bar foo bar foo bar foobazbaz"
# -> 0 replacements, "foo bar foo bar foo bar foobazbaz"
# 3: Replacing "a" with "abcdefghijkl" (limit 0) in "aaaaaaaa"
# -> 8 replacements, "abcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijkl"
# 4: Replacing "$LIB" with "lib32" (limit 0) in "/usr/$LIB/libMangoHud.so"
# -> 1 replacements, "/usr/lib32/libMangoHud.so"
# 5: Replacing "o" with "" (limit 0) in "food for foals"
# -> 4 replacements, "fd fr fals"
# 6: Replacing "a" with "aaa" (limit 0) in "aaa"
# -> 3 replacements, "aaaaaaaaa"
# 7: Replacing "a" with "" (limit 0) in "aaa"
# -> 3 replacements, ""
# 8: Replacing "aa" with "bb" (limit 0) in "aaa"
# -> 1 replacements, "bba"
# 9: Replacing "" with "bar" (limit 0) in "foo"
# -> 4 replacements, "barfbarobarobar"
# 10: Replacing "" with "x" (limit 0) in ""
# -> 1 replacements, "x"
# 11: Replacing "" with "" (limit 0) in ""
# -> 1 replacements, ""
ok 20 /string/test-string-replace
# End of string tests
PASS: glib/string.test
Running test: glib/642026-ec.test
# random seed: R02S91673f87f435a0601c1578fb213d610c
1..1
# Start of glib tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026
ok 1 /glib/642026
# End of glib tests
PASS: glib/642026-ec.test
Running test: glib/thumbnail-verification.test
# random seed: R02S9fe00783aae17703cd67bae484dad52a
1..1
# Start of png-thumbs tests
ok 1 /png-thumbs/validity
# End of png-thumbs tests
PASS: glib/thumbnail-verification.test
Running test: glib/unicode-encoding.test
# random seed: R02S891b2c76e67922354223bea84d4755b4
PASS: glib/unicode-encoding.test
Running test: glib/sort.test
# random seed: R02Sec48fe0637f6734ee04705bee09f81f8
1..4
# Start of sort tests
ok 1 /sort/basic
ok 2 /sort/zero-elements
ok 3 /sort/stable
ok 4 /sort/big
# End of sort tests
PASS: glib/sort.test
Running test: glib/testing.test
# random seed: R02Sb0c36d8676acb9847056e7ee7805410d
1..1
# Start of assert tests
ok 1 /assert/finalize_object
# Start of finalize_object tests
# Start of subprocess tests
# End of subprocess tests
# End of finalize_object tests
# End of assert tests
PASS: glib/testing.test
Running test: glib/socket-service.test
# random seed: R02S2369663fbdedc30062c2e06b4071e8aa
1..4
# Start of socket-service tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
ok 1 /socket-service/start-stop
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 2 /socket-service/read_write_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 3 /socket-service/read_writev_async
# Start of threaded tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=712570
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 4 /socket-service/threaded/712570
# End of threaded tests
# End of socket-service tests
PASS: glib/socket-service.test
Running test: glib/sleepy-stream.test
# random seed: R02S65323b18bb8423e615ef157864fab907
1..2
# Start of filter-stream tests
ok 1 /filter-stream/input
ok 2 /filter-stream/async
# End of filter-stream tests
PASS: glib/sleepy-stream.test
Running test: glib/power-profile-monitor-portal.test
TAP version 13
ok 1 __main__.TestPowerProfileMonitorPortal.test_power_profile_power_saver_enabled_portal # SKIP Cannot import dbus
1..1
PASS: glib/power-profile-monitor-portal.test
Running test: glib/rwlock.test
# random seed: R02S64d96933ca5c089ed8f59dcb15b0180b
1..8
# Start of thread tests
ok 1 /thread/rwlock1
ok 2 /thread/rwlock2
ok 3 /thread/rwlock3
ok 4 /thread/rwlock4
ok 5 /thread/rwlock5
ok 6 /thread/rwlock6
ok 7 /thread/rwlock7
ok 8 /thread/rwlock8
# End of thread tests
PASS: glib/rwlock.test
Running test: glib/closure.test
# random seed: R02S01488377ce0fa4b873f222387973a602
1..6
# Start of closure tests
ok 1 /closure/idle
ok 2 /closure/timeout
ok 3 /closure/iochannel
ok 4 /closure/child
ok 5 /closure/fd
ok 6 /closure/signal
# End of closure tests
PASS: glib/closure.test
Running test: glib/vfs.test
# random seed: R02Seaf35871a3bb36a1036f0a885f3b7728
1..2
# Start of gvfs tests
ok 1 /gvfs/local
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 2 /gvfs/register-scheme
# End of gvfs tests
PASS: glib/vfs.test
Running test: glib/codegen.py.test
TAP version 13
ok 1 __main__.TestCodegen.test_call_flags_and_timeout_method_args
# tmpdir: /tmp/tmpl9cj4e73
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpl9cj4e73/tmpuuoxmk43.xml: 
#             <node>
#               <interface name="org.project.UsefulInterface">
#                 <method name="UsefulMethod"/>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpl9cj4e73/tmpuuoxmk43.xml', '--output', '/dev/stdout', '--header']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for org.project.UsefulInterface */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE))
# #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface))
# 
# struct _OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface;
# 
# struct _OrgProjectUsefulInterfaceIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_useful_method) (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# };
# 
# GType org_project_useful_interface_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *org_project_useful_interface_interface_info (void);
# guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void org_project_useful_interface_complete_useful_method (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void org_project_useful_interface_call_useful_method (
#     OrgProjectUsefulInterface *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean org_project_useful_interface_call_useful_method_finish (
#     OrgProjectUsefulInterface *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean org_project_useful_interface_call_useful_method_sync (
#     OrgProjectUsefulInterface *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# 
# typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy;
# typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass;
# typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate;
# 
# struct _OrgProjectUsefulInterfaceProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   OrgProjectUsefulInterfaceProxyPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref)
# #endif
# 
# void org_project_useful_interface_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void org_project_useful_interface_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# 
# typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton;
# typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass;
# typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate;
# 
# struct _OrgProjectUsefulInterfaceSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   OrgProjectUsefulInterfaceSkeletonPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref)
# #endif
# 
# OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# /tmp/tmpl9cj4e73/tmpfhs7jh3s.xml: 
#             <node>
#               <interface name="org.project.UsefulInterface">
#                 <method name="UsefulMethod"/>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpl9cj4e73/tmpfhs7jh3s.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '2.32']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for org.project.UsefulInterface */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE))
# #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface))
# 
# struct _OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface;
# 
# struct _OrgProjectUsefulInterfaceIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_useful_method) (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# };
# 
# GType org_project_useful_interface_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *org_project_useful_interface_interface_info (void);
# guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void org_project_useful_interface_complete_useful_method (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void org_project_useful_interface_call_useful_method (
#     OrgProjectUsefulInterface *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean org_project_useful_interface_call_useful_method_finish (
#     OrgProjectUsefulInterface *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean org_project_useful_interface_call_useful_method_sync (
#     OrgProjectUsefulInterface *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# 
# typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy;
# typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass;
# typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate;
# 
# struct _OrgProjectUsefulInterfaceProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   OrgProjectUsefulInterfaceProxyPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref)
# #endif
# 
# void org_project_useful_interface_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void org_project_useful_interface_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# 
# typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton;
# typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass;
# typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate;
# 
# struct _OrgProjectUsefulInterfaceSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   OrgProjectUsefulInterfaceSkeletonPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref)
# #endif
# 
# OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# /tmp/tmpl9cj4e73/tmp6ahhakan.xml: 
#             <node>
#               <interface name="org.project.UsefulInterface">
#                 <method name="UsefulMethod"/>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpl9cj4e73/tmp6ahhakan.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '2.64']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for org.project.UsefulInterface */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE))
# #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface))
# 
# struct _OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface;
# typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface;
# 
# struct _OrgProjectUsefulInterfaceIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_useful_method) (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# };
# 
# GType org_project_useful_interface_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *org_project_useful_interface_interface_info (void);
# guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void org_project_useful_interface_complete_useful_method (
#     OrgProjectUsefulInterface *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void org_project_useful_interface_call_useful_method (
#     OrgProjectUsefulInterface *proxy,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean org_project_useful_interface_call_useful_method_finish (
#     OrgProjectUsefulInterface *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean org_project_useful_interface_call_useful_method_sync (
#     OrgProjectUsefulInterface *proxy,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY))
# 
# typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy;
# typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass;
# typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate;
# 
# struct _OrgProjectUsefulInterfaceProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   OrgProjectUsefulInterfaceProxyPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref)
# #endif
# 
# void org_project_useful_interface_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void org_project_useful_interface_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ())
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON))
# 
# typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton;
# typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass;
# typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate;
# 
# struct _OrgProjectUsefulInterfaceSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   OrgProjectUsefulInterfaceSkeletonPrivate *priv;
# };
# 
# struct _OrgProjectUsefulInterfaceSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref)
# #endif
# 
# OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 2 __main__.TestCodegen.test_empty_interface_body
# tmpdir: /tmp/tmpn_uzo0on
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpn_uzo0on/tmp1ateksbr.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpn_uzo0on/tmp1ateksbr.xml', '--output', '/dev/stdout', '--body']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifdef HAVE_CONFIG_H
# #  include "config.h"
# #endif
# 
# #include "stdout.h"
# 
# #include <string.h>
# #ifdef G_OS_UNIX
# #  include <gio/gunixfdlist.h>
# #endif
# 
# typedef struct
# {
#   GDBusArgInfo parent_struct;
#   gboolean use_gvariant;
# } _ExtendedGDBusArgInfo;
# 
# typedef struct
# {
#   GDBusMethodInfo parent_struct;
#   const gchar *signal_name;
#   gboolean pass_fdlist;
# } _ExtendedGDBusMethodInfo;
# 
# typedef struct
# {
#   GDBusSignalInfo parent_struct;
#   const gchar *signal_name;
# } _ExtendedGDBusSignalInfo;
# 
# typedef struct
# {
#   GDBusPropertyInfo parent_struct;
#   const gchar *hyphen_name;
#   guint use_gvariant : 1;
#   guint emits_changed_signal : 1;
# } _ExtendedGDBusPropertyInfo;
# 
# typedef struct
# {
#   GDBusInterfaceInfo parent_struct;
#   const gchar *hyphen_name;
# } _ExtendedGDBusInterfaceInfo;
# 
# typedef struct
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   guint prop_id;
#   GValue orig_value; /* the value before the change */
# } ChangedProperty;
# 
# static void
# _changed_property_free (ChangedProperty *data)
# {
#   g_value_unset (&data->orig_value);
#   g_free (data);
# }
# 
# static gboolean
# _g_strv_equal0 (gchar **a, gchar **b)
# {
#   gboolean ret = FALSE;
#   guint n;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   if (g_strv_length (a) != g_strv_length (b))
#     goto out;
#   for (n = 0; a[n] != NULL; n++)
#     if (g_strcmp0 (a[n], b[n]) != 0)
#       goto out;
#   ret = TRUE;
# out:
#   return ret;
# }
# 
# static gboolean
# _g_variant_equal0 (GVariant *a, GVariant *b)
# {
#   gboolean ret = FALSE;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   ret = g_variant_equal (a, b);
# out:
#   return ret;
# }
# 
# G_GNUC_UNUSED static gboolean
# _g_value_equal (const GValue *a, const GValue *b)
# {
#   gboolean ret = FALSE;
#   g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
#   switch (G_VALUE_TYPE (a))
#     {
#       case G_TYPE_BOOLEAN:
#         ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
#         break;
#       case G_TYPE_UCHAR:
#         ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
#         break;
#       case G_TYPE_INT:
#         ret = (g_value_get_int (a) == g_value_get_int (b));
#         break;
#       case G_TYPE_UINT:
#         ret = (g_value_get_uint (a) == g_value_get_uint (b));
#         break;
#       case G_TYPE_INT64:
#         ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
#         break;
#       case G_TYPE_UINT64:
#         ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
#         break;
#       case G_TYPE_DOUBLE:
#         {
#           /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
#           gdouble da = g_value_get_double (a);
#           gdouble db = g_value_get_double (b);
#           ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
#         }
#         break;
#       case G_TYPE_STRING:
#         ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
#         break;
#       case G_TYPE_VARIANT:
#         ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
#         break;
#       default:
#         if (G_VALUE_TYPE (a) == G_TYPE_STRV)
#           ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
#         else
#           g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
#         break;
#     }
#   return ret;
# }
ok 3 __main__.TestCodegen.test_empty_interface_header
# tmpdir: /tmp/tmpom9o6ha7
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpom9o6ha7/tmphnzthiq5.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpom9o6ha7/tmphnzthiq5.xml', '--output', '/dev/stdout', '--header']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 4 __main__.TestCodegen.test_generate_docbook
# tmpdir: /tmp/tmp42ehvl4n
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmp42ehvl4n/tmpq634r92e.xml: 
#         <node>
#           <interface name="org.project.Bar.Frobnicator">
#             <method name="RandomMethod"/>
#           </interface>
#         </node>
#         
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp42ehvl4n/tmpq634r92e.xml', '--generate-docbook', 'test']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output:
ok 5 __main__.TestCodegen.test_generate_rst
# tmpdir: /tmp/tmpcua49h5u
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpcua49h5u/tmpxj5u61ba.xml: 
#         <node>
#           <interface name="org.project.Bar.Frobnicator">
#             <method name="RandomMethod"/>
#           </interface>
#         </node>
#         
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcua49h5u/tmpxj5u61ba.xml', '--generate-rst', 'test']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output:
ok 6 __main__.TestCodegen.test_generate_valid_docbook
# tmpdir: /tmp/tmpj4zx_vgs
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpj4zx_vgs/tmps0q00kw2.xml: 
#         <node>
#           <interface name="org.project.Bar.Frobnicator">
#             <!-- Resize:
#                  @size: New partition size in bytes, 0 for maximal size.
#                  @options: Options.
#                  @since 2.7.2
# 
#                  Resizes the partition.
# 
#                  The partition will not change its position but might be slightly bigger
#                  than requested due to sector counts and alignment (e.g. 1MiB).
#                  If the requested size can't be allocated it results in an error.
#                  The maximal size can automatically be set by using 0 as size.
#             -->
#             <method name="Resize">
#               <arg name="size" direction="in" type="t"/>
#               <arg name="options" direction="in" type="a{sv}"/>
#             </method>
#           </interface>
#         </node>
#         
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpj4zx_vgs/tmps0q00kw2.xml', '--generate-docbook', 'test']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output:
ok 7 __main__.TestCodegen.test_glib_max_allowed_less_than_min_required
# tmpdir: /tmp/tmpcnmetxt9
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpcnmetxt9/tmpdylcmkv1.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcnmetxt9/tmpdylcmkv1.xml', '--output', '/dev/stdout', '--body', '--glib-max-allowed', '2.62', '--glib-min-required', '2.64']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
ok 8 __main__.TestCodegen.test_glib_max_allowed_major_only
# tmpdir: /tmp/tmp_wuovaft
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmp_wuovaft/tmpwoupo5kj.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp_wuovaft/tmpwoupo5kj.xml', '--output', '/dev/stdout', '--header', '--glib-max-allowed', '3']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 9 __main__.TestCodegen.test_glib_max_allowed_too_low
# tmpdir: /tmp/tmph765ke_e
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmph765ke_e/tmpelfq6xro.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmph765ke_e/tmpelfq6xro.xml', '--output', '/dev/stdout', '--body', '--glib-max-allowed', '2.6']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
ok 10 __main__.TestCodegen.test_glib_max_allowed_unstable
# tmpdir: /tmp/tmpo2ju90jp
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpo2ju90jp/tmpaflpbtz5.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpo2ju90jp/tmpaflpbtz5.xml', '--output', '/dev/stdout', '--header', '--glib-max-allowed', '2.63', '--glib-min-required', '2.64']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 11 __main__.TestCodegen.test_glib_max_allowed_with_micro
# tmpdir: /tmp/tmpoi3931fu
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpoi3931fu/tmprp090nuq.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpoi3931fu/tmprp090nuq.xml', '--output', '/dev/stdout', '--header', '--glib-max-allowed', '2.46.2']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 12 __main__.TestCodegen.test_glib_min_required_invalid
# tmpdir: /tmp/tmp3ai1d2_x
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmp3ai1d2_x/tmpcon47gql.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp3ai1d2_x/tmpcon47gql.xml', '--output', '/dev/stdout', '--body', '--glib-min-required', 'hello mum']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
ok 13 __main__.TestCodegen.test_glib_min_required_major_only
# tmpdir: /tmp/tmptimfuwyx
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmptimfuwyx/tmph7qdkshc.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmptimfuwyx/tmph7qdkshc.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '3', '--glib-max-allowed', '3.2']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 14 __main__.TestCodegen.test_glib_min_required_too_low
# tmpdir: /tmp/tmpr8gfsmft
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpr8gfsmft/tmpcxranuni.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpr8gfsmft/tmpcxranuni.xml', '--output', '/dev/stdout', '--body', '--glib-min-required', '2.6']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
ok 15 __main__.TestCodegen.test_glib_min_required_with_micro
# tmpdir: /tmp/tmpepbf7iss
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmpepbf7iss/tmpipyvxr4p.xml: 
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepbf7iss/tmpipyvxr4p.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '2.46.2']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
ok 16 __main__.TestCodegen.test_help
# tmpdir: /tmp/tmpsur928po
# codegen: /usr/bin/gdbus-codegen
# Running: ['/usr/bin/gdbus-codegen', '--help']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: usage: gdbus-codegen [-h] [--interface-prefix PREFIX]
#                      [--c-namespace NAMESPACE] [--c-generate-object-manager]
#                      [--c-generate-autocleanup {none,objects,all}]
#                      [--generate-docbook OUTFILES] [--generate-rst OUTFILES]
#                      [--pragma-once]
#                      [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE]
#                      [--glib-min-required VERSION]
#                      [--glib-max-allowed VERSION]
#                      [--symbol-decorator SYMBOL_DECORATOR]
#                      [--symbol-decorator-header SYMBOL_DECORATOR_HEADER]
#                      [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE]
#                      [--generate-c-code OUTFILES | --header | --body | --interface-info-header | --interface-info-body]
#                      [--output FILE | --output-directory OUTDIR]
#                      FILE [FILE ...]
# 
# D-Bus code and documentation generator
# 
# positional arguments:
#   FILE                  D-Bus introspection XML file
# 
# options:
#   -h, --help            show this help message and exit
#   --interface-prefix PREFIX
#                         String to strip from D-Bus interface names for code
#                         and docs
#   --c-namespace NAMESPACE
#                         The namespace to use for generated C code
#   --c-generate-object-manager
#                         Generate a GDBusObjectManagerClient subclass when
#                         generating C code
#   --c-generate-autocleanup {none,objects,all}
#                         Generate autocleanup support
#   --generate-docbook OUTFILES
#                         Generate Docbook in OUTFILES-org.Project.IFace.xml
#   --generate-rst OUTFILES
#                         Generate reStructuredText in OUTFILES-
#                         org.Project.IFace.rst
#   --pragma-once         Use "pragma once" as the inclusion guard
#   --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE
#                         Add annotation (may be used several times)
#   --glib-min-required VERSION
#                         Minimum version of GLib to be supported by the
#                         outputted code (default: 2.30)
#   --glib-max-allowed VERSION
#                         Maximum version of GLib to be used by the outputted
#                         code (default: current GLib version)
#   --symbol-decorator SYMBOL_DECORATOR
#                         Macro used to decorate a symbol in the outputted
#                         header, possibly to export symbols
#   --symbol-decorator-header SYMBOL_DECORATOR_HEADER
#                         Additional header required for decorator specified by
#                         --symbol-decorator
#   --symbol-decorator-define SYMBOL_DECORATOR_DEFINE
#                         Additional define required for decorator specified by
#                         --symbol-decorator
#   --generate-c-code OUTFILES
#                         Generate C code in OUTFILES.[ch]
#   --header              Generate C headers
#   --body                Generate C code
#   --interface-info-header
#                         Generate GDBusInterfaceInfo C header
#   --interface-info-body
#                         Generate GDBusInterfaceInfo C code
#   --output FILE         Write output into the specified file
#   --output-directory OUTDIR
#                         Location to output generated files
ok 17 __main__.TestCodegen.test_no_args
# tmpdir: /tmp/tmp481y0bwp
# codegen: /usr/bin/gdbus-codegen
# Running: ['/usr/bin/gdbus-codegen']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
ok 18 __main__.TestCodegen.test_reproducible
# tmpdir: /tmp/tmp7tn8izar
# codegen: /usr/bin/gdbus-codegen
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7tn8izar/tmp86mug2fm1.xml', '/tmp/tmp7tn8izar/tmpta9avszg2.xml', '--output', '/dev/stdout', '--header']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for com.acme.Coyote */
# 
# #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ())
# #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote))
# #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE))
# #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface))
# 
# struct _ComAcmeCoyote;
# typedef struct _ComAcmeCoyote ComAcmeCoyote;
# typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface;
# 
# struct _ComAcmeCoyoteIface
# {
#   GTypeInterface parent_iface;
# 
# 
# 
#   gboolean (*handle_attack) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   gboolean (*handle_run) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   gboolean (*handle_sleep) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   const gchar * (*get_mood) (ComAcmeCoyote *object);
# 
#   void (*surprised) (
#     ComAcmeCoyote *object);
# 
# };
# 
# GType com_acme_coyote_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *com_acme_coyote_interface_info (void);
# guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void com_acme_coyote_complete_run (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# void com_acme_coyote_complete_sleep (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# void com_acme_coyote_complete_attack (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus signal emissions functions: */
# void com_acme_coyote_emit_surprised (
#     ComAcmeCoyote *object);
# 
# 
# 
# /* D-Bus method calls: */
# void com_acme_coyote_call_run (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_run_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_run_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# void com_acme_coyote_call_sleep (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_sleep_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_sleep_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# void com_acme_coyote_call_attack (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_attack_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_attack_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* D-Bus property accessors: */
# const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object);
# gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object);
# void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value);
# 
# 
# /* ---- */
# 
# #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ())
# #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy))
# #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass))
# #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass))
# #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY))
# #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY))
# 
# typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy;
# typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass;
# typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate;
# 
# struct _ComAcmeCoyoteProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   ComAcmeCoyoteProxyPrivate *priv;
# };
# 
# struct _ComAcmeCoyoteProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref)
# #endif
# 
# void com_acme_coyote_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# ComAcmeCoyote *com_acme_coyote_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# ComAcmeCoyote *com_acme_coyote_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void com_acme_coyote_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ())
# #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton))
# #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass))
# #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass))
# #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON))
# #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON))
# 
# typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton;
# typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass;
# typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate;
# 
# struct _ComAcmeCoyoteSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   ComAcmeCoyoteSkeletonPrivate *priv;
# };
# 
# struct _ComAcmeCoyoteSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref)
# #endif
# 
# ComAcmeCoyote *com_acme_coyote_skeleton_new (void);
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for org.project.Bar.Frobnicator */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR))
# #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface))
# 
# struct _OrgProjectBarFrobnicator;
# typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator;
# typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface;
# 
# struct _OrgProjectBarFrobnicatorIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_random_method) (
#     OrgProjectBarFrobnicator *object,
#     GDBusMethodInvocation *invocation);
# 
# };
# 
# GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void);
# guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void org_project_bar_frobnicator_complete_random_method (
#     OrgProjectBarFrobnicator *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void org_project_bar_frobnicator_call_random_method (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean org_project_bar_frobnicator_call_random_method_finish (
#     OrgProjectBarFrobnicator *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean org_project_bar_frobnicator_call_random_method_sync (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy))
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass))
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY))
# 
# typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy;
# typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass;
# typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate;
# 
# struct _OrgProjectBarFrobnicatorProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   OrgProjectBarFrobnicatorProxyPrivate *priv;
# };
# 
# struct _OrgProjectBarFrobnicatorProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref)
# #endif
# 
# void org_project_bar_frobnicator_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void org_project_bar_frobnicator_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton))
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass))
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON))
# 
# typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton;
# typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass;
# typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate;
# 
# struct _OrgProjectBarFrobnicatorSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   OrgProjectBarFrobnicatorSkeletonPrivate *priv;
# };
# 
# struct _OrgProjectBarFrobnicatorSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref)
# #endif
# 
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7tn8izar/tmpta9avszg2.xml', '/tmp/tmp7tn8izar/tmp86mug2fm1.xml', '--output', '/dev/stdout', '--header']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for com.acme.Coyote */
# 
# #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ())
# #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote))
# #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE))
# #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface))
# 
# struct _ComAcmeCoyote;
# typedef struct _ComAcmeCoyote ComAcmeCoyote;
# typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface;
# 
# struct _ComAcmeCoyoteIface
# {
#   GTypeInterface parent_iface;
# 
# 
# 
#   gboolean (*handle_attack) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   gboolean (*handle_run) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   gboolean (*handle_sleep) (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
#   const gchar * (*get_mood) (ComAcmeCoyote *object);
# 
#   void (*surprised) (
#     ComAcmeCoyote *object);
# 
# };
# 
# GType com_acme_coyote_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *com_acme_coyote_interface_info (void);
# guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void com_acme_coyote_complete_run (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# void com_acme_coyote_complete_sleep (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# void com_acme_coyote_complete_attack (
#     ComAcmeCoyote *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus signal emissions functions: */
# void com_acme_coyote_emit_surprised (
#     ComAcmeCoyote *object);
# 
# 
# 
# /* D-Bus method calls: */
# void com_acme_coyote_call_run (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_run_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_run_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# void com_acme_coyote_call_sleep (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_sleep_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_sleep_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# void com_acme_coyote_call_attack (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean com_acme_coyote_call_attack_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean com_acme_coyote_call_attack_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* D-Bus property accessors: */
# const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object);
# gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object);
# void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value);
# 
# 
# /* ---- */
# 
# #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ())
# #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy))
# #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass))
# #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass))
# #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY))
# #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY))
# 
# typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy;
# typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass;
# typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate;
# 
# struct _ComAcmeCoyoteProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   ComAcmeCoyoteProxyPrivate *priv;
# };
# 
# struct _ComAcmeCoyoteProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref)
# #endif
# 
# void com_acme_coyote_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# ComAcmeCoyote *com_acme_coyote_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# ComAcmeCoyote *com_acme_coyote_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void com_acme_coyote_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ())
# #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton))
# #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass))
# #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass))
# #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON))
# #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON))
# 
# typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton;
# typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass;
# typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate;
# 
# struct _ComAcmeCoyoteSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   ComAcmeCoyoteSkeletonPrivate *priv;
# };
# 
# struct _ComAcmeCoyoteSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref)
# #endif
# 
# ComAcmeCoyote *com_acme_coyote_skeleton_new (void);
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for org.project.Bar.Frobnicator */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR))
# #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface))
# 
# struct _OrgProjectBarFrobnicator;
# typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator;
# typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface;
# 
# struct _OrgProjectBarFrobnicatorIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_random_method) (
#     OrgProjectBarFrobnicator *object,
#     GDBusMethodInvocation *invocation);
# 
# };
# 
# GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void);
# guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void org_project_bar_frobnicator_complete_random_method (
#     OrgProjectBarFrobnicator *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void org_project_bar_frobnicator_call_random_method (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean org_project_bar_frobnicator_call_random_method_finish (
#     OrgProjectBarFrobnicator *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean org_project_bar_frobnicator_call_random_method_sync (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy))
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass))
# #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY))
# 
# typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy;
# typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass;
# typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate;
# 
# struct _OrgProjectBarFrobnicatorProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   OrgProjectBarFrobnicatorProxyPrivate *priv;
# };
# 
# struct _OrgProjectBarFrobnicatorProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref)
# #endif
# 
# void org_project_bar_frobnicator_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void org_project_bar_frobnicator_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ())
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton))
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass))
# #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON))
# #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON))
# 
# typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton;
# typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass;
# typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate;
# 
# struct _OrgProjectBarFrobnicatorSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   OrgProjectBarFrobnicatorSkeletonPrivate *priv;
# };
# 
# struct _OrgProjectBarFrobnicatorSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref)
# #endif
# 
# OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7tn8izar/tmp86mug2fm1.xml', '/tmp/tmp7tn8izar/tmpta9avszg2.xml', '--output', '/dev/stdout', '--body']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifdef HAVE_CONFIG_H
# #  include "config.h"
# #endif
# 
# #include "stdout.h"
# 
# #include <string.h>
# #ifdef G_OS_UNIX
# #  include <gio/gunixfdlist.h>
# #endif
# 
# typedef struct
# {
#   GDBusArgInfo parent_struct;
#   gboolean use_gvariant;
# } _ExtendedGDBusArgInfo;
# 
# typedef struct
# {
#   GDBusMethodInfo parent_struct;
#   const gchar *signal_name;
#   gboolean pass_fdlist;
# } _ExtendedGDBusMethodInfo;
# 
# typedef struct
# {
#   GDBusSignalInfo parent_struct;
#   const gchar *signal_name;
# } _ExtendedGDBusSignalInfo;
# 
# typedef struct
# {
#   GDBusPropertyInfo parent_struct;
#   const gchar *hyphen_name;
#   guint use_gvariant : 1;
#   guint emits_changed_signal : 1;
# } _ExtendedGDBusPropertyInfo;
# 
# typedef struct
# {
#   GDBusInterfaceInfo parent_struct;
#   const gchar *hyphen_name;
# } _ExtendedGDBusInterfaceInfo;
# 
# typedef struct
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   guint prop_id;
#   GValue orig_value; /* the value before the change */
# } ChangedProperty;
# 
# static void
# _changed_property_free (ChangedProperty *data)
# {
#   g_value_unset (&data->orig_value);
#   g_free (data);
# }
# 
# static gboolean
# _g_strv_equal0 (gchar **a, gchar **b)
# {
#   gboolean ret = FALSE;
#   guint n;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   if (g_strv_length (a) != g_strv_length (b))
#     goto out;
#   for (n = 0; a[n] != NULL; n++)
#     if (g_strcmp0 (a[n], b[n]) != 0)
#       goto out;
#   ret = TRUE;
# out:
#   return ret;
# }
# 
# static gboolean
# _g_variant_equal0 (GVariant *a, GVariant *b)
# {
#   gboolean ret = FALSE;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   ret = g_variant_equal (a, b);
# out:
#   return ret;
# }
# 
# G_GNUC_UNUSED static gboolean
# _g_value_equal (const GValue *a, const GValue *b)
# {
#   gboolean ret = FALSE;
#   g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
#   switch (G_VALUE_TYPE (a))
#     {
#       case G_TYPE_BOOLEAN:
#         ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
#         break;
#       case G_TYPE_UCHAR:
#         ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
#         break;
#       case G_TYPE_INT:
#         ret = (g_value_get_int (a) == g_value_get_int (b));
#         break;
#       case G_TYPE_UINT:
#         ret = (g_value_get_uint (a) == g_value_get_uint (b));
#         break;
#       case G_TYPE_INT64:
#         ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
#         break;
#       case G_TYPE_UINT64:
#         ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
#         break;
#       case G_TYPE_DOUBLE:
#         {
#           /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
#           gdouble da = g_value_get_double (a);
#           gdouble db = g_value_get_double (b);
#           ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
#         }
#         break;
#       case G_TYPE_STRING:
#         ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
#         break;
#       case G_TYPE_VARIANT:
#         ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
#         break;
#       default:
#         if (G_VALUE_TYPE (a) == G_TYPE_STRV)
#           ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
#         else
#           g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
#         break;
#     }
#   return ret;
# }
# 
# /* ------------------------------------------------------------------------
#  * Code for interface com.acme.Coyote
#  * ------------------------------------------------------------------------
#  */
# 
# /**
#  * SECTION:ComAcmeCoyote
#  * @title: ComAcmeCoyote
#  * @short_description: Generated C code for the com.acme.Coyote D-Bus interface
#  *
#  * This section contains code for working with the <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link> D-Bus interface in C.
#  */
# 
# /* ---- Introspection data for com.acme.Coyote ---- */
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run =
# {
#   {
#     -1,
#     (gchar *) "Run",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-run",
#   FALSE
# };
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep =
# {
#   {
#     -1,
#     (gchar *) "Sleep",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-sleep",
#   FALSE
# };
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack =
# {
#   {
#     -1,
#     (gchar *) "Attack",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-attack",
#   FALSE
# };
# 
# static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] =
# {
#   &_com_acme_coyote_method_info_run.parent_struct,
#   &_com_acme_coyote_method_info_sleep.parent_struct,
#   &_com_acme_coyote_method_info_attack.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised =
# {
#   {
#     -1,
#     (gchar *) "Surprised",
#     NULL,
#     NULL
#   },
#   "surprised"
# };
# 
# static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] =
# {
#   &_com_acme_coyote_signal_info_surprised.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood =
# {
#   {
#     -1,
#     (gchar *) "Mood",
#     (gchar *) "s",
#     G_DBUS_PROPERTY_INFO_FLAGS_READABLE,
#     NULL
#   },
#   "mood",
#   FALSE,
#   TRUE
# };
# 
# static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] =
# {
#   &_com_acme_coyote_property_info_mood.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info =
# {
#   {
#     -1,
#     (gchar *) "com.acme.Coyote",
#     (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers,
#     (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers,
#     (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers,
#     NULL
#   },
#   "com-acme-coyote",
# };
# 
# 
# /**
#  * com_acme_coyote_interface_info:
#  *
#  * Gets a machine-readable description of the <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link> D-Bus interface.
#  *
#  * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
#  */
# GDBusInterfaceInfo *
# com_acme_coyote_interface_info (void)
# {
#   return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct;
# }
# 
# /**
#  * com_acme_coyote_override_properties:
#  * @klass: The class structure for a #GObject derived class.
#  * @property_id_begin: The property id to assign to the first overridden property.
#  *
#  * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class.
#  * The properties are overridden in the order they are defined.
#  *
#  * Returns: The last property id.
#  */
# guint
# com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin)
# {
#   g_object_class_override_property (klass, property_id_begin++, "mood");
#   return property_id_begin - 1;
# }
# 
# 
# 
# /**
#  * ComAcmeCoyote:
#  *
#  * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  */
# 
# /**
#  * ComAcmeCoyoteIface:
#  * @parent_iface: The parent interface.
#  * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal.
#  * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal.
#  * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal.
#  * @get_mood: Getter for the #ComAcmeCoyote:mood property.
#  * @surprised: Handler for the #ComAcmeCoyote::surprised signal.
#  *
#  * Virtual table for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  */
# 
# typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface;
# G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT)
# 
# static void
# com_acme_coyote_default_init (ComAcmeCoyoteIface *iface)
# {
#   /* GObject signals for incoming D-Bus method calls: */
#   /**
#    * ComAcmeCoyote::handle-run:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_run() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-run",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /**
#    * ComAcmeCoyote::handle-sleep:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-sleep",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /**
#    * ComAcmeCoyote::handle-attack:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_attack() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-attack",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /* GObject signals for received D-Bus signals: */
#   /**
#    * ComAcmeCoyote::surprised:
#    * @object: A #ComAcmeCoyote.
#    *
#    * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-acme-Coyote.Surprised">"Surprised"</link> is received.
#    *
#    * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
#    */
#   g_signal_new ("surprised",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised),
#     NULL,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_NONE,
#     0);
# 
#   /* GObject properties for D-Bus properties: */
#   /**
#    * ComAcmeCoyote:mood:
#    *
#    * Represents the D-Bus property <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link>.
#    *
#    * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side.
#    */
#   g_object_interface_install_property (iface,
#     g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
# }
# 
# /**
#  * com_acme_coyote_get_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  *
#  * Gets the value of the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property.
#  *
#  * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side.
#  *
#  * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use com_acme_coyote_dup_mood() if on another thread.
#  *
#  * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object.
#  */
# const gchar *
# com_acme_coyote_get_mood (ComAcmeCoyote *object)
# {
#   return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object);
# }
# 
# /**
#  * com_acme_coyote_dup_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  *
#  * Gets a copy of the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property.
#  *
#  * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side.
#  *
#  * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free().
#  */
# gchar *
# com_acme_coyote_dup_mood (ComAcmeCoyote *object)
# {
#   gchar *value;
#   g_object_get (G_OBJECT (object), "mood", &value, NULL);
#   return value;
# }
# 
# /**
#  * com_acme_coyote_set_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  * @value: The value to set.
#  *
#  * Sets the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property to @value.
#  *
#  * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side.
#  */
# void
# com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value)
# {
#   g_object_set (G_OBJECT (object), "mood", value, NULL);
# }
# 
# /**
#  * com_acme_coyote_emit_surprised:
#  * @object: A #ComAcmeCoyote.
#  *
#  * Emits the <link linkend="gdbus-signal-com-acme-Coyote.Surprised">"Surprised"</link> D-Bus signal.
#  */
# void
# com_acme_coyote_emit_surprised (
#     ComAcmeCoyote *object)
# {
#   g_signal_emit_by_name (object, "surprised");
# }
# 
# /**
#  * com_acme_coyote_call_run:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_run_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_run (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Run",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_run_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_run().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_run_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_run_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_run() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_run_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Run",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_sleep:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_sleep (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Sleep",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_sleep_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_sleep().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_sleep_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_sleep_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_sleep() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_sleep_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Sleep",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_attack:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_attack (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Attack",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_attack_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_attack().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_attack_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_attack_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_attack() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_attack_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Attack",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_complete_run:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_run (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /**
#  * com_acme_coyote_complete_sleep:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_sleep (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /**
#  * com_acme_coyote_complete_attack:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_attack (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * ComAcmeCoyoteProxy:
#  *
#  * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * ComAcmeCoyoteProxyClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #ComAcmeCoyoteProxy.
#  */
# 
# struct _ComAcmeCoyoteProxyPrivate
# {
#   GData *qdata;
# };
# 
# static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface);
# 
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY,
#                          G_ADD_PRIVATE (ComAcmeCoyoteProxy)
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY,
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init))
# 
# #endif
# static void
# com_acme_coyote_proxy_finalize (GObject *object)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object);
#   g_datalist_clear (&proxy->priv->qdata);
#   G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object);
# }
# 
# static void
# com_acme_coyote_proxy_get_property (GObject      *object,
#   guint         prop_id,
#   GValue       *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   GVariant *variant;
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name);
#   if (info->use_gvariant)
#     {
#       g_value_set_variant (value, variant);
#     }
#   else
#     {
#       if (variant != NULL)
#         g_dbus_gvariant_to_gvalue (variant, value);
#     }
#   if (variant != NULL)
#     g_variant_unref (variant);
# }
# 
# static void
# com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy,
#   GAsyncResult *res,
#   gpointer      user_data)
# {
#   const _ExtendedGDBusPropertyInfo *info = user_data;
#   GError *error;
#   GVariant *_ret;
#   error = NULL;
#   _ret = g_dbus_proxy_call_finish (proxy, res, &error);
#   if (!_ret)
#     {
#       g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)",
#                  info->parent_struct.name, 
#                  error->message, g_quark_to_string (error->domain), error->code);
#       g_error_free (error);
#     }
#   else
#     {
#       g_variant_unref (_ret);
#     }
# }
# 
# static void
# com_acme_coyote_proxy_set_property (GObject      *object,
#   guint         prop_id,
#   const GValue *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   GVariant *variant;
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature));
#   g_dbus_proxy_call (G_DBUS_PROXY (object),
#     "org.freedesktop.DBus.Properties.Set",
#     g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct);
#   g_variant_unref (variant);
# }
# 
# static void
# com_acme_coyote_proxy_g_signal (GDBusProxy *proxy,
#   const gchar *sender_name G_GNUC_UNUSED,
#   const gchar *signal_name,
#   GVariant *parameters)
# {
#   _ExtendedGDBusSignalInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   gsize n;
#   guint signal_id;
#   info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name);
#   if (info == NULL)
#     return;
#   num_params = g_variant_n_children (parameters);
#   paramv = g_new0 (GValue, num_params + 1);
#   g_value_init (&paramv[0], TYPE_COM_ACME_COYOTE);
#   g_value_set_object (&paramv[0], proxy);
#   g_variant_iter_init (&iter, parameters);
#   n = 1;
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE);
#   g_signal_emitv (paramv, signal_id, 0, NULL);
#   for (n = 0; n < num_params + 1; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static void
# com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy,
#   GVariant *changed_properties,
#   const gchar *const *invalidated_properties)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy);
#   guint n;
#   const gchar *key;
#   GVariantIter *iter;
#   _ExtendedGDBusPropertyInfo *info;
#   g_variant_get (changed_properties, "a{sv}", &iter);
#   while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key);
#       g_datalist_remove_data (&proxy->priv->qdata, key);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
#   g_variant_iter_free (iter);
#   for (n = 0; invalidated_properties[n] != NULL; n++)
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]);
#       g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
# }
# 
# static const gchar *
# com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object);
#   GVariant *variant;
#   const gchar *value = NULL;
#   variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood");
#   if (variant != NULL)
#     {
#       value = g_variant_get_string (variant, NULL);
#       g_variant_unref (variant);
#     }
#   return value;
# }
# 
# static void
# com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy);
# #else
#   proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate);
# #endif
# 
#   g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ());
# }
# 
# static void
# com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusProxyClass *proxy_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize     = com_acme_coyote_proxy_finalize;
#   gobject_class->get_property = com_acme_coyote_proxy_get_property;
#   gobject_class->set_property = com_acme_coyote_proxy_set_property;
# 
#   proxy_class = G_DBUS_PROXY_CLASS (klass);
#   proxy_class->g_signal = com_acme_coyote_proxy_g_signal;
#   proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed;
# 
#   com_acme_coyote_override_properties (gobject_class, 1);
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate));
# #endif
# }
# 
# static void
# com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface)
# {
#   iface->get_mood = com_acme_coyote_proxy_get_mood;
# }
# 
# /**
#  * com_acme_coyote_proxy_new:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>. See g_dbus_proxy_new() for more details.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# com_acme_coyote_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
# }
# 
# /**
#  * com_acme_coyote_proxy_new_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with com_acme_coyote_proxy_new().
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * com_acme_coyote_proxy_new_sync:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>. See g_dbus_proxy_new_sync() for more details.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# com_acme_coyote_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
# }
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with com_acme_coyote_proxy_new_for_bus().
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus_sync:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * ComAcmeCoyoteSkeleton:
#  *
#  * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * ComAcmeCoyoteSkeletonClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #ComAcmeCoyoteSkeleton.
#  */
# 
# struct _ComAcmeCoyoteSkeletonPrivate
# {
#   GValue *properties;
#   GList *changed_properties;
#   GSource *changed_properties_idle_source;
#   GMainContext *context;
#   GMutex lock;
# };
# 
# static void
# _com_acme_coyote_skeleton_handle_method_call (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name,
#   const gchar *method_name,
#   GVariant *parameters,
#   GDBusMethodInvocation *invocation,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   _ExtendedGDBusMethodInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   guint num_extra;
#   gsize n;
#   guint signal_id;
#   GValue return_value = G_VALUE_INIT;
#   info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
#   g_assert (info != NULL);
#   num_params = g_variant_n_children (parameters);
#   num_extra = info->pass_fdlist ? 3 : 2;  paramv = g_new0 (GValue, num_params + num_extra);
#   n = 0;
#   g_value_init (&paramv[n], TYPE_COM_ACME_COYOTE);
#   g_value_set_object (&paramv[n++], skeleton);
#   g_value_init (&paramv[n], G_TYPE_DBUS_METHOD_INVOCATION);
#   g_value_set_object (&paramv[n++], invocation);
#   if (info->pass_fdlist)
#     {
# #ifdef G_OS_UNIX
#       g_value_init (&paramv[n], G_TYPE_UNIX_FD_LIST);
#       g_value_set_object (&paramv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
# #else
#       g_assert_not_reached ();
# #endif
#     }
#   g_variant_iter_init (&iter, parameters);
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE);
#   g_value_init (&return_value, G_TYPE_BOOLEAN);
#   g_signal_emitv (paramv, signal_id, 0, &return_value);
#   if (!g_value_get_boolean (&return_value))
#     g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
#   g_value_unset (&return_value);
#   for (n = 0; n < num_params + num_extra; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static GVariant *
# _com_acme_coyote_skeleton_handle_get_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GError **error,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   GVariant *ret;
#   ret = NULL;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       g_value_init (&value, pspec->value_type);
#       g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
#       g_value_unset (&value);
#     }
#   return ret;
# }
# 
# static gboolean
# _com_acme_coyote_skeleton_handle_set_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GVariant *variant,
#   GError **error,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   gboolean ret;
#   ret = FALSE;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       if (info->use_gvariant)
#         g_value_set_variant (&value, variant);
#       else
#         g_dbus_gvariant_to_gvalue (variant, &value);
#       g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       g_value_unset (&value);
#       ret = TRUE;
#     }
#   return ret;
# }
# 
# static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable =
# {
#   _com_acme_coyote_skeleton_handle_method_call,
#   _com_acme_coyote_skeleton_handle_get_property,
#   _com_acme_coyote_skeleton_handle_set_property,
#   {NULL}
# };
# 
# static GDBusInterfaceInfo *
# com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return com_acme_coyote_interface_info ();
# }
# 
# static GDBusInterfaceVTable *
# com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable;
# }
# 
# static GVariant *
# com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton);
# 
#   GVariantBuilder builder;
#   guint n;
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   if (_com_acme_coyote_interface_info.parent_struct.properties == NULL)
#     goto out;
#   for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++)
#     {
#       GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n];
#       if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
#         {
#           GVariant *value;
#           value = _com_acme_coyote_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", info->name, NULL, skeleton);
#           if (value != NULL)
#             {
#               g_variant_take_ref (value);
#               g_variant_builder_add (&builder, "{sv}", info->name, value);
#               g_variant_unref (value);
#             }
#         }
#     }
# out:
#   return g_variant_builder_end (&builder);
# }
# 
# static gboolean _com_acme_coyote_emit_changed (gpointer user_data);
# 
# static void
# com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton);
#   gboolean emit_changed = FALSE;
# 
#   g_mutex_lock (&skeleton->priv->lock);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     {
#       g_source_destroy (skeleton->priv->changed_properties_idle_source);
#       skeleton->priv->changed_properties_idle_source = NULL;
#       emit_changed = TRUE;
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
# 
#   if (emit_changed)
#     _com_acme_coyote_emit_changed (skeleton);
# }
# 
# static void
# _com_acme_coyote_on_signal_surprised (
#     ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
# 
#   GList      *connections, *l;
#   GVariant   *signal_variant;
#   connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
# 
#   signal_variant = g_variant_ref_sink (g_variant_new ("()"));
#   for (l = connections; l != NULL; l = l->next)
#     {
#       GDBusConnection *connection = l->data;
#       g_dbus_connection_emit_signal (connection,
#         NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised",
#         signal_variant, NULL);
#     }
#   g_variant_unref (signal_variant);
#   g_list_free_full (connections, g_object_unref);
# }
# 
# static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface);
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_ADD_PRIVATE (ComAcmeCoyoteSkeleton)
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init))
# 
# #endif
# static void
# com_acme_coyote_skeleton_finalize (GObject *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   guint n;
#   for (n = 0; n < 1; n++)
#     g_value_unset (&skeleton->priv->properties[n]);
#   g_free (skeleton->priv->properties);
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     g_source_destroy (skeleton->priv->changed_properties_idle_source);
#   g_main_context_unref (skeleton->priv->context);
#   g_mutex_clear (&skeleton->priv->lock);
#   G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object);
# }
# 
# static void
# com_acme_coyote_skeleton_get_property (GObject      *object,
#   guint         prop_id,
#   GValue       *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   g_mutex_lock (&skeleton->priv->lock);
#   g_value_copy (&skeleton->priv->properties[prop_id - 1], value);
#   g_mutex_unlock (&skeleton->priv->lock);
# }
# 
# static gboolean
# _com_acme_coyote_emit_changed (gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GList *l;
#   GVariantBuilder builder;
#   GVariantBuilder invalidated_builder;
#   guint num_changes;
# 
#   g_mutex_lock (&skeleton->priv->lock);
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as"));
#   for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next)
#     {
#       ChangedProperty *cp = l->data;
#       GVariant *variant;
#       const GValue *cur_value;
# 
#       cur_value = &skeleton->priv->properties[cp->prop_id - 1];
#       if (!_g_value_equal (cur_value, &cp->orig_value))
#         {
#           variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature));
#           g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant);
#           g_variant_unref (variant);
#           num_changes++;
#         }
#     }
#   if (num_changes > 0)
#     {
#       GList *connections, *ll;
#       GVariant *signal_variant;
#       signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote",
#                                            &builder, &invalidated_builder));
#       connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
#       for (ll = connections; ll != NULL; ll = ll->next)
#         {
#           GDBusConnection *connection = ll->data;
# 
#           g_dbus_connection_emit_signal (connection,
#                                          NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)),
#                                          "org.freedesktop.DBus.Properties",
#                                          "PropertiesChanged",
#                                          signal_variant,
#                                          NULL);
#         }
#       g_variant_unref (signal_variant);
#       g_list_free_full (connections, g_object_unref);
#     }
#   else
#     {
#       g_variant_builder_clear (&builder);
#       g_variant_builder_clear (&invalidated_builder);
#     }
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   skeleton->priv->changed_properties = NULL;
#   skeleton->priv->changed_properties_idle_source = NULL;
#   g_mutex_unlock (&skeleton->priv->lock);
#   return FALSE;
# }
# 
# static void
# _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value)
# {
#   ChangedProperty *cp;
#   GList *l;
#   cp = NULL;
#   for (l = skeleton->priv->changed_properties; l != NULL; l = l->next)
#     {
#       ChangedProperty *i_cp = l->data;
#       if (i_cp->info == info)
#         {
#           cp = i_cp;
#           break;
#         }
#     }
#   if (cp == NULL)
#     {
#       cp = g_new0 (ChangedProperty, 1);
#       cp->prop_id = prop_id;
#       cp->info = info;
#       skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp);
#       g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value));
#       g_value_copy (orig_value, &cp->orig_value);
#     }
# }
# 
# static void
# com_acme_coyote_skeleton_notify (GObject      *object,
#   GParamSpec *pspec G_GNUC_UNUSED)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_mutex_lock (&skeleton->priv->lock);
#   if (skeleton->priv->changed_properties != NULL &&
#       skeleton->priv->changed_properties_idle_source == NULL)
#     {
#       skeleton->priv->changed_properties_idle_source = g_idle_source_new ();
#       g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT);
#       g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref);
#       g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed");
#       g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context);
#       g_source_unref (skeleton->priv->changed_properties_idle_source);
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
# }
# 
# static void
# com_acme_coyote_skeleton_set_property (GObject      *object,
#   guint         prop_id,
#   const GValue *value,
#   GParamSpec   *pspec)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   g_mutex_lock (&skeleton->priv->lock);
#   g_object_freeze_notify (object);
#   if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1]))
#     {
#       if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL &&
#           info->emits_changed_signal)
#         _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]);
#       g_value_copy (value, &skeleton->priv->properties[prop_id - 1]);
#       g_object_notify_by_pspec (object, pspec);
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
#   g_object_thaw_notify (object);
# }
# 
# static void
# com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton);
# #else
#   skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate);
# #endif
# 
#   g_mutex_init (&skeleton->priv->lock);
#   skeleton->priv->context = g_main_context_ref_thread_default ();
#   skeleton->priv->properties = g_new0 (GValue, 1);
#   g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING);
# }
# 
# static const gchar *
# com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   const gchar *value;
#   g_mutex_lock (&skeleton->priv->lock);
#   value = g_value_get_string (&(skeleton->priv->properties[0]));
#   g_mutex_unlock (&skeleton->priv->lock);
#   return value;
# }
# 
# static void
# com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusInterfaceSkeletonClass *skeleton_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize = com_acme_coyote_skeleton_finalize;
#   gobject_class->get_property = com_acme_coyote_skeleton_get_property;
#   gobject_class->set_property = com_acme_coyote_skeleton_set_property;
#   gobject_class->notify       = com_acme_coyote_skeleton_notify;
# 
# 
#   com_acme_coyote_override_properties (gobject_class, 1);
# 
#   skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
#   skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info;
#   skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties;
#   skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush;
#   skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate));
# #endif
# }
# 
# static void
# com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface)
# {
#   iface->surprised = _com_acme_coyote_on_signal_surprised;
#   iface->get_mood = com_acme_coyote_skeleton_get_mood;
# }
# 
# /**
#  * com_acme_coyote_skeleton_new:
#  *
#  * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object.
#  */
# ComAcmeCoyote *
# com_acme_coyote_skeleton_new (void)
# {
#   return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL));
# }
# 
# /* ------------------------------------------------------------------------
#  * Code for interface org.project.Bar.Frobnicator
#  * ------------------------------------------------------------------------
#  */
# 
# /**
#  * SECTION:OrgProjectBarFrobnicator
#  * @title: OrgProjectBarFrobnicator
#  * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface
#  *
#  * This section contains code for working with the <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link> D-Bus interface in C.
#  */
# 
# /* ---- Introspection data for org.project.Bar.Frobnicator ---- */
# 
# static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method =
# {
#   {
#     -1,
#     (gchar *) "RandomMethod",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-random-method",
#   FALSE
# };
# 
# static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] =
# {
#   &_org_project_bar_frobnicator_method_info_random_method.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info =
# {
#   {
#     -1,
#     (gchar *) "org.project.Bar.Frobnicator",
#     (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers,
#     NULL,
#     NULL,
#     NULL
#   },
#   "org-project-bar-frobnicator",
# };
# 
# 
# /**
#  * org_project_bar_frobnicator_interface_info:
#  *
#  * Gets a machine-readable description of the <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link> D-Bus interface.
#  *
#  * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
#  */
# GDBusInterfaceInfo *
# org_project_bar_frobnicator_interface_info (void)
# {
#   return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct;
# }
# 
# /**
#  * org_project_bar_frobnicator_override_properties:
#  * @klass: The class structure for a #GObject derived class.
#  * @property_id_begin: The property id to assign to the first overridden property.
#  *
#  * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class.
#  * The properties are overridden in the order they are defined.
#  *
#  * Returns: The last property id.
#  */
# guint
# org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin)
# {
#   return property_id_begin - 1;
# }
# 
# 
# 
# /**
#  * OrgProjectBarFrobnicator:
#  *
#  * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorIface:
#  * @parent_iface: The parent interface.
#  * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal.
#  *
#  * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  */
# 
# typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface;
# G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT)
# 
# static void
# org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface)
# {
#   /* GObject signals for incoming D-Bus method calls: */
#   /**
#    * OrgProjectBarFrobnicator::handle-random-method:
#    * @object: A #OrgProjectBarFrobnicator.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_bar_frobnicator_complete_random_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-random-method",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method.
#  */
# void
# org_project_bar_frobnicator_call_random_method (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "RandomMethod",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method_finish:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_call_random_method().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# org_project_bar_frobnicator_call_random_method_finish (
#     OrgProjectBarFrobnicator *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method_sync:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# org_project_bar_frobnicator_call_random_method_sync (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "RandomMethod",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_complete_random_method:
#  * @object: A #OrgProjectBarFrobnicator.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# org_project_bar_frobnicator_complete_random_method (
#     OrgProjectBarFrobnicator *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * OrgProjectBarFrobnicatorProxy:
#  *
#  * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorProxyClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #OrgProjectBarFrobnicatorProxy.
#  */
# 
# struct _OrgProjectBarFrobnicatorProxyPrivate
# {
#   GData *qdata;
# };
# 
# static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface);
# 
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY,
#                          G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy)
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY,
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init))
# 
# #endif
# static void
# org_project_bar_frobnicator_proxy_finalize (GObject *object)
# {
#   OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object);
#   g_datalist_clear (&proxy->priv->qdata);
#   G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object);
# }
# 
# static void
# org_project_bar_frobnicator_proxy_get_property (GObject      *object G_GNUC_UNUSED,
#   guint         prop_id G_GNUC_UNUSED,
#   GValue       *value G_GNUC_UNUSED,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
# }
# 
# static void
# org_project_bar_frobnicator_proxy_set_property (GObject      *object G_GNUC_UNUSED,
#   guint         prop_id G_GNUC_UNUSED,
#   const GValue *value G_GNUC_UNUSED,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
# }
# 
# static void
# org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy,
#   const gchar *sender_name G_GNUC_UNUSED,
#   const gchar *signal_name,
#   GVariant *parameters)
# {
#   _ExtendedGDBusSignalInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   gsize n;
#   guint signal_id;
#   info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name);
#   if (info == NULL)
#     return;
#   num_params = g_variant_n_children (parameters);
#   paramv = g_new0 (GValue, num_params + 1);
#   g_value_init (&paramv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_set_object (&paramv[0], proxy);
#   g_variant_iter_init (&iter, parameters);
#   n = 1;
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_signal_emitv (paramv, signal_id, 0, NULL);
#   for (n = 0; n < num_params + 1; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static void
# org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy,
#   GVariant *changed_properties,
#   const gchar *const *invalidated_properties)
# {
#   OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy);
#   guint n;
#   const gchar *key;
#   GVariantIter *iter;
#   _ExtendedGDBusPropertyInfo *info;
#   g_variant_get (changed_properties, "a{sv}", &iter);
#   while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key);
#       g_datalist_remove_data (&proxy->priv->qdata, key);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
#   g_variant_iter_free (iter);
#   for (n = 0; invalidated_properties[n] != NULL; n++)
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]);
#       g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
# }
# 
# static void
# org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy);
# #else
#   proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate);
# #endif
# 
#   g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ());
# }
# 
# static void
# org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusProxyClass *proxy_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize     = org_project_bar_frobnicator_proxy_finalize;
#   gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property;
#   gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property;
# 
#   proxy_class = G_DBUS_PROXY_CLASS (klass);
#   proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal;
#   proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate));
# #endif
# }
# 
# static void
# org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED)
# {
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>. See g_dbus_proxy_new() for more details.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# org_project_bar_frobnicator_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_proxy_new().
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_sync:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>. See g_dbus_proxy_new_sync() for more details.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# org_project_bar_frobnicator_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus().
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus_sync:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * OrgProjectBarFrobnicatorSkeleton:
#  *
#  * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorSkeletonClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #OrgProjectBarFrobnicatorSkeleton.
#  */
# 
# struct _OrgProjectBarFrobnicatorSkeletonPrivate
# {
#   GValue *properties;
#   GList *changed_properties;
#   GSource *changed_properties_idle_source;
#   GMainContext *context;
#   GMutex lock;
# };
# 
# static void
# _org_project_bar_frobnicator_skeleton_handle_method_call (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name,
#   const gchar *method_name,
#   GVariant *parameters,
#   GDBusMethodInvocation *invocation,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   _ExtendedGDBusMethodInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   guint num_extra;
#   gsize n;
#   guint signal_id;
#   GValue return_value = G_VALUE_INIT;
#   info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
#   g_assert (info != NULL);
#   num_params = g_variant_n_children (parameters);
#   num_extra = info->pass_fdlist ? 3 : 2;  paramv = g_new0 (GValue, num_params + num_extra);
#   n = 0;
#   g_value_init (&paramv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_set_object (&paramv[n++], skeleton);
#   g_value_init (&paramv[n], G_TYPE_DBUS_METHOD_INVOCATION);
#   g_value_set_object (&paramv[n++], invocation);
#   if (info->pass_fdlist)
#     {
# #ifdef G_OS_UNIX
#       g_value_init (&paramv[n], G_TYPE_UNIX_FD_LIST);
#       g_value_set_object (&paramv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
# #else
#       g_assert_not_reached ();
# #endif
#     }
#   g_variant_iter_init (&iter, parameters);
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_init (&return_value, G_TYPE_BOOLEAN);
#   g_signal_emitv (paramv, signal_id, 0, &return_value);
#   if (!g_value_get_boolean (&return_value))
#     g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
#   g_value_unset (&return_value);
#   for (n = 0; n < num_params + num_extra; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static GVariant *
# _org_project_bar_frobnicator_skeleton_handle_get_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GError **error,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   GVariant *ret;
#   ret = NULL;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       g_value_init (&value, pspec->value_type);
#       g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
#       g_value_unset (&value);
#     }
#   return ret;
# }
# 
# static gboolean
# _org_project_bar_frobnicator_skeleton_handle_set_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GVariant *variant,
#   GError **error,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   gboolean ret;
#   ret = FALSE;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       if (info->use_gvariant)
#         g_value_set_variant (&value, variant);
#       else
#         g_dbus_gvariant_to_gvalue (variant, &value);
#       g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       g_value_unset (&value);
#       ret = TRUE;
#     }
#   return ret;
# }
# 
# static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable =
# {
#   _org_project_bar_frobnicator_skeleton_handle_method_call,
#   _org_project_bar_frobnicator_skeleton_handle_get_property,
#   _org_project_bar_frobnicator_skeleton_handle_set_property,
#   {NULL}
# };
# 
# static GDBusInterfaceInfo *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return org_project_bar_frobnicator_interface_info ();
# }
# 
# static GDBusInterfaceVTable *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable;
# }
# 
# static GVariant *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton);
# 
#   GVariantBuilder builder;
#   guint n;
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL)
#     goto out;
#   for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++)
#     {
#       GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n];
#       if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
#         {
#           GVariant *value;
#           value = _org_project_bar_frobnicator_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.Bar.Frobnicator", info->name, NULL, skeleton);
#           if (value != NULL)
#             {
#               g_variant_take_ref (value);
#               g_variant_builder_add (&builder, "{sv}", info->name, value);
#               g_variant_unref (value);
#             }
#         }
#     }
# out:
#   return g_variant_builder_end (&builder);
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED)
# {
# }
# 
# static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface);
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton)
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init))
# 
# #endif
# static void
# org_project_bar_frobnicator_skeleton_finalize (GObject *object)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object);
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     g_source_destroy (skeleton->priv->changed_properties_idle_source);
#   g_main_context_unref (skeleton->priv->context);
#   g_mutex_clear (&skeleton->priv->lock);
#   G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object);
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton);
# #else
#   skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate);
# #endif
# 
#   g_mutex_init (&skeleton->priv->lock);
#   skeleton->priv->context = g_main_context_ref_thread_default ();
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusInterfaceSkeletonClass *skeleton_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize;
# 
#   skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
#   skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info;
#   skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties;
#   skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush;
#   skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate));
# #endif
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED)
# {
# }
# 
# /**
#  * org_project_bar_frobnicator_skeleton_new:
#  *
#  * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_skeleton_new (void)
# {
#   return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL));
# }
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7tn8izar/tmpta9avszg2.xml', '/tmp/tmp7tn8izar/tmp86mug2fm1.xml', '--output', '/dev/stdout', '--body']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifdef HAVE_CONFIG_H
# #  include "config.h"
# #endif
# 
# #include "stdout.h"
# 
# #include <string.h>
# #ifdef G_OS_UNIX
# #  include <gio/gunixfdlist.h>
# #endif
# 
# typedef struct
# {
#   GDBusArgInfo parent_struct;
#   gboolean use_gvariant;
# } _ExtendedGDBusArgInfo;
# 
# typedef struct
# {
#   GDBusMethodInfo parent_struct;
#   const gchar *signal_name;
#   gboolean pass_fdlist;
# } _ExtendedGDBusMethodInfo;
# 
# typedef struct
# {
#   GDBusSignalInfo parent_struct;
#   const gchar *signal_name;
# } _ExtendedGDBusSignalInfo;
# 
# typedef struct
# {
#   GDBusPropertyInfo parent_struct;
#   const gchar *hyphen_name;
#   guint use_gvariant : 1;
#   guint emits_changed_signal : 1;
# } _ExtendedGDBusPropertyInfo;
# 
# typedef struct
# {
#   GDBusInterfaceInfo parent_struct;
#   const gchar *hyphen_name;
# } _ExtendedGDBusInterfaceInfo;
# 
# typedef struct
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   guint prop_id;
#   GValue orig_value; /* the value before the change */
# } ChangedProperty;
# 
# static void
# _changed_property_free (ChangedProperty *data)
# {
#   g_value_unset (&data->orig_value);
#   g_free (data);
# }
# 
# static gboolean
# _g_strv_equal0 (gchar **a, gchar **b)
# {
#   gboolean ret = FALSE;
#   guint n;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   if (g_strv_length (a) != g_strv_length (b))
#     goto out;
#   for (n = 0; a[n] != NULL; n++)
#     if (g_strcmp0 (a[n], b[n]) != 0)
#       goto out;
#   ret = TRUE;
# out:
#   return ret;
# }
# 
# static gboolean
# _g_variant_equal0 (GVariant *a, GVariant *b)
# {
#   gboolean ret = FALSE;
#   if (a == NULL && b == NULL)
#     {
#       ret = TRUE;
#       goto out;
#     }
#   if (a == NULL || b == NULL)
#     goto out;
#   ret = g_variant_equal (a, b);
# out:
#   return ret;
# }
# 
# G_GNUC_UNUSED static gboolean
# _g_value_equal (const GValue *a, const GValue *b)
# {
#   gboolean ret = FALSE;
#   g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
#   switch (G_VALUE_TYPE (a))
#     {
#       case G_TYPE_BOOLEAN:
#         ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
#         break;
#       case G_TYPE_UCHAR:
#         ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
#         break;
#       case G_TYPE_INT:
#         ret = (g_value_get_int (a) == g_value_get_int (b));
#         break;
#       case G_TYPE_UINT:
#         ret = (g_value_get_uint (a) == g_value_get_uint (b));
#         break;
#       case G_TYPE_INT64:
#         ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
#         break;
#       case G_TYPE_UINT64:
#         ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
#         break;
#       case G_TYPE_DOUBLE:
#         {
#           /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
#           gdouble da = g_value_get_double (a);
#           gdouble db = g_value_get_double (b);
#           ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
#         }
#         break;
#       case G_TYPE_STRING:
#         ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
#         break;
#       case G_TYPE_VARIANT:
#         ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
#         break;
#       default:
#         if (G_VALUE_TYPE (a) == G_TYPE_STRV)
#           ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
#         else
#           g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
#         break;
#     }
#   return ret;
# }
# 
# /* ------------------------------------------------------------------------
#  * Code for interface com.acme.Coyote
#  * ------------------------------------------------------------------------
#  */
# 
# /**
#  * SECTION:ComAcmeCoyote
#  * @title: ComAcmeCoyote
#  * @short_description: Generated C code for the com.acme.Coyote D-Bus interface
#  *
#  * This section contains code for working with the <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link> D-Bus interface in C.
#  */
# 
# /* ---- Introspection data for com.acme.Coyote ---- */
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run =
# {
#   {
#     -1,
#     (gchar *) "Run",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-run",
#   FALSE
# };
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep =
# {
#   {
#     -1,
#     (gchar *) "Sleep",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-sleep",
#   FALSE
# };
# 
# static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack =
# {
#   {
#     -1,
#     (gchar *) "Attack",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-attack",
#   FALSE
# };
# 
# static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] =
# {
#   &_com_acme_coyote_method_info_run.parent_struct,
#   &_com_acme_coyote_method_info_sleep.parent_struct,
#   &_com_acme_coyote_method_info_attack.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised =
# {
#   {
#     -1,
#     (gchar *) "Surprised",
#     NULL,
#     NULL
#   },
#   "surprised"
# };
# 
# static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] =
# {
#   &_com_acme_coyote_signal_info_surprised.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood =
# {
#   {
#     -1,
#     (gchar *) "Mood",
#     (gchar *) "s",
#     G_DBUS_PROPERTY_INFO_FLAGS_READABLE,
#     NULL
#   },
#   "mood",
#   FALSE,
#   TRUE
# };
# 
# static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] =
# {
#   &_com_acme_coyote_property_info_mood.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info =
# {
#   {
#     -1,
#     (gchar *) "com.acme.Coyote",
#     (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers,
#     (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers,
#     (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers,
#     NULL
#   },
#   "com-acme-coyote",
# };
# 
# 
# /**
#  * com_acme_coyote_interface_info:
#  *
#  * Gets a machine-readable description of the <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link> D-Bus interface.
#  *
#  * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
#  */
# GDBusInterfaceInfo *
# com_acme_coyote_interface_info (void)
# {
#   return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct;
# }
# 
# /**
#  * com_acme_coyote_override_properties:
#  * @klass: The class structure for a #GObject derived class.
#  * @property_id_begin: The property id to assign to the first overridden property.
#  *
#  * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class.
#  * The properties are overridden in the order they are defined.
#  *
#  * Returns: The last property id.
#  */
# guint
# com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin)
# {
#   g_object_class_override_property (klass, property_id_begin++, "mood");
#   return property_id_begin - 1;
# }
# 
# 
# 
# /**
#  * ComAcmeCoyote:
#  *
#  * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  */
# 
# /**
#  * ComAcmeCoyoteIface:
#  * @parent_iface: The parent interface.
#  * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal.
#  * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal.
#  * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal.
#  * @get_mood: Getter for the #ComAcmeCoyote:mood property.
#  * @surprised: Handler for the #ComAcmeCoyote::surprised signal.
#  *
#  * Virtual table for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  */
# 
# typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface;
# G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT)
# 
# static void
# com_acme_coyote_default_init (ComAcmeCoyoteIface *iface)
# {
#   /* GObject signals for incoming D-Bus method calls: */
#   /**
#    * ComAcmeCoyote::handle-run:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_run() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-run",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /**
#    * ComAcmeCoyote::handle-sleep:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_sleep() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-sleep",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /**
#    * ComAcmeCoyote::handle-attack:
#    * @object: A #ComAcmeCoyote.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call com_acme_coyote_complete_attack() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-attack",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
#   /* GObject signals for received D-Bus signals: */
#   /**
#    * ComAcmeCoyote::surprised:
#    * @object: A #ComAcmeCoyote.
#    *
#    * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-acme-Coyote.Surprised">"Surprised"</link> is received.
#    *
#    * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
#    */
#   g_signal_new ("surprised",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised),
#     NULL,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_NONE,
#     0);
# 
#   /* GObject properties for D-Bus properties: */
#   /**
#    * ComAcmeCoyote:mood:
#    *
#    * Represents the D-Bus property <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link>.
#    *
#    * Since the D-Bus property for this #GObject property is readable but not writable, it is meaningful to read from it on both the client- and service-side. It is only meaningful, however, to write to it on the service-side.
#    */
#   g_object_interface_install_property (iface,
#     g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
# }
# 
# /**
#  * com_acme_coyote_get_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  *
#  * Gets the value of the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property.
#  *
#  * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side.
#  *
#  * The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use com_acme_coyote_dup_mood() if on another thread.
#  *
#  * Returns: (transfer none) (nullable): The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object.
#  */
# const gchar *
# com_acme_coyote_get_mood (ComAcmeCoyote *object)
# {
#   return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object);
# }
# 
# /**
#  * com_acme_coyote_dup_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  *
#  * Gets a copy of the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property.
#  *
#  * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side.
#  *
#  * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free().
#  */
# gchar *
# com_acme_coyote_dup_mood (ComAcmeCoyote *object)
# {
#   gchar *value;
#   g_object_get (G_OBJECT (object), "mood", &value, NULL);
#   return value;
# }
# 
# /**
#  * com_acme_coyote_set_mood: (skip)
#  * @object: A #ComAcmeCoyote.
#  * @value: The value to set.
#  *
#  * Sets the <link linkend="gdbus-property-com-acme-Coyote.Mood">"Mood"</link> D-Bus property to @value.
#  *
#  * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side.
#  */
# void
# com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value)
# {
#   g_object_set (G_OBJECT (object), "mood", value, NULL);
# }
# 
# /**
#  * com_acme_coyote_emit_surprised:
#  * @object: A #ComAcmeCoyote.
#  *
#  * Emits the <link linkend="gdbus-signal-com-acme-Coyote.Surprised">"Surprised"</link> D-Bus signal.
#  */
# void
# com_acme_coyote_emit_surprised (
#     ComAcmeCoyote *object)
# {
#   g_signal_emit_by_name (object, "surprised");
# }
# 
# /**
#  * com_acme_coyote_call_run:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_run_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_run (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Run",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_run_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_run().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_run_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_run_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_run() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_run_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Run",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_sleep:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_sleep (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Sleep",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_sleep_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_sleep().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_sleep_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_sleep_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_sleep() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_sleep_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Sleep",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_attack:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method.
#  */
# void
# com_acme_coyote_call_attack (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "Attack",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * com_acme_coyote_call_attack_finish:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with com_acme_coyote_call_attack().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_attack_finish (
#     ComAcmeCoyote *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_call_attack_sync:
#  * @proxy: A #ComAcmeCoyoteProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_call_attack() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# com_acme_coyote_call_attack_sync (
#     ComAcmeCoyote *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "Attack",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * com_acme_coyote_complete_run:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Run">Run()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_run (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /**
#  * com_acme_coyote_complete_sleep:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Sleep">Sleep()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_sleep (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /**
#  * com_acme_coyote_complete_attack:
#  * @object: A #ComAcmeCoyote.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-acme-Coyote.Attack">Attack()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# com_acme_coyote_complete_attack (
#     ComAcmeCoyote *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * ComAcmeCoyoteProxy:
#  *
#  * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * ComAcmeCoyoteProxyClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #ComAcmeCoyoteProxy.
#  */
# 
# struct _ComAcmeCoyoteProxyPrivate
# {
#   GData *qdata;
# };
# 
# static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface);
# 
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY,
#                          G_ADD_PRIVATE (ComAcmeCoyoteProxy)
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY,
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init))
# 
# #endif
# static void
# com_acme_coyote_proxy_finalize (GObject *object)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object);
#   g_datalist_clear (&proxy->priv->qdata);
#   G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object);
# }
# 
# static void
# com_acme_coyote_proxy_get_property (GObject      *object,
#   guint         prop_id,
#   GValue       *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   GVariant *variant;
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name);
#   if (info->use_gvariant)
#     {
#       g_value_set_variant (value, variant);
#     }
#   else
#     {
#       if (variant != NULL)
#         g_dbus_gvariant_to_gvalue (variant, value);
#     }
#   if (variant != NULL)
#     g_variant_unref (variant);
# }
# 
# static void
# com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy,
#   GAsyncResult *res,
#   gpointer      user_data)
# {
#   const _ExtendedGDBusPropertyInfo *info = user_data;
#   GError *error;
#   GVariant *_ret;
#   error = NULL;
#   _ret = g_dbus_proxy_call_finish (proxy, res, &error);
#   if (!_ret)
#     {
#       g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)",
#                  info->parent_struct.name, 
#                  error->message, g_quark_to_string (error->domain), error->code);
#       g_error_free (error);
#     }
#   else
#     {
#       g_variant_unref (_ret);
#     }
# }
# 
# static void
# com_acme_coyote_proxy_set_property (GObject      *object,
#   guint         prop_id,
#   const GValue *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   GVariant *variant;
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature));
#   g_dbus_proxy_call (G_DBUS_PROXY (object),
#     "org.freedesktop.DBus.Properties.Set",
#     g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct);
#   g_variant_unref (variant);
# }
# 
# static void
# com_acme_coyote_proxy_g_signal (GDBusProxy *proxy,
#   const gchar *sender_name G_GNUC_UNUSED,
#   const gchar *signal_name,
#   GVariant *parameters)
# {
#   _ExtendedGDBusSignalInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   gsize n;
#   guint signal_id;
#   info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name);
#   if (info == NULL)
#     return;
#   num_params = g_variant_n_children (parameters);
#   paramv = g_new0 (GValue, num_params + 1);
#   g_value_init (&paramv[0], TYPE_COM_ACME_COYOTE);
#   g_value_set_object (&paramv[0], proxy);
#   g_variant_iter_init (&iter, parameters);
#   n = 1;
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE);
#   g_signal_emitv (paramv, signal_id, 0, NULL);
#   for (n = 0; n < num_params + 1; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static void
# com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy,
#   GVariant *changed_properties,
#   const gchar *const *invalidated_properties)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy);
#   guint n;
#   const gchar *key;
#   GVariantIter *iter;
#   _ExtendedGDBusPropertyInfo *info;
#   g_variant_get (changed_properties, "a{sv}", &iter);
#   while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key);
#       g_datalist_remove_data (&proxy->priv->qdata, key);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
#   g_variant_iter_free (iter);
#   for (n = 0; invalidated_properties[n] != NULL; n++)
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]);
#       g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
# }
# 
# static const gchar *
# com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object);
#   GVariant *variant;
#   const gchar *value = NULL;
#   variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood");
#   if (variant != NULL)
#     {
#       value = g_variant_get_string (variant, NULL);
#       g_variant_unref (variant);
#     }
#   return value;
# }
# 
# static void
# com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy);
# #else
#   proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate);
# #endif
# 
#   g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ());
# }
# 
# static void
# com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusProxyClass *proxy_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize     = com_acme_coyote_proxy_finalize;
#   gobject_class->get_property = com_acme_coyote_proxy_get_property;
#   gobject_class->set_property = com_acme_coyote_proxy_set_property;
# 
#   proxy_class = G_DBUS_PROXY_CLASS (klass);
#   proxy_class->g_signal = com_acme_coyote_proxy_g_signal;
#   proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed;
# 
#   com_acme_coyote_override_properties (gobject_class, 1);
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate));
# #endif
# }
# 
# static void
# com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface)
# {
#   iface->get_mood = com_acme_coyote_proxy_get_mood;
# }
# 
# /**
#  * com_acme_coyote_proxy_new:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>. See g_dbus_proxy_new() for more details.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# com_acme_coyote_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
# }
# 
# /**
#  * com_acme_coyote_proxy_new_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with com_acme_coyote_proxy_new().
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * com_acme_coyote_proxy_new_sync:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>. See g_dbus_proxy_new_sync() for more details.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation.
#  *
#  * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# com_acme_coyote_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_COM_ACME_COYOTE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
# }
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with com_acme_coyote_proxy_new_for_bus().
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * com_acme_coyote_proxy_new_for_bus_sync:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set.
#  */
# ComAcmeCoyote *
# com_acme_coyote_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_COM_ACME_COYOTE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.acme.Coyote", NULL);
#   if (ret != NULL)
#     return COM_ACME_COYOTE (ret);
#   else
#     return NULL;
# }
# 
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * ComAcmeCoyoteSkeleton:
#  *
#  * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * ComAcmeCoyoteSkeletonClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #ComAcmeCoyoteSkeleton.
#  */
# 
# struct _ComAcmeCoyoteSkeletonPrivate
# {
#   GValue *properties;
#   GList *changed_properties;
#   GSource *changed_properties_idle_source;
#   GMainContext *context;
#   GMutex lock;
# };
# 
# static void
# _com_acme_coyote_skeleton_handle_method_call (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name,
#   const gchar *method_name,
#   GVariant *parameters,
#   GDBusMethodInvocation *invocation,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   _ExtendedGDBusMethodInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   guint num_extra;
#   gsize n;
#   guint signal_id;
#   GValue return_value = G_VALUE_INIT;
#   info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
#   g_assert (info != NULL);
#   num_params = g_variant_n_children (parameters);
#   num_extra = info->pass_fdlist ? 3 : 2;  paramv = g_new0 (GValue, num_params + num_extra);
#   n = 0;
#   g_value_init (&paramv[n], TYPE_COM_ACME_COYOTE);
#   g_value_set_object (&paramv[n++], skeleton);
#   g_value_init (&paramv[n], G_TYPE_DBUS_METHOD_INVOCATION);
#   g_value_set_object (&paramv[n++], invocation);
#   if (info->pass_fdlist)
#     {
# #ifdef G_OS_UNIX
#       g_value_init (&paramv[n], G_TYPE_UNIX_FD_LIST);
#       g_value_set_object (&paramv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
# #else
#       g_assert_not_reached ();
# #endif
#     }
#   g_variant_iter_init (&iter, parameters);
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE);
#   g_value_init (&return_value, G_TYPE_BOOLEAN);
#   g_signal_emitv (paramv, signal_id, 0, &return_value);
#   if (!g_value_get_boolean (&return_value))
#     g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
#   g_value_unset (&return_value);
#   for (n = 0; n < num_params + num_extra; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static GVariant *
# _com_acme_coyote_skeleton_handle_get_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GError **error,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   GVariant *ret;
#   ret = NULL;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       g_value_init (&value, pspec->value_type);
#       g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
#       g_value_unset (&value);
#     }
#   return ret;
# }
# 
# static gboolean
# _com_acme_coyote_skeleton_handle_set_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GVariant *variant,
#   GError **error,
#   gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   gboolean ret;
#   ret = FALSE;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       if (info->use_gvariant)
#         g_value_set_variant (&value, variant);
#       else
#         g_dbus_gvariant_to_gvalue (variant, &value);
#       g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       g_value_unset (&value);
#       ret = TRUE;
#     }
#   return ret;
# }
# 
# static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable =
# {
#   _com_acme_coyote_skeleton_handle_method_call,
#   _com_acme_coyote_skeleton_handle_get_property,
#   _com_acme_coyote_skeleton_handle_set_property,
#   {NULL}
# };
# 
# static GDBusInterfaceInfo *
# com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return com_acme_coyote_interface_info ();
# }
# 
# static GDBusInterfaceVTable *
# com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable;
# }
# 
# static GVariant *
# com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton);
# 
#   GVariantBuilder builder;
#   guint n;
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   if (_com_acme_coyote_interface_info.parent_struct.properties == NULL)
#     goto out;
#   for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++)
#     {
#       GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n];
#       if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
#         {
#           GVariant *value;
#           value = _com_acme_coyote_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", info->name, NULL, skeleton);
#           if (value != NULL)
#             {
#               g_variant_take_ref (value);
#               g_variant_builder_add (&builder, "{sv}", info->name, value);
#               g_variant_unref (value);
#             }
#         }
#     }
# out:
#   return g_variant_builder_end (&builder);
# }
# 
# static gboolean _com_acme_coyote_emit_changed (gpointer user_data);
# 
# static void
# com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton);
#   gboolean emit_changed = FALSE;
# 
#   g_mutex_lock (&skeleton->priv->lock);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     {
#       g_source_destroy (skeleton->priv->changed_properties_idle_source);
#       skeleton->priv->changed_properties_idle_source = NULL;
#       emit_changed = TRUE;
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
# 
#   if (emit_changed)
#     _com_acme_coyote_emit_changed (skeleton);
# }
# 
# static void
# _com_acme_coyote_on_signal_surprised (
#     ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
# 
#   GList      *connections, *l;
#   GVariant   *signal_variant;
#   connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
# 
#   signal_variant = g_variant_ref_sink (g_variant_new ("()"));
#   for (l = connections; l != NULL; l = l->next)
#     {
#       GDBusConnection *connection = l->data;
#       g_dbus_connection_emit_signal (connection,
#         NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised",
#         signal_variant, NULL);
#     }
#   g_variant_unref (signal_variant);
#   g_list_free_full (connections, g_object_unref);
# }
# 
# static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface);
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_ADD_PRIVATE (ComAcmeCoyoteSkeleton)
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init))
# 
# #endif
# static void
# com_acme_coyote_skeleton_finalize (GObject *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   guint n;
#   for (n = 0; n < 1; n++)
#     g_value_unset (&skeleton->priv->properties[n]);
#   g_free (skeleton->priv->properties);
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     g_source_destroy (skeleton->priv->changed_properties_idle_source);
#   g_main_context_unref (skeleton->priv->context);
#   g_mutex_clear (&skeleton->priv->lock);
#   G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object);
# }
# 
# static void
# com_acme_coyote_skeleton_get_property (GObject      *object,
#   guint         prop_id,
#   GValue       *value,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   g_mutex_lock (&skeleton->priv->lock);
#   g_value_copy (&skeleton->priv->properties[prop_id - 1], value);
#   g_mutex_unlock (&skeleton->priv->lock);
# }
# 
# static gboolean
# _com_acme_coyote_emit_changed (gpointer user_data)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data);
#   GList *l;
#   GVariantBuilder builder;
#   GVariantBuilder invalidated_builder;
#   guint num_changes;
# 
#   g_mutex_lock (&skeleton->priv->lock);
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as"));
#   for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next)
#     {
#       ChangedProperty *cp = l->data;
#       GVariant *variant;
#       const GValue *cur_value;
# 
#       cur_value = &skeleton->priv->properties[cp->prop_id - 1];
#       if (!_g_value_equal (cur_value, &cp->orig_value))
#         {
#           variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature));
#           g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant);
#           g_variant_unref (variant);
#           num_changes++;
#         }
#     }
#   if (num_changes > 0)
#     {
#       GList *connections, *ll;
#       GVariant *signal_variant;
#       signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote",
#                                            &builder, &invalidated_builder));
#       connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
#       for (ll = connections; ll != NULL; ll = ll->next)
#         {
#           GDBusConnection *connection = ll->data;
# 
#           g_dbus_connection_emit_signal (connection,
#                                          NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)),
#                                          "org.freedesktop.DBus.Properties",
#                                          "PropertiesChanged",
#                                          signal_variant,
#                                          NULL);
#         }
#       g_variant_unref (signal_variant);
#       g_list_free_full (connections, g_object_unref);
#     }
#   else
#     {
#       g_variant_builder_clear (&builder);
#       g_variant_builder_clear (&invalidated_builder);
#     }
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   skeleton->priv->changed_properties = NULL;
#   skeleton->priv->changed_properties_idle_source = NULL;
#   g_mutex_unlock (&skeleton->priv->lock);
#   return FALSE;
# }
# 
# static void
# _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value)
# {
#   ChangedProperty *cp;
#   GList *l;
#   cp = NULL;
#   for (l = skeleton->priv->changed_properties; l != NULL; l = l->next)
#     {
#       ChangedProperty *i_cp = l->data;
#       if (i_cp->info == info)
#         {
#           cp = i_cp;
#           break;
#         }
#     }
#   if (cp == NULL)
#     {
#       cp = g_new0 (ChangedProperty, 1);
#       cp->prop_id = prop_id;
#       cp->info = info;
#       skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp);
#       g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value));
#       g_value_copy (orig_value, &cp->orig_value);
#     }
# }
# 
# static void
# com_acme_coyote_skeleton_notify (GObject      *object,
#   GParamSpec *pspec G_GNUC_UNUSED)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_mutex_lock (&skeleton->priv->lock);
#   if (skeleton->priv->changed_properties != NULL &&
#       skeleton->priv->changed_properties_idle_source == NULL)
#     {
#       skeleton->priv->changed_properties_idle_source = g_idle_source_new ();
#       g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT);
#       g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref);
#       g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed");
#       g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context);
#       g_source_unref (skeleton->priv->changed_properties_idle_source);
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
# }
# 
# static void
# com_acme_coyote_skeleton_set_property (GObject      *object,
#   guint         prop_id,
#   const GValue *value,
#   GParamSpec   *pspec)
# {
#   const _ExtendedGDBusPropertyInfo *info;
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   g_assert (prop_id != 0 && prop_id - 1 < 1);
#   info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1];
#   g_mutex_lock (&skeleton->priv->lock);
#   g_object_freeze_notify (object);
#   if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1]))
#     {
#       if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL &&
#           info->emits_changed_signal)
#         _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]);
#       g_value_copy (value, &skeleton->priv->properties[prop_id - 1]);
#       g_object_notify_by_pspec (object, pspec);
#     }
#   g_mutex_unlock (&skeleton->priv->lock);
#   g_object_thaw_notify (object);
# }
# 
# static void
# com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton);
# #else
#   skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate);
# #endif
# 
#   g_mutex_init (&skeleton->priv->lock);
#   skeleton->priv->context = g_main_context_ref_thread_default ();
#   skeleton->priv->properties = g_new0 (GValue, 1);
#   g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING);
# }
# 
# static const gchar *
# com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object)
# {
#   ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object);
#   const gchar *value;
#   g_mutex_lock (&skeleton->priv->lock);
#   value = g_value_get_string (&(skeleton->priv->properties[0]));
#   g_mutex_unlock (&skeleton->priv->lock);
#   return value;
# }
# 
# static void
# com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusInterfaceSkeletonClass *skeleton_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize = com_acme_coyote_skeleton_finalize;
#   gobject_class->get_property = com_acme_coyote_skeleton_get_property;
#   gobject_class->set_property = com_acme_coyote_skeleton_set_property;
#   gobject_class->notify       = com_acme_coyote_skeleton_notify;
# 
# 
#   com_acme_coyote_override_properties (gobject_class, 1);
# 
#   skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
#   skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info;
#   skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties;
#   skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush;
#   skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate));
# #endif
# }
# 
# static void
# com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface)
# {
#   iface->surprised = _com_acme_coyote_on_signal_surprised;
#   iface->get_mood = com_acme_coyote_skeleton_get_mood;
# }
# 
# /**
#  * com_acme_coyote_skeleton_new:
#  *
#  * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-com-acme-Coyote.top_of_page">com.acme.Coyote</link>.
#  *
#  * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object.
#  */
# ComAcmeCoyote *
# com_acme_coyote_skeleton_new (void)
# {
#   return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL));
# }
# 
# /* ------------------------------------------------------------------------
#  * Code for interface org.project.Bar.Frobnicator
#  * ------------------------------------------------------------------------
#  */
# 
# /**
#  * SECTION:OrgProjectBarFrobnicator
#  * @title: OrgProjectBarFrobnicator
#  * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface
#  *
#  * This section contains code for working with the <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link> D-Bus interface in C.
#  */
# 
# /* ---- Introspection data for org.project.Bar.Frobnicator ---- */
# 
# static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method =
# {
#   {
#     -1,
#     (gchar *) "RandomMethod",
#     NULL,
#     NULL,
#     NULL
#   },
#   "handle-random-method",
#   FALSE
# };
# 
# static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] =
# {
#   &_org_project_bar_frobnicator_method_info_random_method.parent_struct,
#   NULL
# };
# 
# static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info =
# {
#   {
#     -1,
#     (gchar *) "org.project.Bar.Frobnicator",
#     (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers,
#     NULL,
#     NULL,
#     NULL
#   },
#   "org-project-bar-frobnicator",
# };
# 
# 
# /**
#  * org_project_bar_frobnicator_interface_info:
#  *
#  * Gets a machine-readable description of the <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link> D-Bus interface.
#  *
#  * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
#  */
# GDBusInterfaceInfo *
# org_project_bar_frobnicator_interface_info (void)
# {
#   return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct;
# }
# 
# /**
#  * org_project_bar_frobnicator_override_properties:
#  * @klass: The class structure for a #GObject derived class.
#  * @property_id_begin: The property id to assign to the first overridden property.
#  *
#  * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class.
#  * The properties are overridden in the order they are defined.
#  *
#  * Returns: The last property id.
#  */
# guint
# org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin)
# {
#   return property_id_begin - 1;
# }
# 
# 
# 
# /**
#  * OrgProjectBarFrobnicator:
#  *
#  * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorIface:
#  * @parent_iface: The parent interface.
#  * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal.
#  *
#  * Virtual table for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  */
# 
# typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface;
# G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT)
# 
# static void
# org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface)
# {
#   /* GObject signals for incoming D-Bus method calls: */
#   /**
#    * OrgProjectBarFrobnicator::handle-random-method:
#    * @object: A #OrgProjectBarFrobnicator.
#    * @invocation: A #GDBusMethodInvocation.
#    *
#    * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method.
#    *
#    * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call org_project_bar_frobnicator_complete_random_method() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
#    *
#    * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.
#    */
#   g_signal_new ("handle-random-method",
#     G_TYPE_FROM_INTERFACE (iface),
#     G_SIGNAL_RUN_LAST,
#     G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method),
#     g_signal_accumulator_true_handled,
#     NULL,
#     g_cclosure_marshal_generic,
#     G_TYPE_BOOLEAN,
#     1,
#     G_TYPE_DBUS_METHOD_INVOCATION);
# 
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously invokes the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method on @proxy.
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method.
#  */
# void
# org_project_bar_frobnicator_call_random_method (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data)
# {
#   g_dbus_proxy_call (G_DBUS_PROXY (proxy),
#     "RandomMethod",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     callback,
#     user_data);
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method_finish:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method().
#  * @error: Return location for error or %NULL.
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_call_random_method().
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# org_project_bar_frobnicator_call_random_method_finish (
#     OrgProjectBarFrobnicator *proxy,
#     GAsyncResult *res,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_call_random_method_sync:
#  * @proxy: A #OrgProjectBarFrobnicatorProxy.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL.
#  *
#  * Synchronously invokes the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method.
#  *
#  * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set.
#  */
# gboolean
# org_project_bar_frobnicator_call_random_method_sync (
#     OrgProjectBarFrobnicator *proxy,
#     GCancellable *cancellable,
#     GError **error)
# {
#   GVariant *_ret;
#   _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
#     "RandomMethod",
#     g_variant_new ("()"),
#     G_DBUS_CALL_FLAGS_NONE,
#     -1,
#     cancellable,
#     error);
#   if (_ret == NULL)
#     goto _out;
#   g_variant_get (_ret,
#                  "()");
#   g_variant_unref (_ret);
# _out:
#   return _ret != NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_complete_random_method:
#  * @object: A #OrgProjectBarFrobnicator.
#  * @invocation: (transfer full): A #GDBusMethodInvocation.
#  *
#  * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-org-project-Bar-Frobnicator.RandomMethod">RandomMethod()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
#  *
#  * This method will free @invocation, you cannot use it afterwards.
#  */
# void
# org_project_bar_frobnicator_complete_random_method (
#     OrgProjectBarFrobnicator *object G_GNUC_UNUSED,
#     GDBusMethodInvocation *invocation)
# {
#   g_dbus_method_invocation_return_value (invocation,
#     g_variant_new ("()"));
# }
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * OrgProjectBarFrobnicatorProxy:
#  *
#  * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorProxyClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #OrgProjectBarFrobnicatorProxy.
#  */
# 
# struct _OrgProjectBarFrobnicatorProxyPrivate
# {
#   GData *qdata;
# };
# 
# static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface);
# 
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY,
#                          G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy)
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY,
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init))
# 
# #endif
# static void
# org_project_bar_frobnicator_proxy_finalize (GObject *object)
# {
#   OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object);
#   g_datalist_clear (&proxy->priv->qdata);
#   G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object);
# }
# 
# static void
# org_project_bar_frobnicator_proxy_get_property (GObject      *object G_GNUC_UNUSED,
#   guint         prop_id G_GNUC_UNUSED,
#   GValue       *value G_GNUC_UNUSED,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
# }
# 
# static void
# org_project_bar_frobnicator_proxy_set_property (GObject      *object G_GNUC_UNUSED,
#   guint         prop_id G_GNUC_UNUSED,
#   const GValue *value G_GNUC_UNUSED,
#   GParamSpec   *pspec G_GNUC_UNUSED)
# {
# }
# 
# static void
# org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy,
#   const gchar *sender_name G_GNUC_UNUSED,
#   const gchar *signal_name,
#   GVariant *parameters)
# {
#   _ExtendedGDBusSignalInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   gsize n;
#   guint signal_id;
#   info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name);
#   if (info == NULL)
#     return;
#   num_params = g_variant_n_children (parameters);
#   paramv = g_new0 (GValue, num_params + 1);
#   g_value_init (&paramv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_set_object (&paramv[0], proxy);
#   g_variant_iter_init (&iter, parameters);
#   n = 1;
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_signal_emitv (paramv, signal_id, 0, NULL);
#   for (n = 0; n < num_params + 1; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static void
# org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy,
#   GVariant *changed_properties,
#   const gchar *const *invalidated_properties)
# {
#   OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy);
#   guint n;
#   const gchar *key;
#   GVariantIter *iter;
#   _ExtendedGDBusPropertyInfo *info;
#   g_variant_get (changed_properties, "a{sv}", &iter);
#   while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key);
#       g_datalist_remove_data (&proxy->priv->qdata, key);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
#   g_variant_iter_free (iter);
#   for (n = 0; invalidated_properties[n] != NULL; n++)
#     {
#       info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]);
#       g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
#       if (info != NULL)
#         g_object_notify (G_OBJECT (proxy), info->hyphen_name);
#     }
# }
# 
# static void
# org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy);
# #else
#   proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate);
# #endif
# 
#   g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ());
# }
# 
# static void
# org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusProxyClass *proxy_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize     = org_project_bar_frobnicator_proxy_finalize;
#   gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property;
#   gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property;
# 
#   proxy_class = G_DBUS_PROXY_CLASS (klass);
#   proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal;
#   proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate));
# #endif
# }
# 
# static void
# org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED)
# {
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>. See g_dbus_proxy_new() for more details.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# org_project_bar_frobnicator_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_proxy_new().
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_sync:
#  * @connection: A #GDBusConnection.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>. See g_dbus_proxy_new_sync() for more details.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
#  * @user_data: User data to pass to @callback.
#  *
#  * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
#  * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation.
#  *
#  * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
#  */
# void
# org_project_bar_frobnicator_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data)
# {
#   g_async_initable_new_async (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus_finish:
#  * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus().
#  * @error: Return location for error or %NULL
#  *
#  * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus().
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error)
# {
#   GObject *ret;
#   GObject *source_object;
#   source_object = g_async_result_get_source_object (res);
#   ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
#   g_object_unref (source_object);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# /**
#  * org_project_bar_frobnicator_proxy_new_for_bus_sync:
#  * @bus_type: A #GBusType.
#  * @flags: Flags from the #GDBusProxyFlags enumeration.
#  * @name: A bus name (well-known or unique).
#  * @object_path: An object path.
#  * @cancellable: (nullable): A #GCancellable or %NULL.
#  * @error: Return location for error or %NULL
#  *
#  * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
#  *
#  * The calling thread is blocked until a reply is received.
#  *
#  * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error)
# {
#   GInitable *ret;
#   ret = g_initable_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "org.project.Bar.Frobnicator", NULL);
#   if (ret != NULL)
#     return ORG_PROJECT_BAR_FROBNICATOR (ret);
#   else
#     return NULL;
# }
# 
# 
# /* ------------------------------------------------------------------------ */
# 
# /**
#  * OrgProjectBarFrobnicatorSkeleton:
#  *
#  * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API.
#  */
# 
# /**
#  * OrgProjectBarFrobnicatorSkeletonClass:
#  * @parent_class: The parent class.
#  *
#  * Class structure for #OrgProjectBarFrobnicatorSkeleton.
#  */
# 
# struct _OrgProjectBarFrobnicatorSkeletonPrivate
# {
#   GValue *properties;
#   GList *changed_properties;
#   GSource *changed_properties_idle_source;
#   GMainContext *context;
#   GMutex lock;
# };
# 
# static void
# _org_project_bar_frobnicator_skeleton_handle_method_call (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name,
#   const gchar *method_name,
#   GVariant *parameters,
#   GDBusMethodInvocation *invocation,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   _ExtendedGDBusMethodInfo *info;
#   GVariantIter iter;
#   GVariant *child;
#   GValue *paramv;
#   gsize num_params;
#   guint num_extra;
#   gsize n;
#   guint signal_id;
#   GValue return_value = G_VALUE_INIT;
#   info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
#   g_assert (info != NULL);
#   num_params = g_variant_n_children (parameters);
#   num_extra = info->pass_fdlist ? 3 : 2;  paramv = g_new0 (GValue, num_params + num_extra);
#   n = 0;
#   g_value_init (&paramv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_set_object (&paramv[n++], skeleton);
#   g_value_init (&paramv[n], G_TYPE_DBUS_METHOD_INVOCATION);
#   g_value_set_object (&paramv[n++], invocation);
#   if (info->pass_fdlist)
#     {
# #ifdef G_OS_UNIX
#       g_value_init (&paramv[n], G_TYPE_UNIX_FD_LIST);
#       g_value_set_object (&paramv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
# #else
#       g_assert_not_reached ();
# #endif
#     }
#   g_variant_iter_init (&iter, parameters);
#   while ((child = g_variant_iter_next_value (&iter)) != NULL)
#     {
#       _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
#       if (arg_info->use_gvariant)
#         {
#           g_value_init (&paramv[n], G_TYPE_VARIANT);
#           g_value_set_variant (&paramv[n], child);
#           n++;
#         }
#       else
#         g_dbus_gvariant_to_gvalue (child, &paramv[n++]);
#       g_variant_unref (child);
#     }
#   signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR);
#   g_value_init (&return_value, G_TYPE_BOOLEAN);
#   g_signal_emitv (paramv, signal_id, 0, &return_value);
#   if (!g_value_get_boolean (&return_value))
#     g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
#   g_value_unset (&return_value);
#   for (n = 0; n < num_params + num_extra; n++)
#     g_value_unset (&paramv[n]);
#   g_free (paramv);
# }
# 
# static GVariant *
# _org_project_bar_frobnicator_skeleton_handle_get_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GError **error,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   GVariant *ret;
#   ret = NULL;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       g_value_init (&value, pspec->value_type);
#       g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
#       g_value_unset (&value);
#     }
#   return ret;
# }
# 
# static gboolean
# _org_project_bar_frobnicator_skeleton_handle_set_property (
#   GDBusConnection *connection G_GNUC_UNUSED,
#   const gchar *sender G_GNUC_UNUSED,
#   const gchar *object_path G_GNUC_UNUSED,
#   const gchar *interface_name G_GNUC_UNUSED,
#   const gchar *property_name,
#   GVariant *variant,
#   GError **error,
#   gpointer user_data)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data);
#   GValue value = G_VALUE_INIT;
#   GParamSpec *pspec;
#   _ExtendedGDBusPropertyInfo *info;
#   gboolean ret;
#   ret = FALSE;
#   info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name);
#   g_assert (info != NULL);
#   pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
#   if (pspec == NULL)
#     {
#       g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
#     }
#   else
#     {
#       if (info->use_gvariant)
#         g_value_set_variant (&value, variant);
#       else
#         g_dbus_gvariant_to_gvalue (variant, &value);
#       g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
#       g_value_unset (&value);
#       ret = TRUE;
#     }
#   return ret;
# }
# 
# static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable =
# {
#   _org_project_bar_frobnicator_skeleton_handle_method_call,
#   _org_project_bar_frobnicator_skeleton_handle_get_property,
#   _org_project_bar_frobnicator_skeleton_handle_set_property,
#   {NULL}
# };
# 
# static GDBusInterfaceInfo *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return org_project_bar_frobnicator_interface_info ();
# }
# 
# static GDBusInterfaceVTable *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED)
# {
#   return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable;
# }
# 
# static GVariant *
# org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton);
# 
#   GVariantBuilder builder;
#   guint n;
#   g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
#   if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL)
#     goto out;
#   for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++)
#     {
#       GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n];
#       if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
#         {
#           GVariant *value;
#           value = _org_project_bar_frobnicator_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.Bar.Frobnicator", info->name, NULL, skeleton);
#           if (value != NULL)
#             {
#               g_variant_take_ref (value);
#               g_variant_builder_add (&builder, "{sv}", info->name, value);
#               g_variant_unref (value);
#             }
#         }
#     }
# out:
#   return g_variant_builder_end (&builder);
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED)
# {
# }
# 
# static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface);
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton)
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init))
# 
# #else
# G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
#                          G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init))
# 
# #endif
# static void
# org_project_bar_frobnicator_skeleton_finalize (GObject *object)
# {
#   OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object);
#   g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
#   if (skeleton->priv->changed_properties_idle_source != NULL)
#     g_source_destroy (skeleton->priv->changed_properties_idle_source);
#   g_main_context_unref (skeleton->priv->context);
#   g_mutex_clear (&skeleton->priv->lock);
#   G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object);
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton)
# {
# #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38
#   skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton);
# #else
#   skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate);
# #endif
# 
#   g_mutex_init (&skeleton->priv->lock);
#   skeleton->priv->context = g_main_context_ref_thread_default ();
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass)
# {
#   GObjectClass *gobject_class;
#   GDBusInterfaceSkeletonClass *skeleton_class;
# 
#   gobject_class = G_OBJECT_CLASS (klass);
#   gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize;
# 
#   skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
#   skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info;
#   skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties;
#   skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush;
#   skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable;
# 
# #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38
#   g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate));
# #endif
# }
# 
# static void
# org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED)
# {
# }
# 
# /**
#  * org_project_bar_frobnicator_skeleton_new:
#  *
#  * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-org-project-Bar-Frobnicator.top_of_page">org.project.Bar.Frobnicator</link>.
#  *
#  * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object.
#  */
# OrgProjectBarFrobnicator *
# org_project_bar_frobnicator_skeleton_new (void)
# {
#   return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL));
# }
ok 19 __main__.TestCodegen.test_unix_fd_types_and_annotations
# tmpdir: /tmp/tmp6vcjf8qy
# codegen: /usr/bin/gdbus-codegen
# /tmp/tmp6vcjf8qy/tmpm88c_rc8.xml: 
#             <node>
#               <interface name="FDPassing">
#                 <method name="HelloFD">
#                   <annotation name="org.gtk.GDBus.C.UnixFD" value="1"/>
#                   <arg name="greeting" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotation">
#                   <arg name="greeting" direction="in" type="h"/>
#                   <arg name="greeting_locale" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="h"/>
#                   <arg name="response_locale" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotationNested">
#                   <arg name="files" type="a{sh}" direction="in"/>
#                 </method>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp6vcjf8qy/tmpm88c_rc8.xml', '--output', '/dev/stdout', '--header']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for FDPassing */
# 
# #define TYPE_FDPASSING (fdpassing_get_type ())
# #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing))
# #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING))
# #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface))
# 
# struct _FDPassing;
# typedef struct _FDPassing FDPassing;
# typedef struct _FDPassingIface FDPassingIface;
# 
# struct _FDPassingIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_hello_fd) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *arg_greeting);
# 
#   gboolean (*handle_no_annotation) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale);
# 
#   gboolean (*handle_no_annotation_nested) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *arg_files);
# 
# };
# 
# GType fdpassing_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *fdpassing_interface_info (void);
# guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void fdpassing_complete_hello_fd (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *response);
# 
# void fdpassing_complete_no_annotation (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *response,
#     const gchar *response_locale);
# 
# void fdpassing_complete_no_annotation_nested (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void fdpassing_call_hello_fd (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GUnixFDList *fd_list,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_hello_fd_finish (
#     FDPassing *proxy,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_hello_fd_sync (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GUnixFDList  *fd_list,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_finish (
#     FDPassing *proxy,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_sync (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation_nested (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_nested_finish (
#     FDPassing *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_nested_sync (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ())
# #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy))
# #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY))
# #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY))
# 
# typedef struct _FDPassingProxy FDPassingProxy;
# typedef struct _FDPassingProxyClass FDPassingProxyClass;
# typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate;
# 
# struct _FDPassingProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   FDPassingProxyPrivate *priv;
# };
# 
# struct _FDPassingProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType fdpassing_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref)
# #endif
# 
# void fdpassing_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void fdpassing_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ())
# #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton))
# #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON))
# #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON))
# 
# typedef struct _FDPassingSkeleton FDPassingSkeleton;
# typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass;
# typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate;
# 
# struct _FDPassingSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   FDPassingSkeletonPrivate *priv;
# };
# 
# struct _FDPassingSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType fdpassing_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref)
# #endif
# 
# FDPassing *fdpassing_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# /tmp/tmp6vcjf8qy/tmp50h9gncm.xml: 
#             <node>
#               <interface name="FDPassing">
#                 <method name="HelloFD">
#                   <annotation name="org.gtk.GDBus.C.UnixFD" value="1"/>
#                   <arg name="greeting" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotation">
#                   <arg name="greeting" direction="in" type="h"/>
#                   <arg name="greeting_locale" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="h"/>
#                   <arg name="response_locale" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotationNested">
#                   <arg name="files" type="a{sh}" direction="in"/>
#                 </method>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp6vcjf8qy/tmp50h9gncm.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '2.32']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for FDPassing */
# 
# #define TYPE_FDPASSING (fdpassing_get_type ())
# #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing))
# #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING))
# #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface))
# 
# struct _FDPassing;
# typedef struct _FDPassing FDPassing;
# typedef struct _FDPassingIface FDPassingIface;
# 
# struct _FDPassingIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_hello_fd) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *arg_greeting);
# 
#   gboolean (*handle_no_annotation) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale);
# 
#   gboolean (*handle_no_annotation_nested) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *arg_files);
# 
# };
# 
# GType fdpassing_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *fdpassing_interface_info (void);
# guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void fdpassing_complete_hello_fd (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *response);
# 
# void fdpassing_complete_no_annotation (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GVariant *response,
#     const gchar *response_locale);
# 
# void fdpassing_complete_no_annotation_nested (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation);
# 
# 
# 
# /* D-Bus method calls: */
# void fdpassing_call_hello_fd (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GUnixFDList *fd_list,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_hello_fd_finish (
#     FDPassing *proxy,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_hello_fd_sync (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GUnixFDList  *fd_list,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_finish (
#     FDPassing *proxy,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_sync (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation_nested (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_nested_finish (
#     FDPassing *proxy,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_nested_sync (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ())
# #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy))
# #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY))
# #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY))
# 
# typedef struct _FDPassingProxy FDPassingProxy;
# typedef struct _FDPassingProxyClass FDPassingProxyClass;
# typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate;
# 
# struct _FDPassingProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   FDPassingProxyPrivate *priv;
# };
# 
# struct _FDPassingProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType fdpassing_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref)
# #endif
# 
# void fdpassing_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void fdpassing_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ())
# #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton))
# #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON))
# #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON))
# 
# typedef struct _FDPassingSkeleton FDPassingSkeleton;
# typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass;
# typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate;
# 
# struct _FDPassingSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   FDPassingSkeletonPrivate *priv;
# };
# 
# struct _FDPassingSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType fdpassing_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref)
# #endif
# 
# FDPassing *fdpassing_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
# /tmp/tmp6vcjf8qy/tmphro6m41a.xml: 
#             <node>
#               <interface name="FDPassing">
#                 <method name="HelloFD">
#                   <annotation name="org.gtk.GDBus.C.UnixFD" value="1"/>
#                   <arg name="greeting" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotation">
#                   <arg name="greeting" direction="in" type="h"/>
#                   <arg name="greeting_locale" direction="in" type="s"/>
#                   <arg name="response" direction="out" type="h"/>
#                   <arg name="response_locale" direction="out" type="s"/>
#                 </method>
#                 <method name="NoAnnotationNested">
#                   <arg name="files" type="a{sh}" direction="in"/>
#                 </method>
#               </interface>
#             </node>
# Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp6vcjf8qy/tmphro6m41a.xml', '--output', '/dev/stdout', '--header', '--glib-min-required', '2.64']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /*
#  * This file is generated by gdbus-codegen, do not modify it.
#  *
#  * The license of this code is the same as for the D-Bus interface description
#  * it was derived from. Note that it links to GLib, so must comply with the
#  * LGPL linking clauses.
#  */
# 
# #ifndef __STDOUT__
# #define __STDOUT__
# 
# #include <gio/gio.h>
# 
# G_BEGIN_DECLS
# 
# 
# /* ------------------------------------------------------------------------ */
# /* Declarations for FDPassing */
# 
# #define TYPE_FDPASSING (fdpassing_get_type ())
# #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing))
# #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING))
# #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface))
# 
# struct _FDPassing;
# typedef struct _FDPassing FDPassing;
# typedef struct _FDPassingIface FDPassingIface;
# 
# struct _FDPassingIface
# {
#   GTypeInterface parent_iface;
# 
#   gboolean (*handle_hello_fd) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *arg_greeting);
# 
#   gboolean (*handle_no_annotation) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale);
# 
#   gboolean (*handle_no_annotation_nested) (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     GVariant *arg_files);
# 
# };
# 
# GType fdpassing_get_type (void) G_GNUC_CONST;
# 
# GDBusInterfaceInfo *fdpassing_interface_info (void);
# guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin);
# 
# 
# /* D-Bus method call completion functions: */
# void fdpassing_complete_hello_fd (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     const gchar *response);
# 
# void fdpassing_complete_no_annotation (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list,
#     GVariant *response,
#     const gchar *response_locale);
# 
# void fdpassing_complete_no_annotation_nested (
#     FDPassing *object,
#     GDBusMethodInvocation *invocation,
#     GUnixFDList *fd_list);
# 
# 
# 
# /* D-Bus method calls: */
# void fdpassing_call_hello_fd (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList *fd_list,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_hello_fd_finish (
#     FDPassing *proxy,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_hello_fd_sync (
#     FDPassing *proxy,
#     const gchar *arg_greeting,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList  *fd_list,
#     gchar **out_response,
#     GUnixFDList **out_fd_list,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList *fd_list,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_finish (
#     FDPassing *proxy,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GUnixFDList **out_fd_list,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_sync (
#     FDPassing *proxy,
#     GVariant *arg_greeting,
#     const gchar *arg_greeting_locale,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList  *fd_list,
#     GVariant **out_response,
#     gchar **out_response_locale,
#     GUnixFDList **out_fd_list,
#     GCancellable *cancellable,
#     GError **error);
# 
# void fdpassing_call_no_annotation_nested (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList *fd_list,
#     GCancellable *cancellable,
#     GAsyncReadyCallback callback,
#     gpointer user_data);
# 
# gboolean fdpassing_call_no_annotation_nested_finish (
#     FDPassing *proxy,
#     GUnixFDList **out_fd_list,
#     GAsyncResult *res,
#     GError **error);
# 
# gboolean fdpassing_call_no_annotation_nested_sync (
#     FDPassing *proxy,
#     GVariant *arg_files,
#     GDBusCallFlags call_flags,
#     gint timeout_msec,
#     GUnixFDList  *fd_list,
#     GUnixFDList **out_fd_list,
#     GCancellable *cancellable,
#     GError **error);
# 
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ())
# #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy))
# #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass))
# #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY))
# #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY))
# 
# typedef struct _FDPassingProxy FDPassingProxy;
# typedef struct _FDPassingProxyClass FDPassingProxyClass;
# typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate;
# 
# struct _FDPassingProxy
# {
#   /*< private >*/
#   GDBusProxy parent_instance;
#   FDPassingProxyPrivate *priv;
# };
# 
# struct _FDPassingProxyClass
# {
#   GDBusProxyClass parent_class;
# };
# 
# GType fdpassing_proxy_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref)
# #endif
# 
# void fdpassing_proxy_new (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_sync (
#     GDBusConnection     *connection,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# void fdpassing_proxy_new_for_bus (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GAsyncReadyCallback  callback,
#     gpointer             user_data);
# FDPassing *fdpassing_proxy_new_for_bus_finish (
#     GAsyncResult        *res,
#     GError             **error);
# FDPassing *fdpassing_proxy_new_for_bus_sync (
#     GBusType             bus_type,
#     GDBusProxyFlags      flags,
#     const gchar         *name,
#     const gchar         *object_path,
#     GCancellable        *cancellable,
#     GError             **error);
# 
# 
# /* ---- */
# 
# #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ())
# #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton))
# #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass))
# #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON))
# #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON))
# 
# typedef struct _FDPassingSkeleton FDPassingSkeleton;
# typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass;
# typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate;
# 
# struct _FDPassingSkeleton
# {
#   /*< private >*/
#   GDBusInterfaceSkeleton parent_instance;
#   FDPassingSkeletonPrivate *priv;
# };
# 
# struct _FDPassingSkeletonClass
# {
#   GDBusInterfaceSkeletonClass parent_class;
# };
# 
# GType fdpassing_skeleton_get_type (void) G_GNUC_CONST;
# 
# #if GLIB_CHECK_VERSION(2, 44, 0)
# G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref)
# #endif
# 
# FDPassing *fdpassing_skeleton_new (void);
# 
# 
# G_END_DECLS
# 
# #endif /* __STDOUT__ */
1..19
PASS: glib/codegen.py.test
Running test: glib-networking/connection-openssl.test
# random seed: R02Sb3f6901e282bbdae519a0b4279eb3c50
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation openssl (GTlsBackendOpenssl) for ?gio-tls-backend?
1..45
# Start of tls tests
# Start of openssl tests
# Start of connection tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
ok 1 /tls/openssl/connection/basic
ok 2 /tls/openssl/connection/verified
ok 3 /tls/openssl/connection/verified-chain
ok 4 /tls/openssl/connection/verified-chain-with-redundant-root-cert
ok 5 /tls/openssl/connection/verified-chain-with-duplicate-server-cert
ok 6 /tls/openssl/connection/verified-unordered-chain
ok 7 /tls/openssl/connection/verified-chain-with-alternative-ca-cert
ok 8 /tls/openssl/connection/invalid-chain-with-alternative-ca-cert
ok 9 /tls/openssl/connection/client-auth
ok 10 /tls/openssl/connection/client-auth-rehandshake
Executing: glib-networking/connection-openssl.test
ok 11 /tls/openssl/connection/client-auth-failure
# Bug Reference: http://bugzilla.gnome.org/793712
ok 12 /tls/openssl/connection/client-auth-fail-missing-client-private-key
ok 13 /tls/openssl/connection/client-auth-request-cert
ok 14 /tls/openssl/connection/client-auth-request-fail
ok 15 /tls/openssl/connection/client-auth-request-none
ok 16 /tls/openssl/connection/client-auth-pkcs11 # SKIP This backend does not support PKCS #11
ok 17 /tls/openssl/connection/no-database
ok 18 /tls/openssl/connection/failed
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting TLS handshake
# GLib-GIO-DEBUG: GSocketClient: TLS handshake succeeded
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 19 /tls/openssl/connection/socket-client
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting TLS handshake
# GLib-GIO-DEBUG: GSocketClient: TLS handshake failed: Unacceptable TLS certificate
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null)
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unacceptable TLS certificate
ok 20 /tls/openssl/connection/socket-client-failed
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting TLS handshake
# GLib-GIO-DEBUG: GSocketClient: TLS handshake succeeded
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 21 /tls/openssl/connection/read-time-out-then-write
ok 22 /tls/openssl/connection/simultaneous-async
ok 23 /tls/openssl/connection/simultaneous-sync
ok 24 /tls/openssl/connection/simultaneous-async-rehandshake
ok 25 /tls/openssl/connection/simultaneous-sync-rehandshake
ok 26 /tls/openssl/connection/close-immediately
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting TLS handshake
# GLib-GIO-DEBUG: GSocketClient: TLS handshake succeeded
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting TLS handshake
# GLib-GIO-DEBUG: GSocketClient: TLS handshake succeeded
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 27 /tls/openssl/connection/unclean-close-by-server
# Bug Reference: http://bugzilla.gnome.org/710691
ok 28 /tls/openssl/connection/async-implicit-handshake
ok 29 /tls/openssl/connection/output-stream-close # SKIP this is not supported with openssl 1.1.1
ok 30 /tls/openssl/connection/garbage-database
# Bug Reference: http://bugzilla.gnome.org/792219
ok 31 /tls/openssl/connection/readwrite-after-connection-destroyed
ok 32 /tls/openssl/connection/sync-op-during-handshake
ok 33 /tls/openssl/connection/socket-timeout
ok 34 /tls/openssl/connection/missing-server-identity
ok 35 /tls/openssl/connection/peer-certificate-notify
ok 36 /tls/openssl/connection/tls-info
# Start of alpn tests
ok 37 /tls/openssl/connection/alpn/match
ok 38 /tls/openssl/connection/alpn/no-match
ok 39 /tls/openssl/connection/alpn/client-only
ok 40 /tls/openssl/connection/alpn/server-only
# End of alpn tests
# Start of binding tests
ok 41 /tls/openssl/connection/binding/match-tls-unique # SKIP tls-unique is not supported
ok 42 /tls/openssl/connection/binding/match-tls-server-end-point
ok 43 /tls/openssl/connection/binding/match-tls-exporter
# End of binding tests
# Start of oscp tests
ok 44 /tls/openssl/connection/oscp/must-staple
ok 45 /tls/openssl/connection/oscp/must-staple-intermediate-certificate # SKIP OCSP Must-Staple on intermediate certificates is not supported with the OpenSSL backend
# End of oscp tests
# End of connection tests
# End of openssl tests
# End of tls tests
PASS: glib-networking/connection-openssl.test
Running test: glib/1bit-mutex.test
# random seed: R02Se836dbe9f9a140eb31baad6fe8aebd00
1..2
# Start of glib tests
# Start of 1bit-mutex tests
ok 1 /glib/1bit-mutex/int
Executing: glib/1bit-mutex.test
ok 2 /glib/1bit-mutex/pointer
# End of 1bit-mutex tests
# End of glib tests
PASS: glib/1bit-mutex.test
Running test: glib/power-profile-monitor.test
# random seed: R02Se2d6978b23bbcc7e29ca830139df9182
1..1
# Start of power-profile-monitor tests
# GLib-GIO-DEBUG: Failed to initialize portal (GPowerProfileMonitorPortal) for gio-power-profile-monitor: Not using portals
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dbus (GPowerProfileMonitorDBus) for ?gio-power-profile-monitor?
ok 1 /power-profile-monitor/default
# End of power-profile-monitor tests
PASS: glib/power-profile-monitor.test
Running test: glib/g-file-info-filesystem-readonly.test
# random seed: R02S39fe95bcae78ff3b03014461e019b301
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=787731
1..2
# Start of g-file-info-filesystem-readonly tests
ok 1 /g-file-info-filesystem-readonly/test-fs-ro # SKIP 'bindfs' and 'fusermount' commands are needed to run this test
ok 2 /g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor # SKIP 'bindfs' and 'fusermount' commands are needed to run this test
# End of g-file-info-filesystem-readonly tests
PASS: glib/g-file-info-filesystem-readonly.test
Running test: glib/contenttype.test
# random seed: R02Se126269590481f93bc786d7e4b1a525a
1..12
# Start of contenttype tests
ok 1 /contenttype/guess
ok 2 /contenttype/guess_svg_from_data
ok 3 /contenttype/mime_from_content # SKIP mime from content type test not implemented on UNIX
ok 4 /contenttype/unknown
ok 5 /contenttype/subtype
ok 6 /contenttype/list
ok 7 /contenttype/executable
ok 8 /contenttype/description
ok 9 /contenttype/icon
ok 10 /contenttype/symbolic-icon
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 11 /contenttype/tree
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=782311
ok 12 /contenttype/test_type_is_a_special_case
# End of contenttype tests
PASS: glib/contenttype.test
Running test: glib/gdbus-exit-on-close.test
# random seed: R02Sf2dfbba6aa58f7cb9c310449b82fb465
1..4
# Start of gdbus tests
# Start of exit-on-close tests
ok 1 /gdbus/exit-on-close/default
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 2 /gdbus/exit-on-close/true
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 3 /gdbus/exit-on-close/false
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 4 /gdbus/exit-on-close/we-close
# Start of default tests
# End of default tests
# Start of true tests
# End of true tests
# Start of false tests
# End of false tests
# Start of we-close tests
# End of we-close tests
# End of exit-on-close tests
# End of gdbus tests
PASS: glib/gdbus-exit-on-close.test
Running test: glib/hook.test
# random seed: R02Sb5b10732fcfcbcde04490b747a2ca598
1..1
# Start of hook tests
ok 1 /hook/test1
# End of hook tests
PASS: glib/hook.test
Running test: glib/gdbus-connection-flush.test
# random seed: R02S96db57bbc846e2bd9231b96d3f3c2956
1..2
# Start of gdbus tests
# Start of connection tests
# Start of flush tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/system-config1:/tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/system-data1:/tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/busy/.dirs/runtime
ok 1 /gdbus/connection/flush/busy
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/system-config1:/tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/system-data1:/tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_EUIFW2/gdbus/connection/flush/idle/.dirs/runtime
ok 2 /gdbus/connection/flush/idle
# End of flush tests
# End of connection tests
# End of gdbus tests
PASS: glib/gdbus-connection-flush.test
Running test: glib/unix-mounts.test
# random seed: R02S7e92e0d5e5829ef153696c30966e3f04
1..2
# Start of unix-mounts tests
ok 1 /unix-mounts/is-system-fs-type
ok 2 /unix-mounts/is-system-device-path
# End of unix-mounts tests
PASS: glib/unix-mounts.test
Running test: glib/uri.test
# random seed: R02S1975f48f10baf4cf7775ce55150c5ced
1..24
# Start of uri tests
ok 1 /uri/file-to-uri
ok 2 /uri/file-from-uri
ok 3 /uri/file-roundtrip
ok 4 /uri/list
# Test 0: %2Babc %4F
# Test 1: %2Babc %4F
# Test 2: %00abc %4F
# Test 3: /cursors/none.png
# Test 4: /cursors%2fbad-subdir/none.png
# Test 5: %0
# Test 6: %ra
# Test 7: %2r
[Invalid UTF-8] # Test 8: Timm B\xe4der
# Test 9: (null)
ok 5 /uri/unescape-string
ok 6 /uri/unescape-segment
# Test 0: abcdefgABCDEFG._~
# Test 1: :+ \?#
# Test 2: a+b:c
# Test 3: a+b:c?
[Invalid UTF-8] # Test 4: \xfc;\xd2
[Invalid UTF-8] # Test 5: \xc3\xb1\xc3(
ok 7 /uri/escape-string
ok 8 /uri/escape-bytes
ok 9 /uri/scheme
ok 10 /uri/build
ok 11 /uri/split
ok 12 /uri/is_valid
ok 13 /uri/to-string
ok 14 /uri/join
# /uri/join-split-round-trip summary: Test that joining different URI components survives a round trip
# Combination 0
# Combination 1
# Combination 2
# Combination 3
# Combination 4
# Combination 5
# Combination 6
# Combination 7
# Combination 8
# Combination 9
# Combination 10
# Combination 11
# Combination 12
# Combination 13
# Combination 14
# Combination 15
# Combination 16
# Combination 17
# Combination 18
# Combination 19
# Combination 20
# Combination 21
# Combination 22
# Combination 23
# Combination 24
# Combination 25
# Combination 26
# Combination 27
# Combination 28
# Combination 29
# Combination 30
# Combination 31
# Combination 32
# Combination 33
# Combination 34
# Combination 35
# Combination 36
# Combination 37
# Combination 38
# Combination 39
# Combination 40
# Combination 41
# Combination 42
# Combination 43
# Combination 44
# Combination 45
# Combination 46
# Combination 47
# Combination 48
# Combination 49
# Combination 50
# Combination 51
# Combination 52
# Combination 53
# Combination 54
# Combination 55
# Combination 56
# Combination 57
# Combination 58
# Combination 59
# Combination 60
# Combination 61
# Combination 62
# Combination 63
# Combination 64
# Combination 65
# Combination 66
# Combination 67
# Combination 68
# Combination 69
# Combination 70
# Combination 71
# Combination 72
# Combination 73
# Combination 74
# Combination 75
# Combination 76
# Combination 77
# Combination 78
# Combination 79
# Combination 80
# Combination 81
# Combination 82
# Combination 83
# Combination 84
# Combination 85
# Combination 86
# Combination 87
# Combination 88
# Combination 89
# Combination 90
# Combination 91
# Combination 92
# Combination 93
# Combination 94
# Combination 95
# Combination 96
# Combination 97
# Combination 98
# Combination 99
# Combination 100
# Combination 101
# Combination 102
# Combination 103
# Combination 104
# Combination 105
# Combination 106
# Combination 107
# Combination 108
# Combination 109
# Combination 110
# Combination 111
# Combination 112
# Combination 113
# Combination 114
# Combination 115
# Combination 116
# Combination 117
# Combination 118
# Combination 119
# Combination 120
# Combination 121
# Combination 122
# Combination 123
# Combination 124
# Combination 125
# Combination 126
# Combination 127
# Combination 128
# Combination 129
# Combination 130
# Combination 131
# Combination 132
# Combination 133
# Combination 134
# Combination 135
# Combination 136
# Combination 137
# Combination 138
# Combination 139
# Combination 140
# Combination 141
# Combination 142
# Combination 143
# Combination 144
# Combination 145
# Combination 146
# Combination 147
# Combination 148
# Combination 149
# Combination 150
# Combination 151
# Combination 152
# Combination 153
# Combination 154
# Combination 155
# Combination 156
# Combination 157
# Combination 158
# Combination 159
# Combination 160
# Combination 161
# Combination 162
# Combination 163
# Combination 164
# Combination 165
# Combination 166
# Combination 167
# Combination 168
# Combination 169
# Combination 170
# Combination 171
# Combination 172
# Combination 173
# Combination 174
# Combination 175
# Combination 176
# Combination 177
# Combination 178
# Combination 179
# Combination 180
# Combination 181
# Combination 182
# Combination 183
# Combination 184
# Combination 185
# Combination 186
# Combination 187
# Combination 188
# Combination 189
# Combination 190
# Combination 191
# Combination 192
# Combination 193
# Combination 194
# Combination 195
# Combination 196
# Combination 197
# Combination 198
# Combination 199
# Combination 200
# Combination 201
# Combination 202
# Combination 203
# Combination 204
# Combination 205
# Combination 206
# Combination 207
# Combination 208
# Combination 209
# Combination 210
# Combination 211
# Combination 212
# Combination 213
# Combination 214
# Combination 215
# Combination 216
# Combination 217
# Combination 218
# Combination 219
# Combination 220
# Combination 221
# Combination 222
# Combination 223
# Combination 224
# Combination 225
# Combination 226
# Combination 227
# Combination 228
# Combination 229
# Combination 230
# Combination 231
# Combination 232
# Combination 233
# Combination 234
# Combination 235
# Combination 236
# Combination 237
# Combination 238
# Combination 239
# Combination 240
# Combination 241
# Combination 242
# Combination 243
# Combination 244
# Combination 245
# Combination 246
# Combination 247
# Combination 248
# Combination 249
# Combination 250
# Combination 251
# Combination 252
# Combination 253
# Combination 254
# Combination 255
ok 15 /uri/join-split-round-trip
ok 16 /uri/normalize
# Start of unescape-bytes tests
# Test 0: %00%00
# Test 1: /cursors/none.png
# Test 2: /cursors%2fbad-subdir/none.png
# Test 3: %%
# Test 4: %
ok 17 /uri/unescape-bytes/nul-terminated
# Test 0: %00%00
# Test 1: /cursors/none.png
# Test 2: /cursors%2fbad-subdir/none.png
# Test 3: %%
# Test 4: %
ok 18 /uri/unescape-bytes/length
# End of unescape-bytes tests
# Start of parsing tests
# Test 0: foo:
# Test 1: file:/dev/null
# Test 2: file:///dev/null
# Test 3: ftp://user@host/path
# Test 4: ftp://user@host:9999/path
# Test 5: ftp://user:password@host/path
# Test 6: ftp://user:password@host:9999/path
# Test 7: ftp://user:password@host
# Test 8: http://us%65r@host
# Test 9: http://us%40r@host
# Test 10: http://us%3ar@host
# Test 11: http://us%2fr@host
# Test 12: http://us%3fr@host
# Test 13: http://host?query
# Test 14: http://host/path?query=http%3A%2F%2Fhost%2Fpath%3Fchildparam%3Dchildvalue&param=value
# Test 15: http://control-chars/%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F
# Test 16: http://space/%20
# Test 17: http://delims/%3C%3E%23%25%22
# Test 18: http://unwise-chars/%7B%7D%7C%5C%5E%5B%5D%60
# Test 19: http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html
# Test 20: http://[1080:0:0:0:8:800:200C:417A]/index.html
# Test 21: http://[3ffe:2a00:100:7031::1]
# Test 22: http://[1080::8:800:200C:417A]/foo
# Test 23: http://[::192.9.5.5]/ipng
# Test 24: http://[::FFFF:129.144.52.38]:80/index.html
# Test 25: http://[2010:836B:4179::836B:4179]
# Test 26: http://host/path with spaces
# Test 27:   http://host/path
# Test 28: http://host/path  
# Test 29: http://host  
# Test 30: http://host:999  
# Test 31: http://host/pa
# th
# Test 32: http:
# //host/path
# Test 33: http://	host/path
# Test 34: http://host/path?
# Test 35: http://host/path#
# Test 36: http://host/path%
# Test 37: http://h%ost/path
# Test 38: http://host/path%%
# Test 39: http://host/path%%%
# Test 40: http://host/path%/x/
# Test 41: http://host/path%0x/
# Test 42: http://host/path%ax
# Test 43: http://host/p?th/
# Test 44: HTTP:////////////////
# Test 45: http://@host
# Test 46: http://:@host
# Test 47: scheme://foo%3Abar._webdav._tcp.local
# Test 48: http://example.com/..
# Test 49: foo0://host/path
# Test 50: f0.o://host/path
# Test 51: http++://host/path
# Test 52: http-ish://host/path
# Test 53: http://[fe80::dead:beef%]/
# Test 54: http://[fe80::dead:beef%em1]/
# Test 55: http://[fe80::dead:beef%em1]/
# Test 56: http://[fe80::dead:beef%25em1]/
# Test 57: http://[fe80::dead:beef%25em1%20]/
# Test 58: http://[fe80::dead:beef%25em%31]/
# Test 59: http://[fe80::dead:beef%10]/
# Test 60: http://[fe80::dead:beef%10]/
# Test 61: http://[fe80::dead:beef%25]/
# Test 62: http://[fe80::dead:beef%25]/
# Test 63: http://[192.168.0.1%25em1]/
# Test 64: http://[fe80::dead:beef%2em1]/
# Test 65: http://[fe80::dead:beef%2em1]/
# Test 66: http://[fe80::dead:beef%25em1%00]/
# Test 67: http://[fe80::dead:beef%25em1%00]/
# Test 68: http://xn--mixed-?p/
ok 19 /uri/parsing/absolute
ok 20 /uri/parsing/relative
# End of parsing tests
# Start of iter-params tests
# URI 0: p1=foo&p2=bar;p3=baz
# URI 1: p1=foo&p2=bar
# URI 2: p1=foo&&P1=bar
# URI 3: %00=foo
# URI 4: p1=%00
# URI 5: p1=foo&p1=bar
# URI 6: p1=foo&P1=bar
# URI 7: =%
# URI 8: =
# URI 9: foo
# URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb
ok 21 /uri/iter-params/nul-terminated
# URI 0: p1=foo&p2=bar;p3=baz
# URI 1: p1=foo&p2=bar
# URI 2: p1=foo&&P1=bar
# URI 3: %00=foo
# URI 4: p1=%00
# URI 5: p1=foo&p1=bar
# URI 6: p1=foo&P1=bar
# URI 7: =%
# URI 8: =
# URI 9: foo
# URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb
ok 22 /uri/iter-params/length
# End of iter-params tests
# Start of parse-params tests
# URI 0: p1=foo&p2=bar;p3=baz
# URI 1: p1=foo&p2=bar
# URI 2: p1=foo&&P1=bar
# URI 3: %00=foo
# URI 4: p1=%00
# URI 5: p1=foo&p1=bar
# URI 6: p1=foo&P1=bar
# URI 7: =%
# URI 8: =
# URI 9: foo
# URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb
ok 23 /uri/parse-params/nul-terminated
# URI 0: p1=foo&p2=bar;p3=baz
# URI 1: p1=foo&p2=bar
# URI 2: p1=foo&&P1=bar
# URI 3: %00=foo
# URI 4: p1=%00
# URI 5: p1=foo&p1=bar
# URI 6: p1=foo&P1=bar
# URI 7: =%
# URI 8: =
# URI 9: foo
# URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver
# URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb
ok 24 /uri/parse-params/length
# End of parse-params tests
# End of uri tests
PASS: glib/uri.test
Running test: glib/gdbus-address-get-session.test
# random seed: R02Sb2a5c373af4550165e55f118b7a5986c
1..2
# Start of gdbus tests
ok 1 /gdbus/x11-autolaunch
ok 2 /gdbus/xdg-runtime
# End of gdbus tests
PASS: glib/gdbus-address-get-session.test
Running test: glib/utils.test
# random seed: R02Sf772a25b114a56751a1950d6f813f01b
1..37
# Start of utils tests
ok 1 /utils/language-names
ok 2 /utils/locale-variants
ok 3 /utils/version
ok 4 /utils/appname
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847
# /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name.
ok 5 /utils/prgname-thread-safety
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969
ok 6 /utils/tmpdir
ok 7 /utils/basic_bits
ok 8 /utils/bits
ok 9 /utils/swap
ok 10 /utils/find-program
ok 11 /utils/debug
ok 12 /utils/codeset
ok 13 /utils/codeset2
ok 14 /utils/console-charset
ok 15 /utils/gettext
ok 16 /utils/username
ok 17 /utils/realname
ok 18 /utils/hostname
ok 19 /utils/xdgdirs
ok 20 /utils/specialdir
# NAME: Linux
ok 21 /utils/os-info
ok 22 /utils/clear-pointer
ok 23 /utils/clear-pointer-cast
ok 24 /utils/take-pointer
ok 25 /utils/clear-source
ok 26 /utils/misc-mem
# /utils/aligned-mem summary: Aligned memory allocator
# Alignment must not be zero
# Alignment must be a power of two
# Alignment must be a multiple of sizeof(void*)
ok 27 /utils/aligned-mem
ok 28 /utils/nullify
ok 29 /utils/atexit
ok 30 /utils/check-setuid
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663
ok 31 /utils/int-limits
ok 32 /utils/clear-list
ok 33 /utils/clear-slist
# Start of specialdir tests
ok 34 /utils/specialdir/desktop
# End of specialdir tests
# Start of clear-pointer tests
ok 35 /utils/clear-pointer/side-effects
# End of clear-pointer tests
# Start of aligned-mem tests
# /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer
ok 36 /utils/aligned-mem/alignment
# /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation
ok 37 /utils/aligned-mem/zeroed
# Start of subprocess tests
# End of subprocess tests
# End of aligned-mem tests
# End of utils tests
PASS: glib/utils.test
Running test: glib/gdbus-error.test
# random seed: R02S22fc64ebe43b83187badc33ef891ef73
1..4
# Start of gdbus tests
ok 1 /gdbus/registered-errors
ok 2 /gdbus/unregistered-errors
ok 3 /gdbus/transparent-gerror
ok 4 /gdbus/register-error
# End of gdbus tests
PASS: glib/gdbus-error.test
Running test: glib-networking/file-database-openssl.test
# random seed: R02S27330862b3047cefee501f1e2b08cb00
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation openssl (GTlsBackendOpenssl) for ?gio-tls-backend?
1..12
# Start of tls tests
# Start of openssl tests
# Start of backend tests
ok 1 /tls/openssl/backend/default-database-is-singleton
# End of backend tests
# Start of database tests
ok 2 /tls/openssl/database/verify-good
ok 3 /tls/openssl/database/verify-bad-identity
ok 4 /tls/openssl/database/verify-bad-ca
ok 5 /tls/openssl/database/verify-bad-before
ok 6 /tls/openssl/database/verify-bad-expired
ok 7 /tls/openssl/database/verify-bad-combo
ok 8 /tls/openssl/database/verify-with-incorrect-root-in-chain
# End of database tests
# Start of file-database tests
ok 9 /tls/openssl/file-database/anchors-property
ok 10 /tls/openssl/file-database/lookup-certificates-issued-by
ok 11 /tls/openssl/file-database/test-handle
ok 12 /tls/openssl/file-database/test-handle-invalid
# End of file-database tests
# End of openssl tests
# End of tls tests
PASS: glib-networking/file-database-openssl.test
Running test: glib/array-test.test
# random seed: R02Sdf12116d779493bb42d7fc87d3c97e15
1..83
# Start of array tests
ok 1 /array/ref-count
ok 2 /array/steal
ok 3 /array/clear-func
ok 4 /array/binary-search
# /array/copy-sized summary: Test that copying a newly-allocated sized array works.
ok 5 /array/copy-sized
ok 6 /array/overflow-append-vals
ok 7 /array/overflow-set-size
# Start of new tests
ok 8 /array/new/zero-terminated
# End of new tests
# Start of set-size tests
ok 9 /array/set-size/non-zero-terminated-no-clear
ok 10 /array/set-size/non-zero-terminated-clear
ok 11 /array/set-size/zero-terminated-no-clear
ok 12 /array/set-size/zero-terminated-clear
# Start of sized tests
ok 13 /array/set-size/sized/non-zero-terminated-no-clear
ok 14 /array/set-size/sized/non-zero-terminated-clear
ok 15 /array/set-size/sized/zero-terminated-no-clear
ok 16 /array/set-size/sized/zero-terminated-clear
# End of sized tests
# End of set-size tests
# Start of append-val tests
ok 17 /array/append-val/non-zero-terminated-no-clear
ok 18 /array/append-val/non-zero-terminated-clear
ok 19 /array/append-val/zero-terminated-no-clear
ok 20 /array/append-val/zero-terminated-clear
# End of append-val tests
# Start of prepend-val tests
ok 21 /array/prepend-val/non-zero-terminated-no-clear
ok 22 /array/prepend-val/non-zero-terminated-clear
ok 23 /array/prepend-val/zero-terminated-no-clear
ok 24 /array/prepend-val/zero-terminated-clear
# End of prepend-val tests
# Start of prepend-vals tests
ok 25 /array/prepend-vals/non-zero-terminated-no-clear
ok 26 /array/prepend-vals/non-zero-terminated-clear
ok 27 /array/prepend-vals/zero-terminated-no-clear
ok 28 /array/prepend-vals/zero-terminated-clear
# End of prepend-vals tests
# Start of insert-vals tests
ok 29 /array/insert-vals/non-zero-terminated-no-clear
ok 30 /array/insert-vals/non-zero-terminated-clear
ok 31 /array/insert-vals/zero-terminated-no-clear
ok 32 /array/insert-vals/zero-terminated-clear
# End of insert-vals tests
# Start of remove-index tests
ok 33 /array/remove-index/non-zero-terminated-no-clear
ok 34 /array/remove-index/non-zero-terminated-clear
ok 35 /array/remove-index/zero-terminated-no-clear
ok 36 /array/remove-index/zero-terminated-clear
# End of remove-index tests
# Start of remove-index-fast tests
ok 37 /array/remove-index-fast/non-zero-terminated-no-clear
ok 38 /array/remove-index-fast/non-zero-terminated-clear
ok 39 /array/remove-index-fast/zero-terminated-no-clear
ok 40 /array/remove-index-fast/zero-terminated-clear
# End of remove-index-fast tests
# Start of remove-range tests
ok 41 /array/remove-range/non-zero-terminated-no-clear
ok 42 /array/remove-range/non-zero-terminated-clear
ok 43 /array/remove-range/zero-terminated-no-clear
ok 44 /array/remove-range/zero-terminated-clear
# End of remove-range tests
# Start of copy tests
ok 45 /array/copy/non-zero-terminated-no-clear
ok 46 /array/copy/non-zero-terminated-clear
ok 47 /array/copy/zero-terminated-no-clear
ok 48 /array/copy/zero-terminated-clear
# End of copy tests
# Start of sort tests
ok 49 /array/sort/non-zero-terminated-no-clear
ok 50 /array/sort/non-zero-terminated-clear
ok 51 /array/sort/zero-terminated-no-clear
ok 52 /array/sort/zero-terminated-clear
# End of sort tests
# Start of sort-with-data tests
ok 53 /array/sort-with-data/non-zero-terminated-no-clear
ok 54 /array/sort-with-data/non-zero-terminated-clear
ok 55 /array/sort-with-data/zero-terminated-no-clear
ok 56 /array/sort-with-data/zero-terminated-clear
# End of sort-with-data tests
# End of array tests
# Start of pointerarray tests
ok 57 /pointerarray/add
ok 58 /pointerarray/insert
ok 59 /pointerarray/ref-count
ok 60 /pointerarray/free-func
# /pointerarray/array_copy summary: Check all normal behaviour of stealing elements from one array to append to another, covering different array sizes and element copy functions
ok 61 /pointerarray/array_copy
ok 62 /pointerarray/array_extend
ok 63 /pointerarray/array_extend_and_steal
ok 64 /pointerarray/sort
ok 65 /pointerarray/sort-with-data
ok 66 /pointerarray/steal
ok 67 /pointerarray/steal_index
# Start of sort tests
# /pointerarray/sort/example summary: Check that the doc-comment for g_ptr_array_sort() is correct
ok 68 /pointerarray/sort/example
# End of sort tests
# Start of sort-with-data tests
# /pointerarray/sort-with-data/example summary: Check that the doc-comment for g_ptr_array_sort_with_data() is correct
ok 69 /pointerarray/sort-with-data/example
# End of sort-with-data tests
# Start of find tests
ok 70 /pointerarray/find/empty
ok 71 /pointerarray/find/non-empty
# End of find tests
# End of pointerarray tests
# Start of bytearray tests
ok 72 /bytearray/steal
ok 73 /bytearray/append
ok 74 /bytearray/prepend
ok 75 /bytearray/remove
ok 76 /bytearray/remove-fast
ok 77 /bytearray/remove-range
ok 78 /bytearray/ref-count
ok 79 /bytearray/sort
ok 80 /bytearray/sort-with-data
ok 81 /bytearray/new-take
ok 82 /bytearray/new-take-overflow # SKIP Overflow test requires G_MAXSIZE > G_MAXUINT.
ok 83 /bytearray/free-to-bytes
# End of bytearray tests
PASS: glib/array-test.test
Running test: glib/simple-async-result.test
# random seed: R02Scf85b98b17861400b742ef8600ff9c27
1..2
# Start of gio tests
# Start of simple-async-result tests
ok 1 /gio/simple-async-result/test
ok 2 /gio/simple-async-result/valid
# End of simple-async-result tests
# End of gio tests
PASS: glib/simple-async-result.test
Running test: glib/spawn-path-search.test
# random seed: R02S95bd98f5ce873eafc561e29dfee3176f
1..7
# Start of spawn tests
# /spawn/do-not-search summary: Without G_SPAWN_SEARCH_PATH, spawn-test-helper means ./spawn-test-helper.
# 
# this is spawn-test-helper from glib/tests
# 
ok 1 /spawn/do-not-search
# /spawn/search-path summary: With G_SPAWN_SEARCH_PATH, spawn-test-helper means $PATH/spawn-test-helper.
# 
# this is spawn-test-helper from path-test-subdir
# 
ok 2 /spawn/search-path
# /spawn/search-path-from-envp summary: With G_SPAWN_SEARCH_PATH_FROM_ENVP, spawn-test-helper means $PATH/spawn-test-helper with $PATH from envp.
# 
# this is spawn-test-helper from path-test-subdir
# 
ok 3 /spawn/search-path-from-envp
# /spawn/search-path-ambiguous summary: With G_SPAWN_SEARCH_PATH and G_SPAWN_SEARCH_PATH_FROM_ENVP, the latter wins.
# 
# this is spawn-test-helper from path-test-subdir
# 
ok 4 /spawn/search-path-ambiguous
# 
# this is spawn-test-helper from path-test-subdir
# 
ok 5 /spawn/search-path-heap-allocation
# /spawn/search-path-fallback-in-environ summary: With G_SPAWN_SEARCH_PATH but no PATH, a fallback is used.
# 
# this is spawn-test-helper from glib/tests
# 
ok 6 /spawn/search-path-fallback-in-environ
# /spawn/search-path-fallback-in-envp summary: With G_SPAWN_SEARCH_PATH_FROM_ENVP but no PATH, a fallback is used.
# 
# this is spawn-test-helper from glib/tests
# 
ok 7 /spawn/search-path-fallback-in-envp
# End of spawn tests
PASS: glib/spawn-path-search.test
Running test: glib/gdbus-proxy-unique-name.test
# random seed: R02Sbf95b2fdd8e95070b6c0627cdcda5b78
1..1
# Start of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 1 /gdbus/proxy-unique-name
# End of gdbus tests
PASS: glib/gdbus-proxy-unique-name.test
Running test: glib/onceinit.test
PASS: glib/onceinit.test
Running test: glib-networking/certificate-openssl.test
# random seed: R02S5295992fa5e2f1839429cdbc73785c35
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation openssl (GTlsBackendOpenssl) for ?gio-tls-backend?
1..26
# Start of tls tests
# Start of openssl tests
# Start of certificate tests
ok 1 /tls/openssl/certificate/create-pem
ok 2 /tls/openssl/certificate/create-der
ok 3 /tls/openssl/certificate/create-with-key-pem
ok 4 /tls/openssl/certificate/create-with-key-der
ok 5 /tls/openssl/certificate/create-with-issuer
ok 6 /tls/openssl/certificate/create-with-garbage-input
ok 7 /tls/openssl/certificate/pkcs11 # SKIP This backend does not support PKCS #11
ok 8 /tls/openssl/certificate/private-key
ok 9 /tls/openssl/certificate/private-key-pkcs11 # SKIP This backend does not support PKCS #11
ok 10 /tls/openssl/certificate/create-chain
ok 11 /tls/openssl/certificate/create-no-chain
ok 12 /tls/openssl/certificate/create-list
ok 13 /tls/openssl/certificate/create-list-bad
ok 14 /tls/openssl/certificate/verify-good
ok 15 /tls/openssl/certificate/verify-bad-identity
ok 16 /tls/openssl/certificate/verify-bad-ca
ok 17 /tls/openssl/certificate/verify-bad-before
ok 18 /tls/openssl/certificate/verify-bad-expired
ok 19 /tls/openssl/certificate/verify-bad-combo
ok 20 /tls/openssl/certificate/is-same
ok 21 /tls/openssl/certificate/not-valid-before
ok 22 /tls/openssl/certificate/not-valid-after
ok 23 /tls/openssl/certificate/subject-name
ok 24 /tls/openssl/certificate/issuer-name
ok 25 /tls/openssl/certificate/dns-names
ok 26 /tls/openssl/certificate/ip-addresses
# End of certificate tests
# End of openssl tests
# End of tls tests
PASS: glib-networking/certificate-openssl.test
Running test: glib/gdatetime.test
# random seed: R02Sf67a2b9d1e5dba943881a89d3c5b5d8b
1..64
# Start of GDateTime tests
# Bug Reference: http://bugzilla.gnome.org/702674
ok 1 /GDateTime/invalid
ok 2 /GDateTime/add_days
ok 3 /GDateTime/add_full
ok 4 /GDateTime/add_hours
ok 5 /GDateTime/add_minutes
ok 6 /GDateTime/add_months
ok 7 /GDateTime/add_seconds
ok 8 /GDateTime/add_weeks
ok 9 /GDateTime/add_years
ok 10 /GDateTime/compare
ok 11 /GDateTime/diff
ok 12 /GDateTime/equal
ok 13 /GDateTime/get_day_of_week
ok 14 /GDateTime/get_day_of_month
ok 15 /GDateTime/get_day_of_year
ok 16 /GDateTime/get_hour
ok 17 /GDateTime/get_microsecond
ok 18 /GDateTime/get_minute
ok 19 /GDateTime/get_month
ok 20 /GDateTime/get_second
ok 21 /GDateTime/get_utc_offset
ok 22 /GDateTime/get_year
ok 23 /GDateTime/hash
ok 24 /GDateTime/new_from_unix
ok 25 /GDateTime/new_from_unix_utc
ok 26 /GDateTime/new_from_timeval
ok 27 /GDateTime/new_from_timeval_utc
ok 28 /GDateTime/new_from_iso8601
ok 29 /GDateTime/new_full
ok 30 /GDateTime/now
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2215
ok 31 /GDateTime/test-6-days-until-end-of-the-month
ok 32 /GDateTime/printf
ok 33 /GDateTime/non_utf8_printf
ok 34 /GDateTime/format_unrepresentable
ok 35 /GDateTime/format_iso8601
ok 36 /GDateTime/strftime
ok 37 /GDateTime/modifiers
# Bug Reference: http://bugzilla.gnome.org/749206
ok 38 /GDateTime/month_names
ok 39 /GDateTime/to_local
ok 40 /GDateTime/to_unix
ok 41 /GDateTime/to_timeval
ok 42 /GDateTime/to_utc
ok 43 /GDateTime/now_utc
ok 44 /GDateTime/dst
# Bug Reference: http://bugzilla.gnome.org/642935
ok 45 /GDateTime/test_z
ok 46 /GDateTime/test-all-dates
# Start of new_from_unix tests
# Bug Reference: http://bugzilla.gnome.org/782089
ok 47 /GDateTime/new_from_unix/overflow
# End of new_from_unix tests
# Start of new_from_timeval tests
# Bug Reference: http://bugzilla.gnome.org/782089
# Maximum supported GTimeVal.tv_sec = 253402300799
ok 48 /GDateTime/new_from_timeval/overflow
# End of new_from_timeval tests
# Start of new_from_iso8601 tests
# /GDateTime/new_from_iso8601/2 summary: Further parser tests for g_date_time_new_from_iso8601(), checking success and failure using test vectors.
# Vector 0: 1990-11-01T10:21:17Z
# Vector 1: 19901101T102117Z
# Vector 2: 1970-01-01T00:00:17.12Z
# Vector 3: 1970-01-01T00:00:17.1234Z
# Vector 4: 1970-01-01T00:00:17.123456Z
# Vector 5: 1980-02-22T12:36:00+02:00
# Vector 6: 1990-12-31T15:59:60-08:00
# Vector 7:    
# Vector 8: x
# Vector 9: 123x
# Vector 10: 2001-10+x
# Vector 11: 1980-02-22T
# Vector 12: 2001-10-08Tx
# Vector 13: 2001-10-08T10:11x
# Vector 14: Wed Dec 19 17:20:20 GMT 2007
# Vector 15: 1980-02-22T10:36:00Zulu
# Vector 16: 2T0+819855292164632335
# Vector 17: 2018-08-03T14:08:05.446178377+01:00
# Vector 18: 2147483648-08-03T14:08:05.446178377+01:00
# Vector 19: 2018-13-03T14:08:05.446178377+01:00
# Vector 20: 2018-00-03T14:08:05.446178377+01:00
# Vector 21: 2018-08-00T14:08:05.446178377+01:00
# Vector 22: 2018-08-32T14:08:05.446178377+01:00
# Vector 23: 2018-08-03T24:08:05.446178377+01:00
# Vector 24: 2018-08-03T14:60:05.446178377+01:00
# Vector 25: 2018-08-03T14:08:63.446178377+01:00
# Vector 26: 2018-08-03T14:08:05.446178377+100:00
# Vector 27: 20180803T140805.446178377+0100
# Vector 28: 21474836480803T140805.446178377+0100
# Vector 29: 20181303T140805.446178377+0100
# Vector 30: 20180003T140805.446178377+0100
# Vector 31: 20180800T140805.446178377+0100
# Vector 32: 20180832T140805.446178377+0100
# Vector 33: 20180803T240805.446178377+0100
# Vector 34: 20180803T146005.446178377+0100
# Vector 35: 20180803T140863.446178377+0100
# Vector 36: 20180803T140805.446178377+10000
# Vector 37: -0005-01-01T00:00:00Z
# Vector 38: 2018-08-06
# Vector 39: 20180803T140805,446178377+0100
# Vector 40: 2018-08-03T14:08:05.446178377-01:00
# Vector 41: 2018-08-03T14:08:05.446178377 01:00
# Vector 42: 1990-11-01T10:21:17
# Vector 43: 1719W462 407777-07
# Vector 44: 4011090 260528Z
# Vector 45: 0000W011 228214-22
ok 49 /GDateTime/new_from_iso8601/2
# End of new_from_iso8601 tests
# Start of format_mixed tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055
Unavailable 'C.UTF-8' locale
ok 50 /GDateTime/format_mixed/utf8_time_non_utf8_messages # SKIP required locale not available, skipping tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055
Unavailable 'C.UTF-8' locale
ok 51 /GDateTime/format_mixed/utf8_time_utf8_messages # SKIP required locale not available, skipping tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055
ok 52 /GDateTime/format_mixed/non_utf8_time_non_utf8_messages
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055
Unavailable 'C.UTF-8' locale
ok 53 /GDateTime/format_mixed/non_utf8_time_utf8_messages # SKIP required locale not available, skipping tests
# End of format_mixed tests
# Start of strftime tests
ok 54 /GDateTime/strftime/error_handling
# End of strftime tests
# End of GDateTime tests
# Start of GTimeZone tests
ok 55 /GTimeZone/find-interval
ok 56 /GTimeZone/adjust-time
ok 57 /GTimeZone/no-header
ok 58 /GTimeZone/no-header-identifier
ok 59 /GTimeZone/posix-parse
# Bug Reference: http://bugzilla.gnome.org/697715
ok 60 /GTimeZone/floating-point
# System time zone identifier: Universal
ok 61 /GTimeZone/identifier
# Vector 0: -158400
# Vector 1: -10000
# Vector 2: -3600
# Vector 3: -61
# Vector 4: -60
# Vector 5: -59
# Vector 6: 0
# Vector 7: 59
# Vector 8: 60
# Vector 9: 61
# Vector 10: 3600
# Vector 11: 10000
# Vector 12: 158400
ok 62 /GTimeZone/new-offset
# /GTimeZone/parse-rfc8536 summary: Test parsing time zone files in RFC 8536 version 3 format
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2129
ok 63 /GTimeZone/parse-rfc8536
# /GTimeZone/caching summary: GTimeZone instances are cached
ok 64 /GTimeZone/caching
# End of GTimeZone tests
PASS: glib/gdatetime.test
Running test: glib/macros.test
# random seed: R02S07600587330311fc10cb7785355f2a6d
1..3
# Start of alignof tests
ok 1 /alignof/fallback
# End of alignof tests
# Start of assert tests
ok 2 /assert/static
# End of assert tests
# Start of struct tests
ok 3 /struct/sizeof_member
# End of struct tests
PASS: glib/macros.test
Running test: glib/dbus-appinfo.test
# random seed: R02S606dfdc681f848f01352ced02e29a519
1..2
# Start of appinfo tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /appinfo/dbusappinfo
# /appinfo/flatpak-doc-export summary: Test that files launched via Flatpak apps are made available via the document portal.
dbus-daemon[16341]: [session uid=1000 pid=16341] Activating service name='org.freedesktop.portal.Documents' requested by ':1.0' (uid=1000 pid=16340 comm="/usr/libexec/installed-tests/glib/dbus-appinfo")
# Acquired a message bus connection
dbus-daemon[16341]: [session uid=1000 pid=16341] Successfully activated service 'org.freedesktop.portal.Documents'
# Acquired the name org.freedesktop.portal.Documents
# on_flatpak_open received file '/document-portal/document-id/org.gtk.test.dbusappinfo.flatpak.desktop'
ok 2 /appinfo/flatpak-doc-export
# End of appinfo tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/dbus-appinfo.test
# Lost the name org.freedesktop.portal.Documents
Running test: glib/completion.test
# random seed: R02S4286820959ac80782d3688d215a6e953
1..1
# Start of completion tests
ok 1 /completion/test-completion
# End of completion tests
PASS: glib/completion.test
Running test: glib/gobject-private.test
# random seed: R02S04add801f36326cc3db78be6bf09f472
1..3
# Start of private tests
ok 1 /private/instance
ok 2 /private/derived-instance
ok 3 /private/mixed-derived-instance
# End of private tests
PASS: glib/gobject-private.test
Running test: glib/socket.test
# random seed: R02S6c45b146eec012b3305d4b5ab4d4ead5
1..26
# Start of socket tests
ok 1 /socket/ipv4_sync
ok 2 /socket/ipv4_async
ok 3 /socket/ipv6_sync
ok 4 /socket/ipv6_async
ok 5 /socket/ipv6_v4mapped
Executing: glib/socket.test
ok 6 /socket/close_graceful
ok 7 /socket/timed_wait # SKIP Not running timing heavy test
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=741707
ok 8 /socket/fd_reuse
ok 9 /socket/address
ok 10 /socket/unix-from-fd
ok 11 /socket/unix-connection
ok 12 /socket/unix-connection-ancillary-data
ok 13 /socket/source-postmortem
ok 14 /socket/read_write
ok 15 /socket/read_writev
# Start of ipv4_sync tests
ok 16 /socket/ipv4_sync/datagram
# Start of datagram tests
ok 17 /socket/ipv4_sync/datagram/timeouts
# End of datagram tests
# End of ipv4_sync tests
# Start of ipv6_sync tests
ok 18 /socket/ipv6_sync/datagram
# Start of datagram tests
ok 19 /socket/ipv6_sync/datagram/timeouts
# End of datagram tests
# End of ipv6_sync tests
# Start of reuse tests
ok 20 /socket/reuse/tcp
ok 21 /socket/reuse/udp
# End of reuse tests
# Start of get_available tests
ok 22 /socket/get_available/datagram
ok 23 /socket/get_available/stream
# End of get_available tests
# Start of credentials tests
Supported on this OS: GCredentials:linux-ucred:pid=0
ok 24 /socket/credentials/tcp_client
Supported on this OS: GCredentials:linux-ucred:pid=0
ok 25 /socket/credentials/tcp_server
Supported on this OS: GCredentials:linux-ucred:pid=16357,uid=1000,gid=1001
ok 26 /socket/credentials/unix_socketpair
# End of credentials tests
# End of socket tests
PASS: glib/socket.test
Running test: glib/gdbus-server-auth.test
# random seed: R02S2389ec493bd22cef79577ef221156ae5
1..9
# Start of gdbus tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/.dirs/runtime
# Testing GDBus server at unix:dir=/tmp/gdbus-server-auth-VB7KW2 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:false
# Connectable address: unix:path=/tmp/gdbus-server-auth-VB7KW2/dbus-erjodh2L
# GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication
# GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication
# GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 1 /gdbus/server-auth # SKIP Testing interop with libdbus not supported
# Start of server-auth tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/abstract/.dirs/runtime
# Testing GDBus server at unix:tmpdir=/tmp/gdbus-server-auth-TD5KW2 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:true tcp:false
# Connectable address: unix:abstract=/tmp/gdbus-server-auth-TD5KW2/dbus-KWDJ9cic
# GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication
# GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication
# GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 2 /gdbus/server-auth/abstract # SKIP Testing interop with libdbus not supported
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/tcp/.dirs/runtime
# Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:true
# Connectable address: tcp:host=127.0.0.1,port=35029
# GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication
# GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication
# GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1
ok 3 /gdbus/server-auth/tcp # SKIP Testing interop with libdbus not supported
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/.dirs/runtime
# Testing GDBus server at unix:dir=/tmp/gdbus-server-auth-7WBMW2 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:false
# Connectable address: unix:path=/tmp/gdbus-server-auth-7WBMW2/dbus-1uPakwyJ
# GLib-GIO-DEBUG: Accepting ANONYMOUS authentication
# GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS
# GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 4 /gdbus/server-auth/anonymous # SKIP Testing interop with libdbus not supported
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/.dirs/runtime
# Testing GDBus server at unix:dir=/tmp/gdbus-server-auth-DPCMW2 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false
# Connectable address: unix:path=/tmp/gdbus-server-auth-DPCMW2/dbus-P31LlAxk
# GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL
# GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL
# GLib-GIO-DEBUG: Accepting EXTERNAL authentication
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 5 /gdbus/server-auth/external # SKIP Testing interop with libdbus not supported
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/.dirs/runtime
# Testing GDBus server at unix:dir=/tmp/gdbus-server-auth-9FAMW2 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:false
# Connectable address: unix:path=/tmp/gdbus-server-auth-9FAMW2/dbus-VHC0RGy8
# GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1
# GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication
# GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 6 /gdbus/server-auth/sha1 # SKIP Testing interop with libdbus not supported
# Start of anonymous tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/anonymous/tcp/.dirs/runtime
# Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:true
# Connectable address: tcp:host=127.0.0.1,port=38971
# GLib-GIO-DEBUG: Accepting ANONYMOUS authentication
# GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS
# GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1
ok 7 /gdbus/server-auth/anonymous/tcp # SKIP Testing interop with libdbus not supported
# End of anonymous tests
# Start of external tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/external/require-same-user/.dirs/runtime
# Testing GDBus server at unix:dir=/tmp/gdbus-server-auth-HSGNW2 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false
# Connectable address: unix:path=/tmp/gdbus-server-auth-HSGNW2/dbus-6ttQMtJS
# GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL
# GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL
# GLib-GIO-DEBUG: Accepting EXTERNAL authentication
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16377,uid=1000,gid=1001
# GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16377
ok 8 /gdbus/server-auth/external/require-same-user # SKIP Testing interop with libdbus not supported
# End of external tests
# Start of sha1 tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_RO9KW2/gdbus/server-auth/sha1/tcp/.dirs/runtime
# Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:true
# Connectable address: tcp:host=127.0.0.1,port=45283
# GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1
# GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication
# GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1
# GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0
# GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1
ok 9 /gdbus/server-auth/sha1/tcp # SKIP Testing interop with libdbus not supported
# End of sha1 tests
# End of server-auth tests
# End of gdbus tests
PASS: glib/gdbus-server-auth.test
Running test: glib-networking/environment.test
# random seed: R02Sb79c17d815b802b14eb5050dcc8e5f89
1..3
# Start of proxy tests
# Start of environment tests
ok 1 /proxy/environment/uri
ok 2 /proxy/environment/socks
ok 3 /proxy/environment/ignore
# End of environment tests
# End of proxy tests
PASS: glib-networking/environment.test
Running test: glib/live-g-file.test
# random seed: R02Sbcce96cc72d61406e65bf0b94b628a3e
1..13
# Start of live-g-file tests

  Cleaning target testing structure in 'testdir_live-g-file'...
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /live-g-file/prep_clean_structure

  Going to create testing structure in 'testdir_live-g-file'...
    Creating directory 'dir1'...
    Creating directory 'dir1/subdir'...
    Creating directory 'dir2'...
    Creating directory 'dir-target'...
    Creating directory 'dir_no-access'...
    Creating directory 'dir_no-write'...
    Creating file 'target-file'...
    Creating file 'normal_file'...
    Creating symlink 'normal_file-symlink' --> 'normal_file'...
    Creating file 'executable_file'...
    Creating file 'private_file'...
    Creating file 'normal_file2'...
    Creating file 'readonly_file'...
    Creating file 'UTF_pr?i?lis? z'...
    Creating directory 'dir_pr?i?lis? z'...
    Creating symlink 'lost_symlink' --> 'nowhere'...
    Creating directory 'dir_hidden'...
    Creating file 'dir_hidden/.a-hidden-file'...
    Creating file 'dir_hidden/file-in-.hidden1'...
    Creating file 'dir_hidden/file-in-.hidden2'...
    Creating pattern file... done.
ok 2 /live-g-file/create_structure

  Testing sample structure in 'testdir_live-g-file'...
    Testing file 'dir1'...
    Testing file 'dir1/subdir'...
    Testing file 'dir2'...
    Testing file 'dir-target'...
    Testing file 'dir_no-access'...
    Testing file 'dir_no-write'...
    Testing file 'target-file'...
    Testing file 'normal_file'...
    Testing file 'normal_file-symlink'...
    Testing file 'executable_file'...
    Testing file 'private_file'...
    Testing file 'normal_file2'...
    Testing file 'readonly_file'...
    Testing file 'UTF_pr?i?lis? z'...
    Testing file 'dir_pr?i?lis? z'...
    Testing file 'lost_symlink'...
    Testing file 'dir_hidden'...
    Testing file 'dir_hidden/.a-hidden-file'...
    Testing file 'dir_hidden/file-in-.hidden1'...
    Testing file 'dir_hidden/file-in-.hidden2'...
    Testing pattern file...
      read 65536 bytes, total = 65536 of 65536.
ok 3 /live-g-file/test_initial_structure

  Traversing through the sample structure in 'testdir_live-g-file'...
  Found file dir1, relative to root: dir1
  Found file subdir, relative to root: dir1/subdir
  Found file dir2, relative to root: dir2
  Found file dir-target, relative to root: dir-target
  Found file dir_no-access, relative to root: dir_no-access
  Found file dir_no-write, relative to root: dir_no-write
  Found file target-file, relative to root: target-file
  Found file normal_file, relative to root: normal_file
  Found file normal_file-symlink, relative to root: normal_file-symlink
  Found file executable_file, relative to root: executable_file
  Found file private_file, relative to root: private_file
  Found file normal_file2, relative to root: normal_file2
  Found file readonly_file, relative to root: readonly_file
  Found file UTF_pr?i?lis? z, relative to root: UTF_pr?i?lis? z
  Found file dir_pr?i?lis? z, relative to root: dir_pr?i?lis? z
  Found file lost_symlink, relative to root: lost_symlink
  Found file dir_hidden, relative to root: dir_hidden
  Found file .a-hidden-file, relative to root: dir_hidden/.a-hidden-file
  Found file file-in-.hidden1, relative to root: dir_hidden/file-in-.hidden1
  Found file .hidden, relative to root: dir_hidden/.hidden
  Found file file-in-.hidden2, relative to root: dir_hidden/file-in-.hidden2
  Found file pattern_file, relative to root: pattern_file
ok 4 /live-g-file/test_traverse_structure

  Test enumerate 'testdir_live-g-file'...
    Testing file 'dir_no-access'
    Testing file 'normal_file'
    Testing file 'normal_file-symlink'
    Testing file 'not_exists'
    Testing file 'not_exists'
    Testing file 'not_exists2'
    Testing file 'not_exists3'
    Testing file 'not_exists4'
    Testing file 'dir_no-execute/file'
ok 5 /live-g-file/test_enumerate

  test_open: 'dir1'
  test_open: 'dir_no-access'
  test_open: 'target-file'
  test_open: 'normal_file-symlink'
  test_open: 'executable_file'
  test_open: 'private_file'
  test_open: 'readonly_file'
  test_open: 'UTF_pr?i?lis? z'
  test_open: 'pattern_file'
  test_open: 'not_exists'
  test_open: 'dir_no-execute/file'
  test_open: 'lost_symlink'
ok 6 /live-g-file/test_open

  test_create: 'dir1'
       error code 3 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir1?: Is a directory
  test_create: 'dir1/subdir'
       error code 3 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir1/subdir?: Is a directory
  test_create: 'dir2'
       error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir2?: File exists
  test_create: 'normal_file'
       error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/normal_file?: File exists
  test_create: 'executable_file'
  test_create: 'private_file'
  test_create: 'normal_file2'
  test_create: 'UTF_pr?i?lis? z'
       error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/UTF_pr?i?lis? z?: File exists
  test_create: 'dir_pr?i?lis? z'
       error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_pr?i?lis? z?: File exists
  test_create: 'pattern_file'
  test_create: 'not_exists2'
  test_create: 'not_exists3'
  test_create: 'not_exists4'
ok 7 /live-g-file/test_create

# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> 'dir-target'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> '.'
       res = 0, error code 2 = Target file exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> 'target-file'
       res = 0, error code 4 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/dir1/subdir?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> 'not_exists'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> 'dir_no-access'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir1/subdir' --> 'dir_no-write'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir2' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> 'dir-target'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> '.'
       res = 0, error code 2 = Target file exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> 'target-file'
       res = 0, error code 4 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/dir-target?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> 'not_exists'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> 'dir_no-access'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'dir-target' --> 'dir_no-write'
       res = 0, error code 25 = Can?t recursively copy directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/target-file?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/target-file?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/target-file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'target-file' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/target-file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> '.'
       res = 0, error code 2 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/normal_file-symlink: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> 'target-file'
       res = 0, error code 4 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/normal_file-symlink: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> 'not_exists'
       res = 0, error code 1 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/normal_file-symlink: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> 'dir_no-access'
       res = 0, error code 14 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/normal_file-symlink: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file-symlink' --> 'dir_no-write'
       res = 0, error code 14 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/normal_file-symlink: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/executable_file?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/executable_file?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/executable_file?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/executable_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'executable_file' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/executable_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/private_file?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/private_file?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/private_file?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/private_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'private_file' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/private_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/normal_file2?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/normal_file2?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/normal_file2?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/normal_file2?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'normal_file2' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/normal_file2?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/UTF_pr?i?lis? z?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/UTF_pr?i?lis? z?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/UTF_pr?i?lis? z?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/UTF_pr?i?lis? z?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'UTF_pr?i?lis? z' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/UTF_pr?i?lis? z?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> '.'
       res = 0, error code 2 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/pattern_file?: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> 'target-file'
       res = 0, error code 4 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/pattern_file?: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> 'not_exists'
       res = 0, error code 1 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/pattern_file?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> 'dir_no-access'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/pattern_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'pattern_file' --> 'dir_no-write'
       res = 0, error code 14 = Error opening file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/pattern_file?: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'dir-target'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> '.'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'target-file'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'not_exists'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'dir_no-access'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'dir_no-write'
       res = 0, error code 1 = Error when getting information for file ?/var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists?: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'not_exists' --> 'dir-target'
       res = 0, error code 1 = Error moving file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> 'dir-target'
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> '.'
       res = 0, error code 2 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/lost_symlink: File exists
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> 'target-file'
       res = 0, error code 4 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/target-file/lost_symlink: Not a directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> 'not_exists'
       res = 0, error code 1 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists/lost_symlink: No such file or directory
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> 'dir_no-access'
       res = 0, error code 14 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-access/lost_symlink: Permission denied
# We do not have CAP_DAC_OVERRIDE or equivalent
    do_copy_move: 'lost_symlink' --> 'dir_no-write'
       res = 0, error code 14 = Error making symbolic link /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-write/lost_symlink: Permission denied
ok 8 /live-g-file/test_copy_move

  Deleting dir1, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir1
      result = 0, error = Error removing file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir1: Directory not empty
  Deleting dir2, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir2
      result = 0, error = Error removing file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir2: No such file or directory
  Deleting executable_file, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/executable_file
      result = 0, error = Trashing on system internal mounts is not supported
  Deleting readonly_file, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/readonly_file
  Deleting dir_pr?i?lis? z, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_pr?i?lis? z
  Deleting not_exists, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists
      result = 0, error = Error removing file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists: No such file or directory
  Deleting not_exists, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists
      result = 0, error = Error trashing file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/not_exists: No such file or directory
  Deleting dir_no-execute/file, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-execute/file
      result = 0, error = Error removing file /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/dir_no-execute/file: No such file or directory
  Deleting lost_symlink, path = /var/volatile/tmp/test-tmp-glib_live-g-file.test-HKEOW2/testdir_live-g-file/lost_symlink
ok 9 /live-g-file/test_delete
# We do not have CAP_DAC_OVERRIDE or equivalent
ok 10 /live-g-file/test_make_directory_with_parents

  Cleaning target testing structure in 'testdir_live-g-file'...
    deleting 'dir1'
    deleting 'subdir'
    deleting 'dir-target'
    deleting 'dir2'
    deleting 'target-file'
    deleting 'normal_file-symlink'
    deleting 'executable_file'
    deleting 'private_file'
    deleting 'normal_file2'
    deleting 'UTF_pr?i?lis? z'
    deleting 'pattern_file'
    deleting 'lost_symlink'
    deleting 'dir_no-access'
    deleting 'dir_no-write'
    deleting 'target-file'
    deleting 'normal_file'
    deleting 'normal_file-symlink'
    deleting 'executable_file~'
    deleting 'private_file'
    deleting 'normal_file2~'
    deleting 'UTF_pr?i?lis? z'
    deleting 'dir_hidden'
    deleting '.a-hidden-file'
    deleting 'file-in-.hidden1'
    deleting '.hidden'
    deleting 'file-in-.hidden2'
    deleting 'pattern_file'
    deleting 'executable_file'
    deleting 'normal_file2'
    deleting 'not_exists2'
    deleting 'not_exists3'
    deleting 'not_exists4'
    deleting 'a'
ok 11 /live-g-file/final_clean
# Start of test_unix_is_mountpoint tests
ok 12 /live-g-file/test_unix_is_mountpoint/sysroot
ok 13 /live-g-file/test_unix_is_mountpoint/proc
# End of test_unix_is_mountpoint tests
# End of live-g-file tests
PASS: glib/live-g-file.test
Running test: glib/gdbus-method-invocation.test
# random seed: R02Sb7dc93dc8140f2abb7ab851ee6c1f7d3
1..1
# Start of gdbus tests
# Start of method-invocation tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/system-config1:/tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/system-data1:/tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-method-invocation_GY1PW2/gdbus/method-invocation/return/.dirs/runtime
# /gdbus/method-invocation/return summary: Test calling g_dbus_method_invocation_return_*() in various ways
# Calling org.freedesktop.DBus.Properties.Get
# Calling org.freedesktop.DBus.Properties.Get
# Calling org.freedesktop.DBus.Properties.Get
# Calling org.freedesktop.DBus.Properties.Set
# Calling org.freedesktop.DBus.Properties.GetAll
# Calling org.example.Foo.WrongReturnType
# Calling org.example.Foo.GetFDs
# Calling org.example.Foo.GetFDs
# Calling org.example.Foo.ReturnError
# Calling org.example.Foo.CloseBeforeReturning
ok 1 /gdbus/method-invocation/return
# End of method-invocation tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-method-invocation.test
Running test: glib/gdbus-connection.test
# random seed: R02S59fdd049db499403c95b158328335fda
1..8
# Start of gdbus tests
# Start of connection tests
ok 1 /gdbus/connection/bus-failure
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 2 /gdbus/connection/basic
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 3 /gdbus/connection/life-cycle
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 4 /gdbus/connection/send
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 5 /gdbus/connection/signals
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 6 /gdbus/connection/signal-match-rules
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 7 /gdbus/connection/filter
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 8 /gdbus/connection/serials
# End of connection tests
# End of gdbus tests
PASS: glib/gdbus-connection.test
Running test: glib/utf8-validate.test
# random seed: R02S77528b8df3404c53861f74ba601f87ba
1..216
# Start of utf8 tests
# Vector 0
# Vector 1
# Vector 2
# Vector 3
# Vector 4
# Vector 5
# Vector 6
# Vector 7
# Vector 8
# Vector 9
# Vector 10
# Vector 11
# Vector 12
# Vector 13
# Vector 14
# Vector 15
# Vector 16
# Vector 17
# Vector 18
# Vector 19
# Vector 20
# Vector 21
# Vector 22
# Vector 23
# Vector 24
# Vector 25
# Vector 26
# Vector 27
ok 1 /utf8/get-char-validated
# Start of validate tests
ok 2 /utf8/validate/0
ok 3 /utf8/validate/1
ok 4 /utf8/validate/2
ok 5 /utf8/validate/3
ok 6 /utf8/validate/4
ok 7 /utf8/validate/5
ok 8 /utf8/validate/6
ok 9 /utf8/validate/7
ok 10 /utf8/validate/8
ok 11 /utf8/validate/9
ok 12 /utf8/validate/10
ok 13 /utf8/validate/11
ok 14 /utf8/validate/12
ok 15 /utf8/validate/13
ok 16 /utf8/validate/14
ok 17 /utf8/validate/15
ok 18 /utf8/validate/16
ok 19 /utf8/validate/17
ok 20 /utf8/validate/18
ok 21 /utf8/validate/19
ok 22 /utf8/validate/20
ok 23 /utf8/validate/21
ok 24 /utf8/validate/22
ok 25 /utf8/validate/23
ok 26 /utf8/validate/24
ok 27 /utf8/validate/25
ok 28 /utf8/validate/26
ok 29 /utf8/validate/27
ok 30 /utf8/validate/28
ok 31 /utf8/validate/29
ok 32 /utf8/validate/30
ok 33 /utf8/validate/31
ok 34 /utf8/validate/32
ok 35 /utf8/validate/33
ok 36 /utf8/validate/34
ok 37 /utf8/validate/35
ok 38 /utf8/validate/36
ok 39 /utf8/validate/37
ok 40 /utf8/validate/38
ok 41 /utf8/validate/39
ok 42 /utf8/validate/40
ok 43 /utf8/validate/41
ok 44 /utf8/validate/42
ok 45 /utf8/validate/43
ok 46 /utf8/validate/44
ok 47 /utf8/validate/45
ok 48 /utf8/validate/46
ok 49 /utf8/validate/47
ok 50 /utf8/validate/48
ok 51 /utf8/validate/49
ok 52 /utf8/validate/50
ok 53 /utf8/validate/51
ok 54 /utf8/validate/52
ok 55 /utf8/validate/53
ok 56 /utf8/validate/54
ok 57 /utf8/validate/55
ok 58 /utf8/validate/56
ok 59 /utf8/validate/57
ok 60 /utf8/validate/58
ok 61 /utf8/validate/59
ok 62 /utf8/validate/60
ok 63 /utf8/validate/61
ok 64 /utf8/validate/62
ok 65 /utf8/validate/63
ok 66 /utf8/validate/64
ok 67 /utf8/validate/65
ok 68 /utf8/validate/66
ok 69 /utf8/validate/67
ok 70 /utf8/validate/68
ok 71 /utf8/validate/69
ok 72 /utf8/validate/70
ok 73 /utf8/validate/71
ok 74 /utf8/validate/72
ok 75 /utf8/validate/73
ok 76 /utf8/validate/74
ok 77 /utf8/validate/75
ok 78 /utf8/validate/76
ok 79 /utf8/validate/77
ok 80 /utf8/validate/78
ok 81 /utf8/validate/79
ok 82 /utf8/validate/80
ok 83 /utf8/validate/81
ok 84 /utf8/validate/82
ok 85 /utf8/validate/83
ok 86 /utf8/validate/84
ok 87 /utf8/validate/85
ok 88 /utf8/validate/86
ok 89 /utf8/validate/87
ok 90 /utf8/validate/88
ok 91 /utf8/validate/89
ok 92 /utf8/validate/90
ok 93 /utf8/validate/91
ok 94 /utf8/validate/92
ok 95 /utf8/validate/93
ok 96 /utf8/validate/94
ok 97 /utf8/validate/95
ok 98 /utf8/validate/96
ok 99 /utf8/validate/97
ok 100 /utf8/validate/98
ok 101 /utf8/validate/99
ok 102 /utf8/validate/100
ok 103 /utf8/validate/101
ok 104 /utf8/validate/102
ok 105 /utf8/validate/103
ok 106 /utf8/validate/104
ok 107 /utf8/validate/105
ok 108 /utf8/validate/106
ok 109 /utf8/validate/107
ok 110 /utf8/validate/108
ok 111 /utf8/validate/109
ok 112 /utf8/validate/110
ok 113 /utf8/validate/111
ok 114 /utf8/validate/112
ok 115 /utf8/validate/113
ok 116 /utf8/validate/114
ok 117 /utf8/validate/115
ok 118 /utf8/validate/116
ok 119 /utf8/validate/117
ok 120 /utf8/validate/118
ok 121 /utf8/validate/119
ok 122 /utf8/validate/120
ok 123 /utf8/validate/121
ok 124 /utf8/validate/122
ok 125 /utf8/validate/123
ok 126 /utf8/validate/124
ok 127 /utf8/validate/125
ok 128 /utf8/validate/126
ok 129 /utf8/validate/127
ok 130 /utf8/validate/128
ok 131 /utf8/validate/129
ok 132 /utf8/validate/130
ok 133 /utf8/validate/131
ok 134 /utf8/validate/132
ok 135 /utf8/validate/133
ok 136 /utf8/validate/134
ok 137 /utf8/validate/135
ok 138 /utf8/validate/136
ok 139 /utf8/validate/137
ok 140 /utf8/validate/138
ok 141 /utf8/validate/139
ok 142 /utf8/validate/140
ok 143 /utf8/validate/141
ok 144 /utf8/validate/142
ok 145 /utf8/validate/143
ok 146 /utf8/validate/144
ok 147 /utf8/validate/145
ok 148 /utf8/validate/146
ok 149 /utf8/validate/147
ok 150 /utf8/validate/148
ok 151 /utf8/validate/149
ok 152 /utf8/validate/150
ok 153 /utf8/validate/151
ok 154 /utf8/validate/152
ok 155 /utf8/validate/153
ok 156 /utf8/validate/154
ok 157 /utf8/validate/155
ok 158 /utf8/validate/156
ok 159 /utf8/validate/157
ok 160 /utf8/validate/158
ok 161 /utf8/validate/159
ok 162 /utf8/validate/160
ok 163 /utf8/validate/161
ok 164 /utf8/validate/162
ok 165 /utf8/validate/163
ok 166 /utf8/validate/164
ok 167 /utf8/validate/165
ok 168 /utf8/validate/166
ok 169 /utf8/validate/167
ok 170 /utf8/validate/168
ok 171 /utf8/validate/169
ok 172 /utf8/validate/170
ok 173 /utf8/validate/171
ok 174 /utf8/validate/172
ok 175 /utf8/validate/173
ok 176 /utf8/validate/174
ok 177 /utf8/validate/175
ok 178 /utf8/validate/176
ok 179 /utf8/validate/177
ok 180 /utf8/validate/178
ok 181 /utf8/validate/179
ok 182 /utf8/validate/180
ok 183 /utf8/validate/181
ok 184 /utf8/validate/182
ok 185 /utf8/validate/183
ok 186 /utf8/validate/184
ok 187 /utf8/validate/185
ok 188 /utf8/validate/186
ok 189 /utf8/validate/187
ok 190 /utf8/validate/188
ok 191 /utf8/validate/189
ok 192 /utf8/validate/190
ok 193 /utf8/validate/191
ok 194 /utf8/validate/192
ok 195 /utf8/validate/193
ok 196 /utf8/validate/194
ok 197 /utf8/validate/195
ok 198 /utf8/validate/196
ok 199 /utf8/validate/197
ok 200 /utf8/validate/198
ok 201 /utf8/validate/199
ok 202 /utf8/validate/200
ok 203 /utf8/validate/201
ok 204 /utf8/validate/202
ok 205 /utf8/validate/203
ok 206 /utf8/validate/204
ok 207 /utf8/validate/205
ok 208 /utf8/validate/206
ok 209 /utf8/validate/207
ok 210 /utf8/validate/208
ok 211 /utf8/validate/209
ok 212 /utf8/validate/210
ok 213 /utf8/validate/211
ok 214 /utf8/validate/212
ok 215 /utf8/validate/213
ok 216 /utf8/validate/214
# End of validate tests
# End of utf8 tests
PASS: glib/utf8-validate.test
Running test: glib/cond.test
# random seed: R02Sd4584dfe8e15085fbba4d4d3a44d5a8a
1..4
# Start of thread tests
ok 1 /thread/cond1
ok 2 /thread/cond2
# Start of cond tests
ok 3 /thread/cond/wait-until
# Start of wait-until tests
# /thread/cond/wait-until/contended-and-interrupted summary: Check proper handling of errno in g_cond_wait_until with a contended mutex
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/957
Executing: glib/cond.test
ok 4 /thread/cond/wait-until/contended-and-interrupted
# End of wait-until tests
# End of cond tests
# End of thread tests
PASS: glib/cond.test
Running test: glib/gdbus-connection-loss.test
# random seed: R02Sdc0607178d5cbbd9a1b929d1daffe570
1..1
# Start of gdbus tests
ok 1 /gdbus/connection-loss
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-connection-loss.test
Running test: glib/memory-input-stream.test
# random seed: R02S33d4eba100a813c229acd3b732c911b4
1..6
# Start of memory-input-stream tests
ok 1 /memory-input-stream/read-chunks
ok 2 /memory-input-stream/async
ok 3 /memory-input-stream/seek
ok 4 /memory-input-stream/truncate
ok 5 /memory-input-stream/read-bytes
ok 6 /memory-input-stream/from-bytes
# End of memory-input-stream tests
PASS: glib/memory-input-stream.test
Running test: glib/ifaceproperties.test
# random seed: R02Sbe0e468b08397216cdfbde1d1b3afa87
1..7
# Start of interface tests
# Start of properties tests
ok 1 /interface/properties/set
ok 2 /interface/properties/notify
ok 3 /interface/properties/find-overridden
ok 4 /interface/properties/list-overridden
ok 5 /interface/properties/find-interface
ok 6 /interface/properties/list-interface
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=637738
ok 7 /interface/properties/not-overridden
# End of properties tests
# End of interface tests
PASS: glib/ifaceproperties.test
Running test: glib/option-argv0.test
# random seed: R02Se55d25fec955529aa9a39c2bc3c3d7c6
1..1
# Start of option tests
ok 1 /option/argv0
# End of option tests
PASS: glib/option-argv0.test
Running test: glib/value.test
# random seed: R02S13239abbf37da3ea1c595aa91aac0606
1..8
# Start of value tests
ok 1 /value/basic
ok 2 /value/collection
ok 3 /value/copying
ok 4 /value/enum-transformation
ok 5 /value/gtype
# /value/string summary: Test that G_TYPE_STRING GValue copy properly
ok 6 /value/string
# Next: GObject object in GValue of GObject to GValue of GObject
# Next: GObject object in GValue of GObject to GValue of TestInterface
# Next: GObject object in GValue of GObject to GValue of TestObjectA
# Next: GObject object in GValue of GObject to GValue of TestObjectB
# Next: GObject object in GValue of GObject to GValue of TestObjectA1
# Next: GObject object in GValue of GObject to GValue of TestObjectA2
# Next: TestObjectA object in GValue of GObject to GValue of GObject
# Next: TestObjectA object in GValue of GObject to GValue of TestInterface
# Next: TestObjectA object in GValue of GObject to GValue of TestObjectA
# Next: TestObjectA object in GValue of GObject to GValue of TestObjectB
# Next: TestObjectA object in GValue of GObject to GValue of TestObjectA1
# Next: TestObjectA object in GValue of GObject to GValue of TestObjectA2
# Next: TestObjectA object in GValue of TestObjectA to GValue of GObject
# Next: TestObjectA object in GValue of TestObjectA to GValue of TestInterface
# Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA
# Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectB
# Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA1
# Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA2
# Next: TestObjectB object in GValue of GObject to GValue of GObject
# Next: TestObjectB object in GValue of GObject to GValue of TestInterface
# Next: TestObjectB object in GValue of GObject to GValue of TestObjectA
# Next: TestObjectB object in GValue of GObject to GValue of TestObjectB
# Next: TestObjectB object in GValue of GObject to GValue of TestObjectA1
# Next: TestObjectB object in GValue of GObject to GValue of TestObjectA2
# Next: TestObjectB object in GValue of TestInterface to GValue of GObject
# Next: TestObjectB object in GValue of TestInterface to GValue of TestInterface
# Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA
# Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectB
# Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA1
# Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA2
# Next: TestObjectB object in GValue of TestObjectB to GValue of GObject
# Next: TestObjectB object in GValue of TestObjectB to GValue of TestInterface
# Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA
# Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectB
# Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA1
# Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA2
# Next: TestObjectA1 object in GValue of GObject to GValue of GObject
# Next: TestObjectA1 object in GValue of GObject to GValue of TestInterface
# Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA
# Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectB
# Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA1
# Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA2
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of GObject
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestInterface
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectB
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA1
# Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA2
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of GObject
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestInterface
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectB
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA1
# Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA2
# Next: TestObjectA2 object in GValue of GObject to GValue of GObject
# Next: TestObjectA2 object in GValue of GObject to GValue of TestInterface
# Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA
# Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectB
# Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA1
# Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA2
# Next: TestObjectA2 object in GValue of TestInterface to GValue of GObject
# Next: TestObjectA2 object in GValue of TestInterface to GValue of TestInterface
# Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA
# Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectB
# Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA1
# Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA2
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of GObject
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestInterface
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectB
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA1
# Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA2
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of GObject
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestInterface
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectB
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA1
# Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA2
ok 7 /value/transform-object
# Start of array tests
ok 8 /value/array/basic
# End of array tests
# End of value tests
PASS: glib/value.test
Running test: glib/utf8-performance.test
# random seed: R02S929ac3cf56dfdbc77cb76e431d0a3d77
1..0
PASS: glib/utf8-performance.test
Running test: glib/markup-collect.test
# random seed: R02S2a90f3f2a35cc5f9bd225573f8ad6a6f
1..21
# Start of markup tests
# Start of collect tests
ok 1 /markup/collect/0
ok 2 /markup/collect/1
ok 3 /markup/collect/2
ok 4 /markup/collect/3
ok 5 /markup/collect/4
ok 6 /markup/collect/5
ok 7 /markup/collect/6
ok 8 /markup/collect/7
ok 9 /markup/collect/8
ok 10 /markup/collect/9
ok 11 /markup/collect/10
ok 12 /markup/collect/11
ok 13 /markup/collect/12
ok 14 /markup/collect/13
ok 15 /markup/collect/14
ok 16 /markup/collect/15
ok 17 /markup/collect/16
ok 18 /markup/collect/17
ok 19 /markup/collect/18
ok 20 /markup/collect/19
ok 21 /markup/collect/cleanup
# End of collect tests
# End of markup tests
PASS: glib/markup-collect.test
Running test: glib/slice.test
# random seed: R02S57e83e4dec25e369422cd1fefdd5ff06
1..3
# Start of slice tests
ok 1 /slice/copy
ok 2 /slice/chain
ok 3 /slice/allocate
# End of slice tests
PASS: glib/slice.test
Running test: glib/fileutils.test
# random seed: R02Seed9249f5dd72894e9ee35784fc7c06e
1..25
# Start of fileutils tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/paths/.dirs/runtime
ok 1 /fileutils/paths
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/build-path/.dirs/runtime
ok 2 /fileutils/build-path
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/build-pathv/.dirs/runtime
ok 3 /fileutils/build-pathv
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/build-filename/.dirs/runtime
ok 4 /fileutils/build-filename
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/build-filenamev/.dirs/runtime
ok 5 /fileutils/build-filenamev
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents/.dirs/runtime
ok 6 /fileutils/mkdir-with-parents
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/mkdir-with-parents-permission/.dirs/runtime
# We do not have CAP_DAC_OVERRIDE or equivalent
ok 7 /fileutils/mkdir-with-parents-permission
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/format-size-for-display/.dirs/runtime
ok 8 /fileutils/format-size-for-display
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/errors/.dirs/runtime
ok 9 /fileutils/errors
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/basename/.dirs/runtime
ok 10 /fileutils/basename
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/get-basename/.dirs/runtime
ok 11 /fileutils/get-basename
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/dirname/.dirs/runtime
ok 12 /fileutils/dirname
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/dir-make-tmp/.dirs/runtime
ok 13 /fileutils/dir-make-tmp
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/file-open-tmp/.dirs/runtime
ok 14 /fileutils/file-open-tmp
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/file-test/.dirs/runtime
ok 15 /fileutils/file-test
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/mkstemp/.dirs/runtime
ok 16 /fileutils/mkstemp
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/mkdtemp/.dirs/runtime
ok 17 /fileutils/mkdtemp
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/get-contents/.dirs/runtime
ok 18 /fileutils/get-contents
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/set-contents/.dirs/runtime
ok 19 /fileutils/set-contents
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/.dirs/runtime
# /fileutils/set-contents-full summary: Test g_file_set_contents_full() with various flags
# Flags 0 and test 0
# Flags 0 and test 1
# Flags 0 and test 2
# Flags 0 and test 3
# Flags 0 and test 4
# Flags 0 and test 5
# Flags 1 and test 0
# Flags 1 and test 1
# Flags 1 and test 2
# Flags 1 and test 3
# Flags 1 and test 4
# Flags 1 and test 5
# Flags 2 and test 0
# Flags 2 and test 1
# Flags 2 and test 2
# Flags 2 and test 3
# Flags 2 and test 4
# Flags 2 and test 5
# Flags 3 and test 0
# Flags 3 and test 1
# Flags 3 and test 2
# Flags 3 and test 3
# Flags 3 and test 4
# Flags 3 and test 5
# Flags 4 and test 0
# Flags 4 and test 1
# Flags 4 and test 2
# Flags 4 and test 3
# Flags 4 and test 4
# Flags 4 and test 5
# Flags 5 and test 0
# Flags 5 and test 1
# Flags 5 and test 2
# Flags 5 and test 3
# Flags 5 and test 4
# Flags 5 and test 5
# Flags 6 and test 0
# Flags 6 and test 1
# Flags 6 and test 2
# Flags 6 and test 3
# Flags 6 and test 4
# Flags 6 and test 5
ok 20 /fileutils/set-contents-full
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/read-link/.dirs/runtime
ok 21 /fileutils/read-link
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/stdio-wrappers/.dirs/runtime
# We do not have CAP_DAC_OVERRIDE or equivalent
ok 22 /fileutils/stdio-wrappers
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/fopen-modes/.dirs/runtime
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/119
# Testing fopen() mode 'w'
# Testing fopen() mode 'r'
# Testing fopen() mode 'a'
# Testing fopen() mode 'w+'
# Testing fopen() mode 'r+'
# Testing fopen() mode 'a+'
# Testing fopen() mode 'wb'
# Testing fopen() mode 'rb'
# Testing fopen() mode 'ab'
# Testing fopen() mode 'w+b'
# Testing fopen() mode 'r+b'
# Testing fopen() mode 'a+b'
# Testing fopen() mode 'wb+'
# Testing fopen() mode 'rb+'
# Testing fopen() mode 'ab+'
ok 23 /fileutils/fopen-modes
# Start of set-contents-full tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-file/.dirs/runtime
# We do not have CAP_DAC_OVERRIDE or equivalent
# /fileutils/set-contents-full/read-only-file summary: Test g_file_set_contents_full() on a read-only file
ok 24 /fileutils/set-contents-full/read-only-file
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/system-config1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/system-data1:/tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_DP8HW2/fileutils/set-contents-full/read-only-directory/.dirs/runtime
# /fileutils/set-contents-full/read-only-directory summary: Test g_file_set_contents_full() on a file in a read-only directory
# Flags 0
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 1
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 2
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 3
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 4
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 5
# We do not have CAP_DAC_OVERRIDE or equivalent
# Flags 6
# We do not have CAP_DAC_OVERRIDE or equivalent
ok 25 /fileutils/set-contents-full/read-only-directory
# End of set-contents-full tests
# End of fileutils tests
PASS: glib/fileutils.test
Running test: glib/socket-listener.test
# random seed: R02S0592a054d6538a97307bc615e070a56c
1..1
# Start of socket-listener tests
ok 1 /socket-listener/event-signal
# End of socket-listener tests
PASS: glib/socket-listener.test
Running test: glib/hmac.test
# random seed: R02Seca6718ce8a5e61032d1eb67b7fac055
1..37
# Start of hmac tests
ok 1 /hmac/sha1-1
ok 2 /hmac/sha1-2
ok 3 /hmac/sha1-3
ok 4 /hmac/sha1-4
ok 5 /hmac/sha1-5
ok 6 /hmac/sha1-6
ok 7 /hmac/sha1-7
ok 8 /hmac/sha256-1
ok 9 /hmac/sha256-2
ok 10 /hmac/sha256-3
ok 11 /hmac/sha256-4
ok 12 /hmac/sha256-5
ok 13 /hmac/sha256-6
ok 14 /hmac/sha384-1
ok 15 /hmac/sha384-2
ok 16 /hmac/sha384-3
ok 17 /hmac/sha384-4
ok 18 /hmac/sha384-5
ok 19 /hmac/sha384-6
ok 20 /hmac/sha512-1
ok 21 /hmac/sha512-2
ok 22 /hmac/sha512-3
ok 23 /hmac/sha512-4
ok 24 /hmac/sha512-5
ok 25 /hmac/sha512-6
ok 26 /hmac/md5-1
ok 27 /hmac/md5-2
ok 28 /hmac/md5-3
ok 29 /hmac/md5-4
ok 30 /hmac/md5-5
ok 31 /hmac/md5-6
ok 32 /hmac/md5-7
ok 33 /hmac/ref-unref
ok 34 /hmac/copy
ok 35 /hmac/for-data
ok 36 /hmac/for-string
ok 37 /hmac/for-bytes
# End of hmac tests
PASS: glib/hmac.test
Running test: glib/tls-certificate.test
# random seed: R02Sab81392f7806e183ae539102f48c92c7
1..19
# Start of tls-certificate tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend?
ok 1 /tls-certificate/pem-parser
ok 2 /tls-certificate/pem-parser-handles-chain
ok 3 /tls-certificate/from_file
ok 4 /tls-certificate/from_files
ok 5 /tls-certificate/from_files_crlf
ok 6 /tls-certificate/from_files_pkcs8
ok 7 /tls-certificate/from_files_pkcs8enc
ok 8 /tls-certificate/list_from_file
ok 9 /tls-certificate/pkcs11-uri
ok 10 /tls-certificate/pkcs11-uri-unsupported
ok 11 /tls-certificate/from_pkcs12
ok 12 /tls-certificate/from_pkcs12_file
ok 13 /tls-certificate/not-valid-before
ok 14 /tls-certificate/not-valid-after
ok 15 /tls-certificate/subject-name
ok 16 /tls-certificate/issuer-name
ok 17 /tls-certificate/dns-names
ok 18 /tls-certificate/ip-addresses
ok 19 /tls-certificate/pem-parser-no-sentinel
# End of tls-certificate tests
PASS: glib/tls-certificate.test
Running test: glib/objects2.test
START: /usr/libexec/installed-tests/glib/objects2
init 0x55b872639e00
........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................dispose 0x55b872639e00!

PASS: glib/objects2.test
Running test: glib/gdbus-peer.test
# random seed: R02S484a5d48a1c29060b2c78383c70839a9
1..12
# Start of gdbus tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/.dirs/runtime
# Testing with unix:dir address
# Testing with unix:tmpdir address
# Testing with unix:path address
ok 1 /gdbus/peer-to-peer
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/delayed-message-processing/.dirs/runtime
# Testing with unix:dir address
ok 2 /gdbus/delayed-message-processing
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/nonce-tcp/.dirs/runtime
ok 3 /gdbus/nonce-tcp
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/tcp-anonymous/.dirs/runtime
ok 4 /gdbus/tcp-anonymous
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/credentials/.dirs/runtime
ok 5 /gdbus/credentials
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/codegen-peer-to-peer/.dirs/runtime
# Testing with unix:dir address
# Machine ID: 8795b0051e919c0f3ae4e962672036a4
ok 6 /gdbus/codegen-peer-to-peer
# Start of peer-to-peer tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/signals/.dirs/runtime
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1620
# Testing with unix:dir address
ok 7 /gdbus/peer-to-peer/signals
# Start of invalid tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/server/.dirs/runtime
ok 8 /gdbus/peer-to-peer/invalid/server
# Start of conn tests
# Start of stream tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/runtime
ok 9 /gdbus/peer-to-peer/invalid/conn/stream/async
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/runtime
ok 10 /gdbus/peer-to-peer/invalid/conn/stream/sync
# End of stream tests
# Start of addr tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/runtime
ok 11 /gdbus/peer-to-peer/invalid/conn/addr/async
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data1:/tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_V85IW2/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/runtime
ok 12 /gdbus/peer-to-peer/invalid/conn/addr/sync
# End of addr tests
# End of conn tests
# End of invalid tests
# End of peer-to-peer tests
# End of gdbus tests
PASS: glib/gdbus-peer.test
Running test: glib/rand.test
# random seed: R02S852a3b5668e8863b52e3cf127e91d445
1..2
# Start of rand tests
ok 1 /rand/test-rand
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=502560
ok 2 /rand/double-range
# End of rand tests
PASS: glib/rand.test
Running test: glib/data-output-stream.test
# random seed: R02Sa6a1702b336eede725ae62879af67cad
1..7
# Start of data-output-stream tests
ok 1 /data-output-stream/basic
ok 2 /data-output-stream/write-lines-LF
ok 3 /data-output-stream/write-lines-CR
ok 4 /data-output-stream/write-lines-CR-LF
ok 5 /data-output-stream/write-int
ok 6 /data-output-stream/seek
ok 7 /data-output-stream/truncate
# End of data-output-stream tests
PASS: glib/data-output-stream.test
Running test: glib/strvbuilder.test
# random seed: R02S5376a4b673dfae4abf71e51a63e07ad6
1..5
# Start of strvbuilder tests
ok 1 /strvbuilder/empty
ok 2 /strvbuilder/add
ok 3 /strvbuilder/addv
ok 4 /strvbuilder/add_many
ok 5 /strvbuilder/ref
# End of strvbuilder tests
PASS: glib/strvbuilder.test
Running test: glib/network-monitor-race.test
# random seed: R02S03156ac4830be046df6392bb829ab147
1..1
# Start of network-monitor tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=793727
Executing: glib/network-monitor-race.test
ok 1 /network-monitor/create-in-thread
# End of network-monitor tests
PASS: glib/network-monitor-race.test
Running test: glib/gdbus-test-codegen.test
# random seed: R02S1094b9f73d7d002d8f13c8b7980f7474
1..8
# Start of gdbus tests
# Start of codegen tests
ok 1 /gdbus/codegen/annotations
ok 2 /gdbus/codegen/interface_stability
ok 3 /gdbus/codegen/object-manager
ok 4 /gdbus/codegen/property-naming
ok 5 /gdbus/codegen/autocleanups
ok 6 /gdbus/codegen/deprecations
ok 7 /gdbus/codegen/standalone-interface-info
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726
ok 8 /gdbus/codegen/unix-fd-list
# End of codegen tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-test-codegen.test
Running test: glib/accumulator.test
PASS: glib/accumulator.test
Running test: glib/tree.test
# random seed: R02S3365f5e150f2089b049d89b2176ca9a5
1..7
# Start of tree tests
ok 1 /tree/search
ok 2 /tree/remove
ok 3 /tree/destroy
ok 4 /tree/traverse
ok 5 /tree/insert
ok 6 /tree/bounds
ok 7 /tree/remove-all
# End of tree tests
PASS: glib/tree.test
Running test: glib/node.test
# random seed: R02S5245eb5b7f128c81cd7a9a1eba238daf
1..6
# Start of node tests
ok 1 /node/allocation
ok 2 /node/construction
ok 3 /node/traversal
ok 4 /node/misc
ok 5 /node/unlink
ok 6 /node/copy
# End of node tests
PASS: glib/node.test
Running test: glib/autoptr.test
# random seed: R02Sbe4dfb504b7dccfd971303831d57bb65
1..6
# Start of autoptr tests
ok 1 /autoptr/autoptr
ok 2 /autoptr/autoptr_steal
ok 3 /autoptr/autolist
ok 4 /autoptr/autoslist
ok 5 /autoptr/autoqueue
ok 6 /autoptr/autoclass
# End of autoptr tests
PASS: glib/autoptr.test
Running test: glib/reference.test
# random seed: R02Scaa4a8b862098c5fb703b8d7b09276b6
1..23
# Start of type tests
ok 1 /type/fundamentals
ok 2 /type/qdata
ok 3 /type/query
ok 4 /type/class-private
# End of type tests
# Start of object tests
ok 5 /object/clear
ok 6 /object/clear-function
ok 7 /object/set
ok 8 /object/set-function
ok 9 /object/value
ok 10 /object/initially-unowned
ok 11 /object/weak-pointer
ok 12 /object/weak-ref
ok 13 /object/toggle-ref
ok 14 /object/qdata
ok 15 /object/qdata2
# Start of set tests
# /object/set/derived-type summary: Check that g_set_object() doesn?t give strict aliasing warnings when used on types derived from GObject
ok 16 /object/set/derived-type
# End of set tests
# Start of weak-pointer tests
ok 17 /object/weak-pointer/clear
ok 18 /object/weak-pointer/clear-function
ok 19 /object/weak-pointer/set
ok 20 /object/weak-pointer/set-function
# End of weak-pointer tests
# Start of weak-ref tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390
# /object/weak-ref/on-dispose summary: Test that a weak ref set during dispose vfunc is cleared
ok 21 /object/weak-ref/on-dispose
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/865
# /object/weak-ref/on-run-dispose summary: Test that a weak ref is cleared on g_object_run_dispose()
ok 22 /object/weak-ref/on-run-dispose
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390
# /object/weak-ref/on-toggle-notify summary: Test that a weak ref set on toggle notify is cleared
ok 23 /object/weak-ref/on-toggle-notify
# End of weak-ref tests
# End of object tests
PASS: glib/reference.test
Running test: glib/protocol.test
# random seed: R02S4beb9da297d296a174217e66e2c47e76
1..9
# Start of glib tests
# Start of testing tests
# Start of protocol tests
ok 1 /glib/testing/protocol/debug
ok 2 /glib/testing/protocol/info
ok 3 /glib/testing/protocol/message
ok 4 /glib/testing/protocol/warning
ok 5 /glib/testing/protocol/critical
ok 6 /glib/testing/protocol/error
ok 7 /glib/testing/protocol/gtest-message
ok 8 /glib/testing/protocol/test-message
ok 9 /glib/testing/protocol/test-error
# End of protocol tests
# End of testing tests
# End of glib tests
PASS: glib/protocol.test
Running test: glib/tls-interaction.test
# random seed: R02S8bf95c8b9dad7fb5c3c9d3636f10cd93
1..42
# Start of tls-interaction tests
# Start of ask-password tests
# Start of invoke-with-loop tests
ok 1 /tls-interaction/ask-password/invoke-with-loop/unhandled-implementation
ok 2 /tls-interaction/ask-password/invoke-with-loop/async-implementation-success
ok 3 /tls-interaction/ask-password/invoke-with-loop/async-implementation-failure
ok 4 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-success
ok 5 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-failure
# End of invoke-with-loop tests
# Start of invoke-without-loop tests
ok 6 /tls-interaction/ask-password/invoke-without-loop/unhandled-implementation
ok 7 /tls-interaction/ask-password/invoke-without-loop/async-implementation-success
ok 8 /tls-interaction/ask-password/invoke-without-loop/async-implementation-failure
ok 9 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-success
ok 10 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-failure
# End of invoke-without-loop tests
# Start of invoke-in-loop tests
ok 11 /tls-interaction/ask-password/invoke-in-loop/unhandled-implementation
ok 12 /tls-interaction/ask-password/invoke-in-loop/async-implementation-success
ok 13 /tls-interaction/ask-password/invoke-in-loop/async-implementation-failure
ok 14 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-success
ok 15 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-failure
# End of invoke-in-loop tests
# Start of sync tests
ok 16 /tls-interaction/ask-password/sync/unhandled-implementation
ok 17 /tls-interaction/ask-password/sync/sync-implementation-success
ok 18 /tls-interaction/ask-password/sync/sync-implementation-failure
# End of sync tests
# Start of async tests
ok 19 /tls-interaction/ask-password/async/unhandled-implementation
ok 20 /tls-interaction/ask-password/async/async-implementation-success
ok 21 /tls-interaction/ask-password/async/async-implementation-failure
# End of async tests
# End of ask-password tests
# Start of request-certificate tests
# Start of invoke-with-loop tests
ok 22 /tls-interaction/request-certificate/invoke-with-loop/unhandled-implementation
ok 23 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-success
ok 24 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-failure
ok 25 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-success
ok 26 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-failure
# End of invoke-with-loop tests
# Start of invoke-without-loop tests
ok 27 /tls-interaction/request-certificate/invoke-without-loop/unhandled-implementation
ok 28 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-success
ok 29 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-failure
ok 30 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-success
ok 31 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-failure
# End of invoke-without-loop tests
# Start of invoke-in-loop tests
ok 32 /tls-interaction/request-certificate/invoke-in-loop/unhandled-implementation
ok 33 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-success
ok 34 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-failure
ok 35 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-success
ok 36 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-failure
# End of invoke-in-loop tests
# Start of sync tests
ok 37 /tls-interaction/request-certificate/sync/unhandled-implementation
ok 38 /tls-interaction/request-certificate/sync/sync-implementation-success
ok 39 /tls-interaction/request-certificate/sync/sync-implementation-failure
# End of sync tests
# Start of async tests
ok 40 /tls-interaction/request-certificate/async/unhandled-implementation
ok 41 /tls-interaction/request-certificate/async/async-implementation-success
ok 42 /tls-interaction/request-certificate/async/async-implementation-failure
# End of async tests
# End of request-certificate tests
# End of tls-interaction tests
PASS: glib/tls-interaction.test
Running test: glib/dynamictests.test
# random seed: R02Se8253369ff90476b363bd5ac8025e152
1..2
# Start of GObject tests
ok 1 /GObject/threaded-dynamic-ref-unref-init
ok 2 /GObject/dynamic-interface-properties
# End of GObject tests
PASS: glib/dynamictests.test
Running test: glib/timeloop.test
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Children: 3     Iters: 10000
Elapsed user: 17
Elapsed system: 125
Elapsed total: 142
total / iteration: 0.00473333
PASS: glib/timeloop.test
Running test: glib/testgobject.test
private data during initialization: 54321 == 54321
MAIN: emit test-signal:
TestObject-Message: 01:22:26.524: ::test_signal default_handler called
TestObject-Message: 01:22:26.524: ::test_signal default_handler called
TestObject-Message: 01:22:26.524: ::test_signal default_handler called
TestObject-Message: 01:22:26.524: signal return: "<default_handler><default_handler><default_handler>"
MAIN: call iface print-string on test and derived object:
Iface-FOO: "iface-string-from-test-type" from 0x55af2f193a70
Iface-BAR: "iface-string-from-derived-type" from 0x55af2f195c20
chaining: Iface-FOO: "iface-string-from-derived-type" from 0x55af2f195c20
private data after initialization: 54321 == 54321
TestObject-Message: 01:22:26.524: /usr/libexec/installed-tests/glib/testgobject done
PASS: glib/testgobject.test
Running test: glib/gmenumodel.test
# random seed: R02Sae315a44010b73629e79c47b72ed72aa
1..13
# Start of gmenu tests
ok 1 /gmenu/equality
ok 2 /gmenu/random
ok 3 /gmenu/attributes
ok 4 /gmenu/links
ok 5 /gmenu/mutable
ok 6 /gmenu/convenience
ok 7 /gmenu/menuitem
# Start of dbus tests
ok 8 /gmenu/dbus/roundtrip
ok 9 /gmenu/dbus/subscriptions
ok 10 /gmenu/dbus/threaded
# Start of peer tests
ok 11 /gmenu/dbus/peer/roundtrip
ok 12 /gmenu/dbus/peer/subscriptions
# End of peer tests
# End of dbus tests
# Start of attributes tests
ok 13 /gmenu/attributes/iterate
# End of attributes tests
# End of gmenu tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gmenumodel.test
Running test: glib/checksum.test
# random seed: R02S56c49233be964d499988768cfcb72e2e
1..1851
# Start of checksum tests
ok 1 /checksum/unsupported
# Start of MD5 tests
ok 2 /checksum/MD5/0
ok 3 /checksum/MD5/1
ok 4 /checksum/MD5/2
ok 5 /checksum/MD5/3
ok 6 /checksum/MD5/4
ok 7 /checksum/MD5/5
ok 8 /checksum/MD5/6
ok 9 /checksum/MD5/7
ok 10 /checksum/MD5/8
ok 11 /checksum/MD5/9
ok 12 /checksum/MD5/10
ok 13 /checksum/MD5/11
ok 14 /checksum/MD5/12
ok 15 /checksum/MD5/13
ok 16 /checksum/MD5/14
ok 17 /checksum/MD5/15
ok 18 /checksum/MD5/16
ok 19 /checksum/MD5/17
ok 20 /checksum/MD5/18
ok 21 /checksum/MD5/19
ok 22 /checksum/MD5/20
ok 23 /checksum/MD5/21
ok 24 /checksum/MD5/22
ok 25 /checksum/MD5/23
ok 26 /checksum/MD5/24
ok 27 /checksum/MD5/25
ok 28 /checksum/MD5/26
ok 29 /checksum/MD5/27
ok 30 /checksum/MD5/28
ok 31 /checksum/MD5/29
ok 32 /checksum/MD5/30
ok 33 /checksum/MD5/31
ok 34 /checksum/MD5/32
ok 35 /checksum/MD5/33
ok 36 /checksum/MD5/34
ok 37 /checksum/MD5/35
ok 38 /checksum/MD5/36
ok 39 /checksum/MD5/37
ok 40 /checksum/MD5/38
ok 41 /checksum/MD5/39
ok 42 /checksum/MD5/40
ok 43 /checksum/MD5/41
ok 44 /checksum/MD5/42
ok 45 /checksum/MD5/43
ok 46 /checksum/MD5/44
ok 47 /checksum/MD5/45
ok 48 /checksum/MD5/46
ok 49 /checksum/MD5/47
ok 50 /checksum/MD5/48
ok 51 /checksum/MD5/49
ok 52 /checksum/MD5/50
ok 53 /checksum/MD5/51
ok 54 /checksum/MD5/52
ok 55 /checksum/MD5/53
ok 56 /checksum/MD5/54
ok 57 /checksum/MD5/55
ok 58 /checksum/MD5/56
ok 59 /checksum/MD5/57
ok 60 /checksum/MD5/58
ok 61 /checksum/MD5/59
ok 62 /checksum/MD5/60
ok 63 /checksum/MD5/61
ok 64 /checksum/MD5/62
ok 65 /checksum/MD5/63
ok 66 /checksum/MD5/64
ok 67 /checksum/MD5/65
ok 68 /checksum/MD5/66
ok 69 /checksum/MD5/67
ok 70 /checksum/MD5/68
ok 71 /checksum/MD5/69
ok 72 /checksum/MD5/70
ok 73 /checksum/MD5/71
ok 74 /checksum/MD5/72
ok 75 /checksum/MD5/73
ok 76 /checksum/MD5/74
ok 77 /checksum/MD5/75
ok 78 /checksum/MD5/76
ok 79 /checksum/MD5/77
ok 80 /checksum/MD5/78
ok 81 /checksum/MD5/79
ok 82 /checksum/MD5/80
ok 83 /checksum/MD5/81
ok 84 /checksum/MD5/82
ok 85 /checksum/MD5/83
ok 86 /checksum/MD5/84
ok 87 /checksum/MD5/85
ok 88 /checksum/MD5/86
ok 89 /checksum/MD5/87
ok 90 /checksum/MD5/88
ok 91 /checksum/MD5/89
ok 92 /checksum/MD5/90
ok 93 /checksum/MD5/91
ok 94 /checksum/MD5/92
ok 95 /checksum/MD5/93
ok 96 /checksum/MD5/94
ok 97 /checksum/MD5/95
ok 98 /checksum/MD5/96
ok 99 /checksum/MD5/97
ok 100 /checksum/MD5/98
ok 101 /checksum/MD5/99
ok 102 /checksum/MD5/100
ok 103 /checksum/MD5/101
ok 104 /checksum/MD5/102
ok 105 /checksum/MD5/103
ok 106 /checksum/MD5/104
ok 107 /checksum/MD5/105
ok 108 /checksum/MD5/106
ok 109 /checksum/MD5/107
ok 110 /checksum/MD5/108
ok 111 /checksum/MD5/109
ok 112 /checksum/MD5/110
ok 113 /checksum/MD5/111
ok 114 /checksum/MD5/112
ok 115 /checksum/MD5/113
ok 116 /checksum/MD5/114
ok 117 /checksum/MD5/115
ok 118 /checksum/MD5/116
ok 119 /checksum/MD5/117
ok 120 /checksum/MD5/118
ok 121 /checksum/MD5/119
ok 122 /checksum/MD5/120
ok 123 /checksum/MD5/121
ok 124 /checksum/MD5/122
ok 125 /checksum/MD5/123
ok 126 /checksum/MD5/124
ok 127 /checksum/MD5/125
ok 128 /checksum/MD5/126
ok 129 /checksum/MD5/127
ok 130 /checksum/MD5/128
ok 131 /checksum/MD5/129
ok 132 /checksum/MD5/130
ok 133 /checksum/MD5/131
ok 134 /checksum/MD5/132
ok 135 /checksum/MD5/133
ok 136 /checksum/MD5/134
ok 137 /checksum/MD5/135
ok 138 /checksum/MD5/136
ok 139 /checksum/MD5/137
ok 140 /checksum/MD5/138
ok 141 /checksum/MD5/139
ok 142 /checksum/MD5/140
ok 143 /checksum/MD5/141
ok 144 /checksum/MD5/142
ok 145 /checksum/MD5/143
ok 146 /checksum/MD5/144
ok 147 /checksum/MD5/145
ok 148 /checksum/MD5/146
ok 149 /checksum/MD5/147
ok 150 /checksum/MD5/148
ok 151 /checksum/MD5/149
ok 152 /checksum/MD5/150
ok 153 /checksum/MD5/151
ok 154 /checksum/MD5/152
ok 155 /checksum/MD5/153
ok 156 /checksum/MD5/154
ok 157 /checksum/MD5/155
ok 158 /checksum/MD5/156
ok 159 /checksum/MD5/157
ok 160 /checksum/MD5/158
ok 161 /checksum/MD5/159
ok 162 /checksum/MD5/160
ok 163 /checksum/MD5/161
ok 164 /checksum/MD5/162
ok 165 /checksum/MD5/163
ok 166 /checksum/MD5/164
ok 167 /checksum/MD5/165
ok 168 /checksum/MD5/166
ok 169 /checksum/MD5/167
ok 170 /checksum/MD5/168
ok 171 /checksum/MD5/169
ok 172 /checksum/MD5/170
ok 173 /checksum/MD5/171
ok 174 /checksum/MD5/172
ok 175 /checksum/MD5/173
ok 176 /checksum/MD5/174
ok 177 /checksum/MD5/175
ok 178 /checksum/MD5/176
ok 179 /checksum/MD5/177
ok 180 /checksum/MD5/178
ok 181 /checksum/MD5/179
ok 182 /checksum/MD5/180
ok 183 /checksum/MD5/181
ok 184 /checksum/MD5/182
ok 185 /checksum/MD5/183
ok 186 /checksum/MD5/string
ok 187 /checksum/MD5/bytes
# Start of reset tests
ok 188 /checksum/MD5/reset/0
ok 189 /checksum/MD5/reset/1
ok 190 /checksum/MD5/reset/2
ok 191 /checksum/MD5/reset/3
ok 192 /checksum/MD5/reset/4
ok 193 /checksum/MD5/reset/5
ok 194 /checksum/MD5/reset/6
ok 195 /checksum/MD5/reset/7
ok 196 /checksum/MD5/reset/8
ok 197 /checksum/MD5/reset/9
ok 198 /checksum/MD5/reset/10
ok 199 /checksum/MD5/reset/11
ok 200 /checksum/MD5/reset/12
ok 201 /checksum/MD5/reset/13
ok 202 /checksum/MD5/reset/14
ok 203 /checksum/MD5/reset/15
ok 204 /checksum/MD5/reset/16
ok 205 /checksum/MD5/reset/17
ok 206 /checksum/MD5/reset/18
ok 207 /checksum/MD5/reset/19
ok 208 /checksum/MD5/reset/20
ok 209 /checksum/MD5/reset/21
ok 210 /checksum/MD5/reset/22
ok 211 /checksum/MD5/reset/23
ok 212 /checksum/MD5/reset/24
ok 213 /checksum/MD5/reset/25
ok 214 /checksum/MD5/reset/26
ok 215 /checksum/MD5/reset/27
ok 216 /checksum/MD5/reset/28
ok 217 /checksum/MD5/reset/29
ok 218 /checksum/MD5/reset/30
ok 219 /checksum/MD5/reset/31
ok 220 /checksum/MD5/reset/32
ok 221 /checksum/MD5/reset/33
ok 222 /checksum/MD5/reset/34
ok 223 /checksum/MD5/reset/35
ok 224 /checksum/MD5/reset/36
ok 225 /checksum/MD5/reset/37
ok 226 /checksum/MD5/reset/38
ok 227 /checksum/MD5/reset/39
ok 228 /checksum/MD5/reset/40
ok 229 /checksum/MD5/reset/41
ok 230 /checksum/MD5/reset/42
ok 231 /checksum/MD5/reset/43
ok 232 /checksum/MD5/reset/44
ok 233 /checksum/MD5/reset/45
ok 234 /checksum/MD5/reset/46
ok 235 /checksum/MD5/reset/47
ok 236 /checksum/MD5/reset/48
ok 237 /checksum/MD5/reset/49
ok 238 /checksum/MD5/reset/50
ok 239 /checksum/MD5/reset/51
ok 240 /checksum/MD5/reset/52
ok 241 /checksum/MD5/reset/53
ok 242 /checksum/MD5/reset/54
ok 243 /checksum/MD5/reset/55
ok 244 /checksum/MD5/reset/56
ok 245 /checksum/MD5/reset/57
ok 246 /checksum/MD5/reset/58
ok 247 /checksum/MD5/reset/59
ok 248 /checksum/MD5/reset/60
ok 249 /checksum/MD5/reset/61
ok 250 /checksum/MD5/reset/62
ok 251 /checksum/MD5/reset/63
ok 252 /checksum/MD5/reset/64
ok 253 /checksum/MD5/reset/65
ok 254 /checksum/MD5/reset/66
ok 255 /checksum/MD5/reset/67
ok 256 /checksum/MD5/reset/68
ok 257 /checksum/MD5/reset/69
ok 258 /checksum/MD5/reset/70
ok 259 /checksum/MD5/reset/71
ok 260 /checksum/MD5/reset/72
ok 261 /checksum/MD5/reset/73
ok 262 /checksum/MD5/reset/74
ok 263 /checksum/MD5/reset/75
ok 264 /checksum/MD5/reset/76
ok 265 /checksum/MD5/reset/77
ok 266 /checksum/MD5/reset/78
ok 267 /checksum/MD5/reset/79
ok 268 /checksum/MD5/reset/80
ok 269 /checksum/MD5/reset/81
ok 270 /checksum/MD5/reset/82
ok 271 /checksum/MD5/reset/83
ok 272 /checksum/MD5/reset/84
ok 273 /checksum/MD5/reset/85
ok 274 /checksum/MD5/reset/86
ok 275 /checksum/MD5/reset/87
ok 276 /checksum/MD5/reset/88
ok 277 /checksum/MD5/reset/89
ok 278 /checksum/MD5/reset/90
ok 279 /checksum/MD5/reset/91
ok 280 /checksum/MD5/reset/92
ok 281 /checksum/MD5/reset/93
ok 282 /checksum/MD5/reset/94
ok 283 /checksum/MD5/reset/95
ok 284 /checksum/MD5/reset/96
ok 285 /checksum/MD5/reset/97
ok 286 /checksum/MD5/reset/98
ok 287 /checksum/MD5/reset/99
ok 288 /checksum/MD5/reset/100
ok 289 /checksum/MD5/reset/101
ok 290 /checksum/MD5/reset/102
ok 291 /checksum/MD5/reset/103
ok 292 /checksum/MD5/reset/104
ok 293 /checksum/MD5/reset/105
ok 294 /checksum/MD5/reset/106
ok 295 /checksum/MD5/reset/107
ok 296 /checksum/MD5/reset/108
ok 297 /checksum/MD5/reset/109
ok 298 /checksum/MD5/reset/110
ok 299 /checksum/MD5/reset/111
ok 300 /checksum/MD5/reset/112
ok 301 /checksum/MD5/reset/113
ok 302 /checksum/MD5/reset/114
ok 303 /checksum/MD5/reset/115
ok 304 /checksum/MD5/reset/116
ok 305 /checksum/MD5/reset/117
ok 306 /checksum/MD5/reset/118
ok 307 /checksum/MD5/reset/119
ok 308 /checksum/MD5/reset/120
ok 309 /checksum/MD5/reset/121
ok 310 /checksum/MD5/reset/122
ok 311 /checksum/MD5/reset/123
ok 312 /checksum/MD5/reset/124
ok 313 /checksum/MD5/reset/125
ok 314 /checksum/MD5/reset/126
ok 315 /checksum/MD5/reset/127
ok 316 /checksum/MD5/reset/128
ok 317 /checksum/MD5/reset/129
ok 318 /checksum/MD5/reset/130
ok 319 /checksum/MD5/reset/131
ok 320 /checksum/MD5/reset/132
ok 321 /checksum/MD5/reset/133
ok 322 /checksum/MD5/reset/134
ok 323 /checksum/MD5/reset/135
ok 324 /checksum/MD5/reset/136
ok 325 /checksum/MD5/reset/137
ok 326 /checksum/MD5/reset/138
ok 327 /checksum/MD5/reset/139
ok 328 /checksum/MD5/reset/140
ok 329 /checksum/MD5/reset/141
ok 330 /checksum/MD5/reset/142
ok 331 /checksum/MD5/reset/143
ok 332 /checksum/MD5/reset/144
ok 333 /checksum/MD5/reset/145
ok 334 /checksum/MD5/reset/146
ok 335 /checksum/MD5/reset/147
ok 336 /checksum/MD5/reset/148
ok 337 /checksum/MD5/reset/149
ok 338 /checksum/MD5/reset/150
ok 339 /checksum/MD5/reset/151
ok 340 /checksum/MD5/reset/152
ok 341 /checksum/MD5/reset/153
ok 342 /checksum/MD5/reset/154
ok 343 /checksum/MD5/reset/155
ok 344 /checksum/MD5/reset/156
ok 345 /checksum/MD5/reset/157
ok 346 /checksum/MD5/reset/158
ok 347 /checksum/MD5/reset/159
ok 348 /checksum/MD5/reset/160
ok 349 /checksum/MD5/reset/161
ok 350 /checksum/MD5/reset/162
ok 351 /checksum/MD5/reset/163
ok 352 /checksum/MD5/reset/164
ok 353 /checksum/MD5/reset/165
ok 354 /checksum/MD5/reset/166
ok 355 /checksum/MD5/reset/167
ok 356 /checksum/MD5/reset/168
ok 357 /checksum/MD5/reset/169
ok 358 /checksum/MD5/reset/170
ok 359 /checksum/MD5/reset/171
ok 360 /checksum/MD5/reset/172
ok 361 /checksum/MD5/reset/173
ok 362 /checksum/MD5/reset/174
ok 363 /checksum/MD5/reset/175
ok 364 /checksum/MD5/reset/176
ok 365 /checksum/MD5/reset/177
ok 366 /checksum/MD5/reset/178
ok 367 /checksum/MD5/reset/179
ok 368 /checksum/MD5/reset/180
ok 369 /checksum/MD5/reset/181
ok 370 /checksum/MD5/reset/182
ok 371 /checksum/MD5/reset/183
# End of reset tests
# End of MD5 tests
# Start of SHA1 tests
ok 372 /checksum/SHA1/0
ok 373 /checksum/SHA1/1
ok 374 /checksum/SHA1/2
ok 375 /checksum/SHA1/3
ok 376 /checksum/SHA1/4
ok 377 /checksum/SHA1/5
ok 378 /checksum/SHA1/6
ok 379 /checksum/SHA1/7
ok 380 /checksum/SHA1/8
ok 381 /checksum/SHA1/9
ok 382 /checksum/SHA1/10
ok 383 /checksum/SHA1/11
ok 384 /checksum/SHA1/12
ok 385 /checksum/SHA1/13
ok 386 /checksum/SHA1/14
ok 387 /checksum/SHA1/15
ok 388 /checksum/SHA1/16
ok 389 /checksum/SHA1/17
ok 390 /checksum/SHA1/18
ok 391 /checksum/SHA1/19
ok 392 /checksum/SHA1/20
ok 393 /checksum/SHA1/21
ok 394 /checksum/SHA1/22
ok 395 /checksum/SHA1/23
ok 396 /checksum/SHA1/24
ok 397 /checksum/SHA1/25
ok 398 /checksum/SHA1/26
ok 399 /checksum/SHA1/27
ok 400 /checksum/SHA1/28
ok 401 /checksum/SHA1/29
ok 402 /checksum/SHA1/30
ok 403 /checksum/SHA1/31
ok 404 /checksum/SHA1/32
ok 405 /checksum/SHA1/33
ok 406 /checksum/SHA1/34
ok 407 /checksum/SHA1/35
ok 408 /checksum/SHA1/36
ok 409 /checksum/SHA1/37
ok 410 /checksum/SHA1/38
ok 411 /checksum/SHA1/39
ok 412 /checksum/SHA1/40
ok 413 /checksum/SHA1/41
ok 414 /checksum/SHA1/42
ok 415 /checksum/SHA1/43
ok 416 /checksum/SHA1/44
ok 417 /checksum/SHA1/45
ok 418 /checksum/SHA1/46
ok 419 /checksum/SHA1/47
ok 420 /checksum/SHA1/48
ok 421 /checksum/SHA1/49
ok 422 /checksum/SHA1/50
ok 423 /checksum/SHA1/51
ok 424 /checksum/SHA1/52
ok 425 /checksum/SHA1/53
ok 426 /checksum/SHA1/54
ok 427 /checksum/SHA1/55
ok 428 /checksum/SHA1/56
ok 429 /checksum/SHA1/57
ok 430 /checksum/SHA1/58
ok 431 /checksum/SHA1/59
ok 432 /checksum/SHA1/60
ok 433 /checksum/SHA1/61
ok 434 /checksum/SHA1/62
ok 435 /checksum/SHA1/63
ok 436 /checksum/SHA1/64
ok 437 /checksum/SHA1/65
ok 438 /checksum/SHA1/66
ok 439 /checksum/SHA1/67
ok 440 /checksum/SHA1/68
ok 441 /checksum/SHA1/69
ok 442 /checksum/SHA1/70
ok 443 /checksum/SHA1/71
ok 444 /checksum/SHA1/72
ok 445 /checksum/SHA1/73
ok 446 /checksum/SHA1/74
ok 447 /checksum/SHA1/75
ok 448 /checksum/SHA1/76
ok 449 /checksum/SHA1/77
ok 450 /checksum/SHA1/78
ok 451 /checksum/SHA1/79
ok 452 /checksum/SHA1/80
ok 453 /checksum/SHA1/81
ok 454 /checksum/SHA1/82
ok 455 /checksum/SHA1/83
ok 456 /checksum/SHA1/84
ok 457 /checksum/SHA1/85
ok 458 /checksum/SHA1/86
ok 459 /checksum/SHA1/87
ok 460 /checksum/SHA1/88
ok 461 /checksum/SHA1/89
ok 462 /checksum/SHA1/90
ok 463 /checksum/SHA1/91
ok 464 /checksum/SHA1/92
ok 465 /checksum/SHA1/93
ok 466 /checksum/SHA1/94
ok 467 /checksum/SHA1/95
ok 468 /checksum/SHA1/96
ok 469 /checksum/SHA1/97
ok 470 /checksum/SHA1/98
ok 471 /checksum/SHA1/99
ok 472 /checksum/SHA1/100
ok 473 /checksum/SHA1/101
ok 474 /checksum/SHA1/102
ok 475 /checksum/SHA1/103
ok 476 /checksum/SHA1/104
ok 477 /checksum/SHA1/105
ok 478 /checksum/SHA1/106
ok 479 /checksum/SHA1/107
ok 480 /checksum/SHA1/108
ok 481 /checksum/SHA1/109
ok 482 /checksum/SHA1/110
ok 483 /checksum/SHA1/111
ok 484 /checksum/SHA1/112
ok 485 /checksum/SHA1/113
ok 486 /checksum/SHA1/114
ok 487 /checksum/SHA1/115
ok 488 /checksum/SHA1/116
ok 489 /checksum/SHA1/117
ok 490 /checksum/SHA1/118
ok 491 /checksum/SHA1/119
ok 492 /checksum/SHA1/120
ok 493 /checksum/SHA1/121
ok 494 /checksum/SHA1/122
ok 495 /checksum/SHA1/123
ok 496 /checksum/SHA1/124
ok 497 /checksum/SHA1/125
ok 498 /checksum/SHA1/126
ok 499 /checksum/SHA1/127
ok 500 /checksum/SHA1/128
ok 501 /checksum/SHA1/129
ok 502 /checksum/SHA1/130
ok 503 /checksum/SHA1/131
ok 504 /checksum/SHA1/132
ok 505 /checksum/SHA1/133
ok 506 /checksum/SHA1/134
ok 507 /checksum/SHA1/135
ok 508 /checksum/SHA1/136
ok 509 /checksum/SHA1/137
ok 510 /checksum/SHA1/138
ok 511 /checksum/SHA1/139
ok 512 /checksum/SHA1/140
ok 513 /checksum/SHA1/141
ok 514 /checksum/SHA1/142
ok 515 /checksum/SHA1/143
ok 516 /checksum/SHA1/144
ok 517 /checksum/SHA1/145
ok 518 /checksum/SHA1/146
ok 519 /checksum/SHA1/147
ok 520 /checksum/SHA1/148
ok 521 /checksum/SHA1/149
ok 522 /checksum/SHA1/150
ok 523 /checksum/SHA1/151
ok 524 /checksum/SHA1/152
ok 525 /checksum/SHA1/153
ok 526 /checksum/SHA1/154
ok 527 /checksum/SHA1/155
ok 528 /checksum/SHA1/156
ok 529 /checksum/SHA1/157
ok 530 /checksum/SHA1/158
ok 531 /checksum/SHA1/159
ok 532 /checksum/SHA1/160
ok 533 /checksum/SHA1/161
ok 534 /checksum/SHA1/162
ok 535 /checksum/SHA1/163
ok 536 /checksum/SHA1/164
ok 537 /checksum/SHA1/165
ok 538 /checksum/SHA1/166
ok 539 /checksum/SHA1/167
ok 540 /checksum/SHA1/168
ok 541 /checksum/SHA1/169
ok 542 /checksum/SHA1/170
ok 543 /checksum/SHA1/171
ok 544 /checksum/SHA1/172
ok 545 /checksum/SHA1/173
ok 546 /checksum/SHA1/174
ok 547 /checksum/SHA1/175
ok 548 /checksum/SHA1/176
ok 549 /checksum/SHA1/177
ok 550 /checksum/SHA1/178
ok 551 /checksum/SHA1/179
ok 552 /checksum/SHA1/180
ok 553 /checksum/SHA1/181
ok 554 /checksum/SHA1/182
ok 555 /checksum/SHA1/183
ok 556 /checksum/SHA1/string
ok 557 /checksum/SHA1/bytes
# Start of reset tests
ok 558 /checksum/SHA1/reset/0
ok 559 /checksum/SHA1/reset/1
ok 560 /checksum/SHA1/reset/2
ok 561 /checksum/SHA1/reset/3
ok 562 /checksum/SHA1/reset/4
ok 563 /checksum/SHA1/reset/5
ok 564 /checksum/SHA1/reset/6
ok 565 /checksum/SHA1/reset/7
ok 566 /checksum/SHA1/reset/8
ok 567 /checksum/SHA1/reset/9
ok 568 /checksum/SHA1/reset/10
ok 569 /checksum/SHA1/reset/11
ok 570 /checksum/SHA1/reset/12
ok 571 /checksum/SHA1/reset/13
ok 572 /checksum/SHA1/reset/14
ok 573 /checksum/SHA1/reset/15
ok 574 /checksum/SHA1/reset/16
ok 575 /checksum/SHA1/reset/17
ok 576 /checksum/SHA1/reset/18
ok 577 /checksum/SHA1/reset/19
ok 578 /checksum/SHA1/reset/20
ok 579 /checksum/SHA1/reset/21
ok 580 /checksum/SHA1/reset/22
ok 581 /checksum/SHA1/reset/23
ok 582 /checksum/SHA1/reset/24
ok 583 /checksum/SHA1/reset/25
ok 584 /checksum/SHA1/reset/26
ok 585 /checksum/SHA1/reset/27
ok 586 /checksum/SHA1/reset/28
ok 587 /checksum/SHA1/reset/29
ok 588 /checksum/SHA1/reset/30
ok 589 /checksum/SHA1/reset/31
ok 590 /checksum/SHA1/reset/32
ok 591 /checksum/SHA1/reset/33
ok 592 /checksum/SHA1/reset/34
ok 593 /checksum/SHA1/reset/35
ok 594 /checksum/SHA1/reset/36
ok 595 /checksum/SHA1/reset/37
ok 596 /checksum/SHA1/reset/38
ok 597 /checksum/SHA1/reset/39
ok 598 /checksum/SHA1/reset/40
ok 599 /checksum/SHA1/reset/41
ok 600 /checksum/SHA1/reset/42
ok 601 /checksum/SHA1/reset/43
ok 602 /checksum/SHA1/reset/44
ok 603 /checksum/SHA1/reset/45
ok 604 /checksum/SHA1/reset/46
ok 605 /checksum/SHA1/reset/47
ok 606 /checksum/SHA1/reset/48
ok 607 /checksum/SHA1/reset/49
ok 608 /checksum/SHA1/reset/50
ok 609 /checksum/SHA1/reset/51
ok 610 /checksum/SHA1/reset/52
ok 611 /checksum/SHA1/reset/53
ok 612 /checksum/SHA1/reset/54
ok 613 /checksum/SHA1/reset/55
ok 614 /checksum/SHA1/reset/56
ok 615 /checksum/SHA1/reset/57
ok 616 /checksum/SHA1/reset/58
ok 617 /checksum/SHA1/reset/59
ok 618 /checksum/SHA1/reset/60
ok 619 /checksum/SHA1/reset/61
ok 620 /checksum/SHA1/reset/62
ok 621 /checksum/SHA1/reset/63
ok 622 /checksum/SHA1/reset/64
ok 623 /checksum/SHA1/reset/65
ok 624 /checksum/SHA1/reset/66
ok 625 /checksum/SHA1/reset/67
ok 626 /checksum/SHA1/reset/68
ok 627 /checksum/SHA1/reset/69
ok 628 /checksum/SHA1/reset/70
ok 629 /checksum/SHA1/reset/71
ok 630 /checksum/SHA1/reset/72
ok 631 /checksum/SHA1/reset/73
ok 632 /checksum/SHA1/reset/74
ok 633 /checksum/SHA1/reset/75
ok 634 /checksum/SHA1/reset/76
ok 635 /checksum/SHA1/reset/77
ok 636 /checksum/SHA1/reset/78
ok 637 /checksum/SHA1/reset/79
ok 638 /checksum/SHA1/reset/80
ok 639 /checksum/SHA1/reset/81
ok 640 /checksum/SHA1/reset/82
ok 641 /checksum/SHA1/reset/83
ok 642 /checksum/SHA1/reset/84
ok 643 /checksum/SHA1/reset/85
ok 644 /checksum/SHA1/reset/86
ok 645 /checksum/SHA1/reset/87
ok 646 /checksum/SHA1/reset/88
ok 647 /checksum/SHA1/reset/89
ok 648 /checksum/SHA1/reset/90
ok 649 /checksum/SHA1/reset/91
ok 650 /checksum/SHA1/reset/92
ok 651 /checksum/SHA1/reset/93
ok 652 /checksum/SHA1/reset/94
ok 653 /checksum/SHA1/reset/95
ok 654 /checksum/SHA1/reset/96
ok 655 /checksum/SHA1/reset/97
ok 656 /checksum/SHA1/reset/98
ok 657 /checksum/SHA1/reset/99
ok 658 /checksum/SHA1/reset/100
ok 659 /checksum/SHA1/reset/101
ok 660 /checksum/SHA1/reset/102
ok 661 /checksum/SHA1/reset/103
ok 662 /checksum/SHA1/reset/104
ok 663 /checksum/SHA1/reset/105
ok 664 /checksum/SHA1/reset/106
ok 665 /checksum/SHA1/reset/107
ok 666 /checksum/SHA1/reset/108
ok 667 /checksum/SHA1/reset/109
ok 668 /checksum/SHA1/reset/110
ok 669 /checksum/SHA1/reset/111
ok 670 /checksum/SHA1/reset/112
ok 671 /checksum/SHA1/reset/113
ok 672 /checksum/SHA1/reset/114
ok 673 /checksum/SHA1/reset/115
ok 674 /checksum/SHA1/reset/116
ok 675 /checksum/SHA1/reset/117
ok 676 /checksum/SHA1/reset/118
ok 677 /checksum/SHA1/reset/119
ok 678 /checksum/SHA1/reset/120
ok 679 /checksum/SHA1/reset/121
ok 680 /checksum/SHA1/reset/122
ok 681 /checksum/SHA1/reset/123
ok 682 /checksum/SHA1/reset/124
ok 683 /checksum/SHA1/reset/125
ok 684 /checksum/SHA1/reset/126
ok 685 /checksum/SHA1/reset/127
ok 686 /checksum/SHA1/reset/128
ok 687 /checksum/SHA1/reset/129
ok 688 /checksum/SHA1/reset/130
ok 689 /checksum/SHA1/reset/131
ok 690 /checksum/SHA1/reset/132
ok 691 /checksum/SHA1/reset/133
ok 692 /checksum/SHA1/reset/134
ok 693 /checksum/SHA1/reset/135
ok 694 /checksum/SHA1/reset/136
ok 695 /checksum/SHA1/reset/137
ok 696 /checksum/SHA1/reset/138
ok 697 /checksum/SHA1/reset/139
ok 698 /checksum/SHA1/reset/140
ok 699 /checksum/SHA1/reset/141
ok 700 /checksum/SHA1/reset/142
ok 701 /checksum/SHA1/reset/143
ok 702 /checksum/SHA1/reset/144
ok 703 /checksum/SHA1/reset/145
ok 704 /checksum/SHA1/reset/146
ok 705 /checksum/SHA1/reset/147
ok 706 /checksum/SHA1/reset/148
ok 707 /checksum/SHA1/reset/149
ok 708 /checksum/SHA1/reset/150
ok 709 /checksum/SHA1/reset/151
ok 710 /checksum/SHA1/reset/152
ok 711 /checksum/SHA1/reset/153
ok 712 /checksum/SHA1/reset/154
ok 713 /checksum/SHA1/reset/155
ok 714 /checksum/SHA1/reset/156
ok 715 /checksum/SHA1/reset/157
ok 716 /checksum/SHA1/reset/158
ok 717 /checksum/SHA1/reset/159
ok 718 /checksum/SHA1/reset/160
ok 719 /checksum/SHA1/reset/161
ok 720 /checksum/SHA1/reset/162
ok 721 /checksum/SHA1/reset/163
ok 722 /checksum/SHA1/reset/164
ok 723 /checksum/SHA1/reset/165
ok 724 /checksum/SHA1/reset/166
ok 725 /checksum/SHA1/reset/167
ok 726 /checksum/SHA1/reset/168
ok 727 /checksum/SHA1/reset/169
ok 728 /checksum/SHA1/reset/170
ok 729 /checksum/SHA1/reset/171
ok 730 /checksum/SHA1/reset/172
ok 731 /checksum/SHA1/reset/173
ok 732 /checksum/SHA1/reset/174
ok 733 /checksum/SHA1/reset/175
ok 734 /checksum/SHA1/reset/176
ok 735 /checksum/SHA1/reset/177
ok 736 /checksum/SHA1/reset/178
ok 737 /checksum/SHA1/reset/179
ok 738 /checksum/SHA1/reset/180
ok 739 /checksum/SHA1/reset/181
ok 740 /checksum/SHA1/reset/182
ok 741 /checksum/SHA1/reset/183
# End of reset tests
# End of SHA1 tests
# Start of SHA256 tests
ok 742 /checksum/SHA256/0
ok 743 /checksum/SHA256/1
ok 744 /checksum/SHA256/2
ok 745 /checksum/SHA256/3
ok 746 /checksum/SHA256/4
ok 747 /checksum/SHA256/5
ok 748 /checksum/SHA256/6
ok 749 /checksum/SHA256/7
ok 750 /checksum/SHA256/8
ok 751 /checksum/SHA256/9
ok 752 /checksum/SHA256/10
ok 753 /checksum/SHA256/11
ok 754 /checksum/SHA256/12
ok 755 /checksum/SHA256/13
ok 756 /checksum/SHA256/14
ok 757 /checksum/SHA256/15
ok 758 /checksum/SHA256/16
ok 759 /checksum/SHA256/17
ok 760 /checksum/SHA256/18
ok 761 /checksum/SHA256/19
ok 762 /checksum/SHA256/20
ok 763 /checksum/SHA256/21
ok 764 /checksum/SHA256/22
ok 765 /checksum/SHA256/23
ok 766 /checksum/SHA256/24
ok 767 /checksum/SHA256/25
ok 768 /checksum/SHA256/26
ok 769 /checksum/SHA256/27
ok 770 /checksum/SHA256/28
ok 771 /checksum/SHA256/29
ok 772 /checksum/SHA256/30
ok 773 /checksum/SHA256/31
ok 774 /checksum/SHA256/32
ok 775 /checksum/SHA256/33
ok 776 /checksum/SHA256/34
ok 777 /checksum/SHA256/35
ok 778 /checksum/SHA256/36
ok 779 /checksum/SHA256/37
ok 780 /checksum/SHA256/38
ok 781 /checksum/SHA256/39
ok 782 /checksum/SHA256/40
ok 783 /checksum/SHA256/41
ok 784 /checksum/SHA256/42
ok 785 /checksum/SHA256/43
ok 786 /checksum/SHA256/44
ok 787 /checksum/SHA256/45
ok 788 /checksum/SHA256/46
ok 789 /checksum/SHA256/47
ok 790 /checksum/SHA256/48
ok 791 /checksum/SHA256/49
ok 792 /checksum/SHA256/50
ok 793 /checksum/SHA256/51
ok 794 /checksum/SHA256/52
ok 795 /checksum/SHA256/53
ok 796 /checksum/SHA256/54
ok 797 /checksum/SHA256/55
ok 798 /checksum/SHA256/56
ok 799 /checksum/SHA256/57
ok 800 /checksum/SHA256/58
ok 801 /checksum/SHA256/59
ok 802 /checksum/SHA256/60
ok 803 /checksum/SHA256/61
ok 804 /checksum/SHA256/62
ok 805 /checksum/SHA256/63
ok 806 /checksum/SHA256/64
ok 807 /checksum/SHA256/65
ok 808 /checksum/SHA256/66
ok 809 /checksum/SHA256/67
ok 810 /checksum/SHA256/68
ok 811 /checksum/SHA256/69
ok 812 /checksum/SHA256/70
ok 813 /checksum/SHA256/71
ok 814 /checksum/SHA256/72
ok 815 /checksum/SHA256/73
ok 816 /checksum/SHA256/74
ok 817 /checksum/SHA256/75
ok 818 /checksum/SHA256/76
ok 819 /checksum/SHA256/77
ok 820 /checksum/SHA256/78
ok 821 /checksum/SHA256/79
ok 822 /checksum/SHA256/80
ok 823 /checksum/SHA256/81
ok 824 /checksum/SHA256/82
ok 825 /checksum/SHA256/83
ok 826 /checksum/SHA256/84
ok 827 /checksum/SHA256/85
ok 828 /checksum/SHA256/86
ok 829 /checksum/SHA256/87
ok 830 /checksum/SHA256/88
ok 831 /checksum/SHA256/89
ok 832 /checksum/SHA256/90
ok 833 /checksum/SHA256/91
ok 834 /checksum/SHA256/92
ok 835 /checksum/SHA256/93
ok 836 /checksum/SHA256/94
ok 837 /checksum/SHA256/95
ok 838 /checksum/SHA256/96
ok 839 /checksum/SHA256/97
ok 840 /checksum/SHA256/98
ok 841 /checksum/SHA256/99
ok 842 /checksum/SHA256/100
ok 843 /checksum/SHA256/101
ok 844 /checksum/SHA256/102
ok 845 /checksum/SHA256/103
ok 846 /checksum/SHA256/104
ok 847 /checksum/SHA256/105
ok 848 /checksum/SHA256/106
ok 849 /checksum/SHA256/107
ok 850 /checksum/SHA256/108
ok 851 /checksum/SHA256/109
ok 852 /checksum/SHA256/110
ok 853 /checksum/SHA256/111
ok 854 /checksum/SHA256/112
ok 855 /checksum/SHA256/113
ok 856 /checksum/SHA256/114
ok 857 /checksum/SHA256/115
ok 858 /checksum/SHA256/116
ok 859 /checksum/SHA256/117
ok 860 /checksum/SHA256/118
ok 861 /checksum/SHA256/119
ok 862 /checksum/SHA256/120
ok 863 /checksum/SHA256/121
ok 864 /checksum/SHA256/122
ok 865 /checksum/SHA256/123
ok 866 /checksum/SHA256/124
ok 867 /checksum/SHA256/125
ok 868 /checksum/SHA256/126
ok 869 /checksum/SHA256/127
ok 870 /checksum/SHA256/128
ok 871 /checksum/SHA256/129
ok 872 /checksum/SHA256/130
ok 873 /checksum/SHA256/131
ok 874 /checksum/SHA256/132
ok 875 /checksum/SHA256/133
ok 876 /checksum/SHA256/134
ok 877 /checksum/SHA256/135
ok 878 /checksum/SHA256/136
ok 879 /checksum/SHA256/137
ok 880 /checksum/SHA256/138
ok 881 /checksum/SHA256/139
ok 882 /checksum/SHA256/140
ok 883 /checksum/SHA256/141
ok 884 /checksum/SHA256/142
ok 885 /checksum/SHA256/143
ok 886 /checksum/SHA256/144
ok 887 /checksum/SHA256/145
ok 888 /checksum/SHA256/146
ok 889 /checksum/SHA256/147
ok 890 /checksum/SHA256/148
ok 891 /checksum/SHA256/149
ok 892 /checksum/SHA256/150
ok 893 /checksum/SHA256/151
ok 894 /checksum/SHA256/152
ok 895 /checksum/SHA256/153
ok 896 /checksum/SHA256/154
ok 897 /checksum/SHA256/155
ok 898 /checksum/SHA256/156
ok 899 /checksum/SHA256/157
ok 900 /checksum/SHA256/158
ok 901 /checksum/SHA256/159
ok 902 /checksum/SHA256/160
ok 903 /checksum/SHA256/161
ok 904 /checksum/SHA256/162
ok 905 /checksum/SHA256/163
ok 906 /checksum/SHA256/164
ok 907 /checksum/SHA256/165
ok 908 /checksum/SHA256/166
ok 909 /checksum/SHA256/167
ok 910 /checksum/SHA256/168
ok 911 /checksum/SHA256/169
ok 912 /checksum/SHA256/170
ok 913 /checksum/SHA256/171
ok 914 /checksum/SHA256/172
ok 915 /checksum/SHA256/173
ok 916 /checksum/SHA256/174
ok 917 /checksum/SHA256/175
ok 918 /checksum/SHA256/176
ok 919 /checksum/SHA256/177
ok 920 /checksum/SHA256/178
ok 921 /checksum/SHA256/179
ok 922 /checksum/SHA256/180
ok 923 /checksum/SHA256/181
ok 924 /checksum/SHA256/182
ok 925 /checksum/SHA256/183
ok 926 /checksum/SHA256/string
ok 927 /checksum/SHA256/bytes
# Start of reset tests
ok 928 /checksum/SHA256/reset/0
ok 929 /checksum/SHA256/reset/1
ok 930 /checksum/SHA256/reset/2
ok 931 /checksum/SHA256/reset/3
ok 932 /checksum/SHA256/reset/4
ok 933 /checksum/SHA256/reset/5
ok 934 /checksum/SHA256/reset/6
ok 935 /checksum/SHA256/reset/7
ok 936 /checksum/SHA256/reset/8
ok 937 /checksum/SHA256/reset/9
ok 938 /checksum/SHA256/reset/10
ok 939 /checksum/SHA256/reset/11
ok 940 /checksum/SHA256/reset/12
ok 941 /checksum/SHA256/reset/13
ok 942 /checksum/SHA256/reset/14
ok 943 /checksum/SHA256/reset/15
ok 944 /checksum/SHA256/reset/16
ok 945 /checksum/SHA256/reset/17
ok 946 /checksum/SHA256/reset/18
ok 947 /checksum/SHA256/reset/19
ok 948 /checksum/SHA256/reset/20
ok 949 /checksum/SHA256/reset/21
ok 950 /checksum/SHA256/reset/22
ok 951 /checksum/SHA256/reset/23
ok 952 /checksum/SHA256/reset/24
ok 953 /checksum/SHA256/reset/25
ok 954 /checksum/SHA256/reset/26
ok 955 /checksum/SHA256/reset/27
ok 956 /checksum/SHA256/reset/28
ok 957 /checksum/SHA256/reset/29
ok 958 /checksum/SHA256/reset/30
ok 959 /checksum/SHA256/reset/31
ok 960 /checksum/SHA256/reset/32
ok 961 /checksum/SHA256/reset/33
ok 962 /checksum/SHA256/reset/34
ok 963 /checksum/SHA256/reset/35
ok 964 /checksum/SHA256/reset/36
ok 965 /checksum/SHA256/reset/37
ok 966 /checksum/SHA256/reset/38
ok 967 /checksum/SHA256/reset/39
ok 968 /checksum/SHA256/reset/40
ok 969 /checksum/SHA256/reset/41
ok 970 /checksum/SHA256/reset/42
ok 971 /checksum/SHA256/reset/43
ok 972 /checksum/SHA256/reset/44
ok 973 /checksum/SHA256/reset/45
ok 974 /checksum/SHA256/reset/46
ok 975 /checksum/SHA256/reset/47
ok 976 /checksum/SHA256/reset/48
ok 977 /checksum/SHA256/reset/49
ok 978 /checksum/SHA256/reset/50
ok 979 /checksum/SHA256/reset/51
ok 980 /checksum/SHA256/reset/52
ok 981 /checksum/SHA256/reset/53
ok 982 /checksum/SHA256/reset/54
ok 983 /checksum/SHA256/reset/55
ok 984 /checksum/SHA256/reset/56
ok 985 /checksum/SHA256/reset/57
ok 986 /checksum/SHA256/reset/58
ok 987 /checksum/SHA256/reset/59
ok 988 /checksum/SHA256/reset/60
ok 989 /checksum/SHA256/reset/61
ok 990 /checksum/SHA256/reset/62
ok 991 /checksum/SHA256/reset/63
ok 992 /checksum/SHA256/reset/64
ok 993 /checksum/SHA256/reset/65
ok 994 /checksum/SHA256/reset/66
ok 995 /checksum/SHA256/reset/67
ok 996 /checksum/SHA256/reset/68
ok 997 /checksum/SHA256/reset/69
ok 998 /checksum/SHA256/reset/70
ok 999 /checksum/SHA256/reset/71
ok 1000 /checksum/SHA256/reset/72
ok 1001 /checksum/SHA256/reset/73
ok 1002 /checksum/SHA256/reset/74
ok 1003 /checksum/SHA256/reset/75
ok 1004 /checksum/SHA256/reset/76
ok 1005 /checksum/SHA256/reset/77
ok 1006 /checksum/SHA256/reset/78
ok 1007 /checksum/SHA256/reset/79
ok 1008 /checksum/SHA256/reset/80
ok 1009 /checksum/SHA256/reset/81
ok 1010 /checksum/SHA256/reset/82
ok 1011 /checksum/SHA256/reset/83
ok 1012 /checksum/SHA256/reset/84
ok 1013 /checksum/SHA256/reset/85
ok 1014 /checksum/SHA256/reset/86
ok 1015 /checksum/SHA256/reset/87
ok 1016 /checksum/SHA256/reset/88
ok 1017 /checksum/SHA256/reset/89
ok 1018 /checksum/SHA256/reset/90
ok 1019 /checksum/SHA256/reset/91
ok 1020 /checksum/SHA256/reset/92
ok 1021 /checksum/SHA256/reset/93
ok 1022 /checksum/SHA256/reset/94
ok 1023 /checksum/SHA256/reset/95
ok 1024 /checksum/SHA256/reset/96
ok 1025 /checksum/SHA256/reset/97
ok 1026 /checksum/SHA256/reset/98
ok 1027 /checksum/SHA256/reset/99
ok 1028 /checksum/SHA256/reset/100
ok 1029 /checksum/SHA256/reset/101
ok 1030 /checksum/SHA256/reset/102
ok 1031 /checksum/SHA256/reset/103
ok 1032 /checksum/SHA256/reset/104
ok 1033 /checksum/SHA256/reset/105
ok 1034 /checksum/SHA256/reset/106
ok 1035 /checksum/SHA256/reset/107
ok 1036 /checksum/SHA256/reset/108
ok 1037 /checksum/SHA256/reset/109
ok 1038 /checksum/SHA256/reset/110
ok 1039 /checksum/SHA256/reset/111
ok 1040 /checksum/SHA256/reset/112
ok 1041 /checksum/SHA256/reset/113
ok 1042 /checksum/SHA256/reset/114
ok 1043 /checksum/SHA256/reset/115
ok 1044 /checksum/SHA256/reset/116
ok 1045 /checksum/SHA256/reset/117
ok 1046 /checksum/SHA256/reset/118
ok 1047 /checksum/SHA256/reset/119
ok 1048 /checksum/SHA256/reset/120
ok 1049 /checksum/SHA256/reset/121
ok 1050 /checksum/SHA256/reset/122
ok 1051 /checksum/SHA256/reset/123
ok 1052 /checksum/SHA256/reset/124
ok 1053 /checksum/SHA256/reset/125
ok 1054 /checksum/SHA256/reset/126
ok 1055 /checksum/SHA256/reset/127
ok 1056 /checksum/SHA256/reset/128
ok 1057 /checksum/SHA256/reset/129
ok 1058 /checksum/SHA256/reset/130
ok 1059 /checksum/SHA256/reset/131
ok 1060 /checksum/SHA256/reset/132
ok 1061 /checksum/SHA256/reset/133
ok 1062 /checksum/SHA256/reset/134
ok 1063 /checksum/SHA256/reset/135
ok 1064 /checksum/SHA256/reset/136
ok 1065 /checksum/SHA256/reset/137
ok 1066 /checksum/SHA256/reset/138
ok 1067 /checksum/SHA256/reset/139
ok 1068 /checksum/SHA256/reset/140
ok 1069 /checksum/SHA256/reset/141
ok 1070 /checksum/SHA256/reset/142
ok 1071 /checksum/SHA256/reset/143
ok 1072 /checksum/SHA256/reset/144
ok 1073 /checksum/SHA256/reset/145
ok 1074 /checksum/SHA256/reset/146
ok 1075 /checksum/SHA256/reset/147
ok 1076 /checksum/SHA256/reset/148
ok 1077 /checksum/SHA256/reset/149
ok 1078 /checksum/SHA256/reset/150
ok 1079 /checksum/SHA256/reset/151
ok 1080 /checksum/SHA256/reset/152
ok 1081 /checksum/SHA256/reset/153
ok 1082 /checksum/SHA256/reset/154
ok 1083 /checksum/SHA256/reset/155
ok 1084 /checksum/SHA256/reset/156
ok 1085 /checksum/SHA256/reset/157
ok 1086 /checksum/SHA256/reset/158
ok 1087 /checksum/SHA256/reset/159
ok 1088 /checksum/SHA256/reset/160
ok 1089 /checksum/SHA256/reset/161
ok 1090 /checksum/SHA256/reset/162
ok 1091 /checksum/SHA256/reset/163
ok 1092 /checksum/SHA256/reset/164
ok 1093 /checksum/SHA256/reset/165
ok 1094 /checksum/SHA256/reset/166
ok 1095 /checksum/SHA256/reset/167
ok 1096 /checksum/SHA256/reset/168
ok 1097 /checksum/SHA256/reset/169
ok 1098 /checksum/SHA256/reset/170
ok 1099 /checksum/SHA256/reset/171
ok 1100 /checksum/SHA256/reset/172
ok 1101 /checksum/SHA256/reset/173
ok 1102 /checksum/SHA256/reset/174
ok 1103 /checksum/SHA256/reset/175
ok 1104 /checksum/SHA256/reset/176
ok 1105 /checksum/SHA256/reset/177
ok 1106 /checksum/SHA256/reset/178
ok 1107 /checksum/SHA256/reset/179
ok 1108 /checksum/SHA256/reset/180
ok 1109 /checksum/SHA256/reset/181
ok 1110 /checksum/SHA256/reset/182
ok 1111 /checksum/SHA256/reset/183
# End of reset tests
# End of SHA256 tests
# Start of SHA384 tests
ok 1112 /checksum/SHA384/0
ok 1113 /checksum/SHA384/1
ok 1114 /checksum/SHA384/2
ok 1115 /checksum/SHA384/3
ok 1116 /checksum/SHA384/4
ok 1117 /checksum/SHA384/5
ok 1118 /checksum/SHA384/6
ok 1119 /checksum/SHA384/7
ok 1120 /checksum/SHA384/8
ok 1121 /checksum/SHA384/9
ok 1122 /checksum/SHA384/10
ok 1123 /checksum/SHA384/11
ok 1124 /checksum/SHA384/12
ok 1125 /checksum/SHA384/13
ok 1126 /checksum/SHA384/14
ok 1127 /checksum/SHA384/15
ok 1128 /checksum/SHA384/16
ok 1129 /checksum/SHA384/17
ok 1130 /checksum/SHA384/18
ok 1131 /checksum/SHA384/19
ok 1132 /checksum/SHA384/20
ok 1133 /checksum/SHA384/21
ok 1134 /checksum/SHA384/22
ok 1135 /checksum/SHA384/23
ok 1136 /checksum/SHA384/24
ok 1137 /checksum/SHA384/25
ok 1138 /checksum/SHA384/26
ok 1139 /checksum/SHA384/27
ok 1140 /checksum/SHA384/28
ok 1141 /checksum/SHA384/29
ok 1142 /checksum/SHA384/30
ok 1143 /checksum/SHA384/31
ok 1144 /checksum/SHA384/32
ok 1145 /checksum/SHA384/33
ok 1146 /checksum/SHA384/34
ok 1147 /checksum/SHA384/35
ok 1148 /checksum/SHA384/36
ok 1149 /checksum/SHA384/37
ok 1150 /checksum/SHA384/38
ok 1151 /checksum/SHA384/39
ok 1152 /checksum/SHA384/40
ok 1153 /checksum/SHA384/41
ok 1154 /checksum/SHA384/42
ok 1155 /checksum/SHA384/43
ok 1156 /checksum/SHA384/44
ok 1157 /checksum/SHA384/45
ok 1158 /checksum/SHA384/46
ok 1159 /checksum/SHA384/47
ok 1160 /checksum/SHA384/48
ok 1161 /checksum/SHA384/49
ok 1162 /checksum/SHA384/50
ok 1163 /checksum/SHA384/51
ok 1164 /checksum/SHA384/52
ok 1165 /checksum/SHA384/53
ok 1166 /checksum/SHA384/54
ok 1167 /checksum/SHA384/55
ok 1168 /checksum/SHA384/56
ok 1169 /checksum/SHA384/57
ok 1170 /checksum/SHA384/58
ok 1171 /checksum/SHA384/59
ok 1172 /checksum/SHA384/60
ok 1173 /checksum/SHA384/61
ok 1174 /checksum/SHA384/62
ok 1175 /checksum/SHA384/63
ok 1176 /checksum/SHA384/64
ok 1177 /checksum/SHA384/65
ok 1178 /checksum/SHA384/66
ok 1179 /checksum/SHA384/67
ok 1180 /checksum/SHA384/68
ok 1181 /checksum/SHA384/69
ok 1182 /checksum/SHA384/70
ok 1183 /checksum/SHA384/71
ok 1184 /checksum/SHA384/72
ok 1185 /checksum/SHA384/73
ok 1186 /checksum/SHA384/74
ok 1187 /checksum/SHA384/75
ok 1188 /checksum/SHA384/76
ok 1189 /checksum/SHA384/77
ok 1190 /checksum/SHA384/78
ok 1191 /checksum/SHA384/79
ok 1192 /checksum/SHA384/80
ok 1193 /checksum/SHA384/81
ok 1194 /checksum/SHA384/82
ok 1195 /checksum/SHA384/83
ok 1196 /checksum/SHA384/84
ok 1197 /checksum/SHA384/85
ok 1198 /checksum/SHA384/86
ok 1199 /checksum/SHA384/87
ok 1200 /checksum/SHA384/88
ok 1201 /checksum/SHA384/89
ok 1202 /checksum/SHA384/90
ok 1203 /checksum/SHA384/91
ok 1204 /checksum/SHA384/92
ok 1205 /checksum/SHA384/93
ok 1206 /checksum/SHA384/94
ok 1207 /checksum/SHA384/95
ok 1208 /checksum/SHA384/96
ok 1209 /checksum/SHA384/97
ok 1210 /checksum/SHA384/98
ok 1211 /checksum/SHA384/99
ok 1212 /checksum/SHA384/100
ok 1213 /checksum/SHA384/101
ok 1214 /checksum/SHA384/102
ok 1215 /checksum/SHA384/103
ok 1216 /checksum/SHA384/104
ok 1217 /checksum/SHA384/105
ok 1218 /checksum/SHA384/106
ok 1219 /checksum/SHA384/107
ok 1220 /checksum/SHA384/108
ok 1221 /checksum/SHA384/109
ok 1222 /checksum/SHA384/110
ok 1223 /checksum/SHA384/111
ok 1224 /checksum/SHA384/112
ok 1225 /checksum/SHA384/113
ok 1226 /checksum/SHA384/114
ok 1227 /checksum/SHA384/115
ok 1228 /checksum/SHA384/116
ok 1229 /checksum/SHA384/117
ok 1230 /checksum/SHA384/118
ok 1231 /checksum/SHA384/119
ok 1232 /checksum/SHA384/120
ok 1233 /checksum/SHA384/121
ok 1234 /checksum/SHA384/122
ok 1235 /checksum/SHA384/123
ok 1236 /checksum/SHA384/124
ok 1237 /checksum/SHA384/125
ok 1238 /checksum/SHA384/126
ok 1239 /checksum/SHA384/127
ok 1240 /checksum/SHA384/128
ok 1241 /checksum/SHA384/129
ok 1242 /checksum/SHA384/130
ok 1243 /checksum/SHA384/131
ok 1244 /checksum/SHA384/132
ok 1245 /checksum/SHA384/133
ok 1246 /checksum/SHA384/134
ok 1247 /checksum/SHA384/135
ok 1248 /checksum/SHA384/136
ok 1249 /checksum/SHA384/137
ok 1250 /checksum/SHA384/138
ok 1251 /checksum/SHA384/139
ok 1252 /checksum/SHA384/140
ok 1253 /checksum/SHA384/141
ok 1254 /checksum/SHA384/142
ok 1255 /checksum/SHA384/143
ok 1256 /checksum/SHA384/144
ok 1257 /checksum/SHA384/145
ok 1258 /checksum/SHA384/146
ok 1259 /checksum/SHA384/147
ok 1260 /checksum/SHA384/148
ok 1261 /checksum/SHA384/149
ok 1262 /checksum/SHA384/150
ok 1263 /checksum/SHA384/151
ok 1264 /checksum/SHA384/152
ok 1265 /checksum/SHA384/153
ok 1266 /checksum/SHA384/154
ok 1267 /checksum/SHA384/155
ok 1268 /checksum/SHA384/156
ok 1269 /checksum/SHA384/157
ok 1270 /checksum/SHA384/158
ok 1271 /checksum/SHA384/159
ok 1272 /checksum/SHA384/160
ok 1273 /checksum/SHA384/161
ok 1274 /checksum/SHA384/162
ok 1275 /checksum/SHA384/163
ok 1276 /checksum/SHA384/164
ok 1277 /checksum/SHA384/165
ok 1278 /checksum/SHA384/166
ok 1279 /checksum/SHA384/167
ok 1280 /checksum/SHA384/168
ok 1281 /checksum/SHA384/169
ok 1282 /checksum/SHA384/170
ok 1283 /checksum/SHA384/171
ok 1284 /checksum/SHA384/172
ok 1285 /checksum/SHA384/173
ok 1286 /checksum/SHA384/174
ok 1287 /checksum/SHA384/175
ok 1288 /checksum/SHA384/176
ok 1289 /checksum/SHA384/177
ok 1290 /checksum/SHA384/178
ok 1291 /checksum/SHA384/179
ok 1292 /checksum/SHA384/180
ok 1293 /checksum/SHA384/181
ok 1294 /checksum/SHA384/182
ok 1295 /checksum/SHA384/183
ok 1296 /checksum/SHA384/string
ok 1297 /checksum/SHA384/bytes
# Start of reset tests
ok 1298 /checksum/SHA384/reset/0
ok 1299 /checksum/SHA384/reset/1
ok 1300 /checksum/SHA384/reset/2
ok 1301 /checksum/SHA384/reset/3
ok 1302 /checksum/SHA384/reset/4
ok 1303 /checksum/SHA384/reset/5
ok 1304 /checksum/SHA384/reset/6
ok 1305 /checksum/SHA384/reset/7
ok 1306 /checksum/SHA384/reset/8
ok 1307 /checksum/SHA384/reset/9
ok 1308 /checksum/SHA384/reset/10
ok 1309 /checksum/SHA384/reset/11
ok 1310 /checksum/SHA384/reset/12
ok 1311 /checksum/SHA384/reset/13
ok 1312 /checksum/SHA384/reset/14
ok 1313 /checksum/SHA384/reset/15
ok 1314 /checksum/SHA384/reset/16
ok 1315 /checksum/SHA384/reset/17
ok 1316 /checksum/SHA384/reset/18
ok 1317 /checksum/SHA384/reset/19
ok 1318 /checksum/SHA384/reset/20
ok 1319 /checksum/SHA384/reset/21
ok 1320 /checksum/SHA384/reset/22
ok 1321 /checksum/SHA384/reset/23
ok 1322 /checksum/SHA384/reset/24
ok 1323 /checksum/SHA384/reset/25
ok 1324 /checksum/SHA384/reset/26
ok 1325 /checksum/SHA384/reset/27
ok 1326 /checksum/SHA384/reset/28
ok 1327 /checksum/SHA384/reset/29
ok 1328 /checksum/SHA384/reset/30
ok 1329 /checksum/SHA384/reset/31
ok 1330 /checksum/SHA384/reset/32
ok 1331 /checksum/SHA384/reset/33
ok 1332 /checksum/SHA384/reset/34
ok 1333 /checksum/SHA384/reset/35
ok 1334 /checksum/SHA384/reset/36
ok 1335 /checksum/SHA384/reset/37
ok 1336 /checksum/SHA384/reset/38
ok 1337 /checksum/SHA384/reset/39
ok 1338 /checksum/SHA384/reset/40
ok 1339 /checksum/SHA384/reset/41
ok 1340 /checksum/SHA384/reset/42
ok 1341 /checksum/SHA384/reset/43
ok 1342 /checksum/SHA384/reset/44
ok 1343 /checksum/SHA384/reset/45
ok 1344 /checksum/SHA384/reset/46
ok 1345 /checksum/SHA384/reset/47
ok 1346 /checksum/SHA384/reset/48
ok 1347 /checksum/SHA384/reset/49
ok 1348 /checksum/SHA384/reset/50
ok 1349 /checksum/SHA384/reset/51
ok 1350 /checksum/SHA384/reset/52
ok 1351 /checksum/SHA384/reset/53
ok 1352 /checksum/SHA384/reset/54
ok 1353 /checksum/SHA384/reset/55
ok 1354 /checksum/SHA384/reset/56
ok 1355 /checksum/SHA384/reset/57
ok 1356 /checksum/SHA384/reset/58
ok 1357 /checksum/SHA384/reset/59
ok 1358 /checksum/SHA384/reset/60
ok 1359 /checksum/SHA384/reset/61
ok 1360 /checksum/SHA384/reset/62
ok 1361 /checksum/SHA384/reset/63
ok 1362 /checksum/SHA384/reset/64
ok 1363 /checksum/SHA384/reset/65
ok 1364 /checksum/SHA384/reset/66
ok 1365 /checksum/SHA384/reset/67
ok 1366 /checksum/SHA384/reset/68
ok 1367 /checksum/SHA384/reset/69
ok 1368 /checksum/SHA384/reset/70
ok 1369 /checksum/SHA384/reset/71
ok 1370 /checksum/SHA384/reset/72
ok 1371 /checksum/SHA384/reset/73
ok 1372 /checksum/SHA384/reset/74
ok 1373 /checksum/SHA384/reset/75
ok 1374 /checksum/SHA384/reset/76
ok 1375 /checksum/SHA384/reset/77
ok 1376 /checksum/SHA384/reset/78
ok 1377 /checksum/SHA384/reset/79
ok 1378 /checksum/SHA384/reset/80
ok 1379 /checksum/SHA384/reset/81
ok 1380 /checksum/SHA384/reset/82
ok 1381 /checksum/SHA384/reset/83
ok 1382 /checksum/SHA384/reset/84
ok 1383 /checksum/SHA384/reset/85
ok 1384 /checksum/SHA384/reset/86
ok 1385 /checksum/SHA384/reset/87
ok 1386 /checksum/SHA384/reset/88
ok 1387 /checksum/SHA384/reset/89
ok 1388 /checksum/SHA384/reset/90
ok 1389 /checksum/SHA384/reset/91
ok 1390 /checksum/SHA384/reset/92
ok 1391 /checksum/SHA384/reset/93
ok 1392 /checksum/SHA384/reset/94
ok 1393 /checksum/SHA384/reset/95
ok 1394 /checksum/SHA384/reset/96
ok 1395 /checksum/SHA384/reset/97
ok 1396 /checksum/SHA384/reset/98
ok 1397 /checksum/SHA384/reset/99
ok 1398 /checksum/SHA384/reset/100
ok 1399 /checksum/SHA384/reset/101
ok 1400 /checksum/SHA384/reset/102
ok 1401 /checksum/SHA384/reset/103
ok 1402 /checksum/SHA384/reset/104
ok 1403 /checksum/SHA384/reset/105
ok 1404 /checksum/SHA384/reset/106
ok 1405 /checksum/SHA384/reset/107
ok 1406 /checksum/SHA384/reset/108
ok 1407 /checksum/SHA384/reset/109
ok 1408 /checksum/SHA384/reset/110
ok 1409 /checksum/SHA384/reset/111
ok 1410 /checksum/SHA384/reset/112
ok 1411 /checksum/SHA384/reset/113
ok 1412 /checksum/SHA384/reset/114
ok 1413 /checksum/SHA384/reset/115
ok 1414 /checksum/SHA384/reset/116
ok 1415 /checksum/SHA384/reset/117
ok 1416 /checksum/SHA384/reset/118
ok 1417 /checksum/SHA384/reset/119
ok 1418 /checksum/SHA384/reset/120
ok 1419 /checksum/SHA384/reset/121
ok 1420 /checksum/SHA384/reset/122
ok 1421 /checksum/SHA384/reset/123
ok 1422 /checksum/SHA384/reset/124
ok 1423 /checksum/SHA384/reset/125
ok 1424 /checksum/SHA384/reset/126
ok 1425 /checksum/SHA384/reset/127
ok 1426 /checksum/SHA384/reset/128
ok 1427 /checksum/SHA384/reset/129
ok 1428 /checksum/SHA384/reset/130
ok 1429 /checksum/SHA384/reset/131
ok 1430 /checksum/SHA384/reset/132
ok 1431 /checksum/SHA384/reset/133
ok 1432 /checksum/SHA384/reset/134
ok 1433 /checksum/SHA384/reset/135
ok 1434 /checksum/SHA384/reset/136
ok 1435 /checksum/SHA384/reset/137
ok 1436 /checksum/SHA384/reset/138
ok 1437 /checksum/SHA384/reset/139
ok 1438 /checksum/SHA384/reset/140
ok 1439 /checksum/SHA384/reset/141
ok 1440 /checksum/SHA384/reset/142
ok 1441 /checksum/SHA384/reset/143
ok 1442 /checksum/SHA384/reset/144
ok 1443 /checksum/SHA384/reset/145
ok 1444 /checksum/SHA384/reset/146
ok 1445 /checksum/SHA384/reset/147
ok 1446 /checksum/SHA384/reset/148
ok 1447 /checksum/SHA384/reset/149
ok 1448 /checksum/SHA384/reset/150
ok 1449 /checksum/SHA384/reset/151
ok 1450 /checksum/SHA384/reset/152
ok 1451 /checksum/SHA384/reset/153
ok 1452 /checksum/SHA384/reset/154
ok 1453 /checksum/SHA384/reset/155
ok 1454 /checksum/SHA384/reset/156
ok 1455 /checksum/SHA384/reset/157
ok 1456 /checksum/SHA384/reset/158
ok 1457 /checksum/SHA384/reset/159
ok 1458 /checksum/SHA384/reset/160
ok 1459 /checksum/SHA384/reset/161
ok 1460 /checksum/SHA384/reset/162
ok 1461 /checksum/SHA384/reset/163
ok 1462 /checksum/SHA384/reset/164
ok 1463 /checksum/SHA384/reset/165
ok 1464 /checksum/SHA384/reset/166
ok 1465 /checksum/SHA384/reset/167
ok 1466 /checksum/SHA384/reset/168
ok 1467 /checksum/SHA384/reset/169
ok 1468 /checksum/SHA384/reset/170
ok 1469 /checksum/SHA384/reset/171
ok 1470 /checksum/SHA384/reset/172
ok 1471 /checksum/SHA384/reset/173
ok 1472 /checksum/SHA384/reset/174
ok 1473 /checksum/SHA384/reset/175
ok 1474 /checksum/SHA384/reset/176
ok 1475 /checksum/SHA384/reset/177
ok 1476 /checksum/SHA384/reset/178
ok 1477 /checksum/SHA384/reset/179
ok 1478 /checksum/SHA384/reset/180
ok 1479 /checksum/SHA384/reset/181
ok 1480 /checksum/SHA384/reset/182
ok 1481 /checksum/SHA384/reset/183
# End of reset tests
# End of SHA384 tests
# Start of SHA512 tests
ok 1482 /checksum/SHA512/0
ok 1483 /checksum/SHA512/1
ok 1484 /checksum/SHA512/2
ok 1485 /checksum/SHA512/3
ok 1486 /checksum/SHA512/4
ok 1487 /checksum/SHA512/5
ok 1488 /checksum/SHA512/6
ok 1489 /checksum/SHA512/7
ok 1490 /checksum/SHA512/8
ok 1491 /checksum/SHA512/9
ok 1492 /checksum/SHA512/10
ok 1493 /checksum/SHA512/11
ok 1494 /checksum/SHA512/12
ok 1495 /checksum/SHA512/13
ok 1496 /checksum/SHA512/14
ok 1497 /checksum/SHA512/15
ok 1498 /checksum/SHA512/16
ok 1499 /checksum/SHA512/17
ok 1500 /checksum/SHA512/18
ok 1501 /checksum/SHA512/19
ok 1502 /checksum/SHA512/20
ok 1503 /checksum/SHA512/21
ok 1504 /checksum/SHA512/22
ok 1505 /checksum/SHA512/23
ok 1506 /checksum/SHA512/24
ok 1507 /checksum/SHA512/25
ok 1508 /checksum/SHA512/26
ok 1509 /checksum/SHA512/27
ok 1510 /checksum/SHA512/28
ok 1511 /checksum/SHA512/29
ok 1512 /checksum/SHA512/30
ok 1513 /checksum/SHA512/31
ok 1514 /checksum/SHA512/32
ok 1515 /checksum/SHA512/33
ok 1516 /checksum/SHA512/34
ok 1517 /checksum/SHA512/35
ok 1518 /checksum/SHA512/36
ok 1519 /checksum/SHA512/37
ok 1520 /checksum/SHA512/38
ok 1521 /checksum/SHA512/39
ok 1522 /checksum/SHA512/40
ok 1523 /checksum/SHA512/41
ok 1524 /checksum/SHA512/42
ok 1525 /checksum/SHA512/43
ok 1526 /checksum/SHA512/44
ok 1527 /checksum/SHA512/45
ok 1528 /checksum/SHA512/46
ok 1529 /checksum/SHA512/47
ok 1530 /checksum/SHA512/48
ok 1531 /checksum/SHA512/49
ok 1532 /checksum/SHA512/50
ok 1533 /checksum/SHA512/51
ok 1534 /checksum/SHA512/52
ok 1535 /checksum/SHA512/53
ok 1536 /checksum/SHA512/54
ok 1537 /checksum/SHA512/55
ok 1538 /checksum/SHA512/56
ok 1539 /checksum/SHA512/57
ok 1540 /checksum/SHA512/58
ok 1541 /checksum/SHA512/59
ok 1542 /checksum/SHA512/60
ok 1543 /checksum/SHA512/61
ok 1544 /checksum/SHA512/62
ok 1545 /checksum/SHA512/63
ok 1546 /checksum/SHA512/64
ok 1547 /checksum/SHA512/65
ok 1548 /checksum/SHA512/66
ok 1549 /checksum/SHA512/67
ok 1550 /checksum/SHA512/68
ok 1551 /checksum/SHA512/69
ok 1552 /checksum/SHA512/70
ok 1553 /checksum/SHA512/71
ok 1554 /checksum/SHA512/72
ok 1555 /checksum/SHA512/73
ok 1556 /checksum/SHA512/74
ok 1557 /checksum/SHA512/75
ok 1558 /checksum/SHA512/76
ok 1559 /checksum/SHA512/77
ok 1560 /checksum/SHA512/78
ok 1561 /checksum/SHA512/79
ok 1562 /checksum/SHA512/80
ok 1563 /checksum/SHA512/81
ok 1564 /checksum/SHA512/82
ok 1565 /checksum/SHA512/83
ok 1566 /checksum/SHA512/84
ok 1567 /checksum/SHA512/85
ok 1568 /checksum/SHA512/86
ok 1569 /checksum/SHA512/87
ok 1570 /checksum/SHA512/88
ok 1571 /checksum/SHA512/89
ok 1572 /checksum/SHA512/90
ok 1573 /checksum/SHA512/91
ok 1574 /checksum/SHA512/92
ok 1575 /checksum/SHA512/93
ok 1576 /checksum/SHA512/94
ok 1577 /checksum/SHA512/95
ok 1578 /checksum/SHA512/96
ok 1579 /checksum/SHA512/97
ok 1580 /checksum/SHA512/98
ok 1581 /checksum/SHA512/99
ok 1582 /checksum/SHA512/100
ok 1583 /checksum/SHA512/101
ok 1584 /checksum/SHA512/102
ok 1585 /checksum/SHA512/103
ok 1586 /checksum/SHA512/104
ok 1587 /checksum/SHA512/105
ok 1588 /checksum/SHA512/106
ok 1589 /checksum/SHA512/107
ok 1590 /checksum/SHA512/108
ok 1591 /checksum/SHA512/109
ok 1592 /checksum/SHA512/110
ok 1593 /checksum/SHA512/111
ok 1594 /checksum/SHA512/112
ok 1595 /checksum/SHA512/113
ok 1596 /checksum/SHA512/114
ok 1597 /checksum/SHA512/115
ok 1598 /checksum/SHA512/116
ok 1599 /checksum/SHA512/117
ok 1600 /checksum/SHA512/118
ok 1601 /checksum/SHA512/119
ok 1602 /checksum/SHA512/120
ok 1603 /checksum/SHA512/121
ok 1604 /checksum/SHA512/122
ok 1605 /checksum/SHA512/123
ok 1606 /checksum/SHA512/124
ok 1607 /checksum/SHA512/125
ok 1608 /checksum/SHA512/126
ok 1609 /checksum/SHA512/127
ok 1610 /checksum/SHA512/128
ok 1611 /checksum/SHA512/129
ok 1612 /checksum/SHA512/130
ok 1613 /checksum/SHA512/131
ok 1614 /checksum/SHA512/132
ok 1615 /checksum/SHA512/133
ok 1616 /checksum/SHA512/134
ok 1617 /checksum/SHA512/135
ok 1618 /checksum/SHA512/136
ok 1619 /checksum/SHA512/137
ok 1620 /checksum/SHA512/138
ok 1621 /checksum/SHA512/139
ok 1622 /checksum/SHA512/140
ok 1623 /checksum/SHA512/141
ok 1624 /checksum/SHA512/142
ok 1625 /checksum/SHA512/143
ok 1626 /checksum/SHA512/144
ok 1627 /checksum/SHA512/145
ok 1628 /checksum/SHA512/146
ok 1629 /checksum/SHA512/147
ok 1630 /checksum/SHA512/148
ok 1631 /checksum/SHA512/149
ok 1632 /checksum/SHA512/150
ok 1633 /checksum/SHA512/151
ok 1634 /checksum/SHA512/152
ok 1635 /checksum/SHA512/153
ok 1636 /checksum/SHA512/154
ok 1637 /checksum/SHA512/155
ok 1638 /checksum/SHA512/156
ok 1639 /checksum/SHA512/157
ok 1640 /checksum/SHA512/158
ok 1641 /checksum/SHA512/159
ok 1642 /checksum/SHA512/160
ok 1643 /checksum/SHA512/161
ok 1644 /checksum/SHA512/162
ok 1645 /checksum/SHA512/163
ok 1646 /checksum/SHA512/164
Executing: glib/checksum.test
ok 1647 /checksum/SHA512/165
ok 1648 /checksum/SHA512/166
ok 1649 /checksum/SHA512/167
ok 1650 /checksum/SHA512/168
ok 1651 /checksum/SHA512/169
ok 1652 /checksum/SHA512/170
ok 1653 /checksum/SHA512/171
ok 1654 /checksum/SHA512/172
ok 1655 /checksum/SHA512/173
ok 1656 /checksum/SHA512/174
ok 1657 /checksum/SHA512/175
ok 1658 /checksum/SHA512/176
ok 1659 /checksum/SHA512/177
ok 1660 /checksum/SHA512/178
ok 1661 /checksum/SHA512/179
ok 1662 /checksum/SHA512/180
ok 1663 /checksum/SHA512/181
ok 1664 /checksum/SHA512/182
ok 1665 /checksum/SHA512/183
ok 1666 /checksum/SHA512/string
ok 1667 /checksum/SHA512/bytes
# Start of reset tests
ok 1668 /checksum/SHA512/reset/0
ok 1669 /checksum/SHA512/reset/1
ok 1670 /checksum/SHA512/reset/2
ok 1671 /checksum/SHA512/reset/3
ok 1672 /checksum/SHA512/reset/4
ok 1673 /checksum/SHA512/reset/5
ok 1674 /checksum/SHA512/reset/6
ok 1675 /checksum/SHA512/reset/7
ok 1676 /checksum/SHA512/reset/8
ok 1677 /checksum/SHA512/reset/9
ok 1678 /checksum/SHA512/reset/10
ok 1679 /checksum/SHA512/reset/11
ok 1680 /checksum/SHA512/reset/12
ok 1681 /checksum/SHA512/reset/13
ok 1682 /checksum/SHA512/reset/14
ok 1683 /checksum/SHA512/reset/15
ok 1684 /checksum/SHA512/reset/16
ok 1685 /checksum/SHA512/reset/17
ok 1686 /checksum/SHA512/reset/18
ok 1687 /checksum/SHA512/reset/19
ok 1688 /checksum/SHA512/reset/20
ok 1689 /checksum/SHA512/reset/21
ok 1690 /checksum/SHA512/reset/22
ok 1691 /checksum/SHA512/reset/23
ok 1692 /checksum/SHA512/reset/24
ok 1693 /checksum/SHA512/reset/25
ok 1694 /checksum/SHA512/reset/26
ok 1695 /checksum/SHA512/reset/27
ok 1696 /checksum/SHA512/reset/28
ok 1697 /checksum/SHA512/reset/29
ok 1698 /checksum/SHA512/reset/30
ok 1699 /checksum/SHA512/reset/31
ok 1700 /checksum/SHA512/reset/32
ok 1701 /checksum/SHA512/reset/33
ok 1702 /checksum/SHA512/reset/34
ok 1703 /checksum/SHA512/reset/35
ok 1704 /checksum/SHA512/reset/36
ok 1705 /checksum/SHA512/reset/37
ok 1706 /checksum/SHA512/reset/38
ok 1707 /checksum/SHA512/reset/39
ok 1708 /checksum/SHA512/reset/40
ok 1709 /checksum/SHA512/reset/41
ok 1710 /checksum/SHA512/reset/42
ok 1711 /checksum/SHA512/reset/43
ok 1712 /checksum/SHA512/reset/44
ok 1713 /checksum/SHA512/reset/45
ok 1714 /checksum/SHA512/reset/46
ok 1715 /checksum/SHA512/reset/47
ok 1716 /checksum/SHA512/reset/48
ok 1717 /checksum/SHA512/reset/49
ok 1718 /checksum/SHA512/reset/50
ok 1719 /checksum/SHA512/reset/51
ok 1720 /checksum/SHA512/reset/52
ok 1721 /checksum/SHA512/reset/53
ok 1722 /checksum/SHA512/reset/54
ok 1723 /checksum/SHA512/reset/55
ok 1724 /checksum/SHA512/reset/56
ok 1725 /checksum/SHA512/reset/57
ok 1726 /checksum/SHA512/reset/58
ok 1727 /checksum/SHA512/reset/59
ok 1728 /checksum/SHA512/reset/60
ok 1729 /checksum/SHA512/reset/61
ok 1730 /checksum/SHA512/reset/62
ok 1731 /checksum/SHA512/reset/63
ok 1732 /checksum/SHA512/reset/64
ok 1733 /checksum/SHA512/reset/65
ok 1734 /checksum/SHA512/reset/66
ok 1735 /checksum/SHA512/reset/67
ok 1736 /checksum/SHA512/reset/68
ok 1737 /checksum/SHA512/reset/69
ok 1738 /checksum/SHA512/reset/70
ok 1739 /checksum/SHA512/reset/71
ok 1740 /checksum/SHA512/reset/72
ok 1741 /checksum/SHA512/reset/73
ok 1742 /checksum/SHA512/reset/74
ok 1743 /checksum/SHA512/reset/75
ok 1744 /checksum/SHA512/reset/76
ok 1745 /checksum/SHA512/reset/77
ok 1746 /checksum/SHA512/reset/78
ok 1747 /checksum/SHA512/reset/79
ok 1748 /checksum/SHA512/reset/80
ok 1749 /checksum/SHA512/reset/81
ok 1750 /checksum/SHA512/reset/82
ok 1751 /checksum/SHA512/reset/83
ok 1752 /checksum/SHA512/reset/84
ok 1753 /checksum/SHA512/reset/85
ok 1754 /checksum/SHA512/reset/86
ok 1755 /checksum/SHA512/reset/87
ok 1756 /checksum/SHA512/reset/88
ok 1757 /checksum/SHA512/reset/89
ok 1758 /checksum/SHA512/reset/90
ok 1759 /checksum/SHA512/reset/91
ok 1760 /checksum/SHA512/reset/92
ok 1761 /checksum/SHA512/reset/93
ok 1762 /checksum/SHA512/reset/94
ok 1763 /checksum/SHA512/reset/95
ok 1764 /checksum/SHA512/reset/96
ok 1765 /checksum/SHA512/reset/97
ok 1766 /checksum/SHA512/reset/98
ok 1767 /checksum/SHA512/reset/99
ok 1768 /checksum/SHA512/reset/100
ok 1769 /checksum/SHA512/reset/101
ok 1770 /checksum/SHA512/reset/102
ok 1771 /checksum/SHA512/reset/103
ok 1772 /checksum/SHA512/reset/104
ok 1773 /checksum/SHA512/reset/105
ok 1774 /checksum/SHA512/reset/106
ok 1775 /checksum/SHA512/reset/107
ok 1776 /checksum/SHA512/reset/108
ok 1777 /checksum/SHA512/reset/109
ok 1778 /checksum/SHA512/reset/110
ok 1779 /checksum/SHA512/reset/111
ok 1780 /checksum/SHA512/reset/112
ok 1781 /checksum/SHA512/reset/113
ok 1782 /checksum/SHA512/reset/114
ok 1783 /checksum/SHA512/reset/115
ok 1784 /checksum/SHA512/reset/116
ok 1785 /checksum/SHA512/reset/117
ok 1786 /checksum/SHA512/reset/118
ok 1787 /checksum/SHA512/reset/119
ok 1788 /checksum/SHA512/reset/120
ok 1789 /checksum/SHA512/reset/121
ok 1790 /checksum/SHA512/reset/122
ok 1791 /checksum/SHA512/reset/123
ok 1792 /checksum/SHA512/reset/124
ok 1793 /checksum/SHA512/reset/125
ok 1794 /checksum/SHA512/reset/126
ok 1795 /checksum/SHA512/reset/127
ok 1796 /checksum/SHA512/reset/128
ok 1797 /checksum/SHA512/reset/129
ok 1798 /checksum/SHA512/reset/130
ok 1799 /checksum/SHA512/reset/131
ok 1800 /checksum/SHA512/reset/132
ok 1801 /checksum/SHA512/reset/133
ok 1802 /checksum/SHA512/reset/134
ok 1803 /checksum/SHA512/reset/135
ok 1804 /checksum/SHA512/reset/136
ok 1805 /checksum/SHA512/reset/137
ok 1806 /checksum/SHA512/reset/138
ok 1807 /checksum/SHA512/reset/139
ok 1808 /checksum/SHA512/reset/140
ok 1809 /checksum/SHA512/reset/141
ok 1810 /checksum/SHA512/reset/142
ok 1811 /checksum/SHA512/reset/143
ok 1812 /checksum/SHA512/reset/144
ok 1813 /checksum/SHA512/reset/145
ok 1814 /checksum/SHA512/reset/146
ok 1815 /checksum/SHA512/reset/147
ok 1816 /checksum/SHA512/reset/148
ok 1817 /checksum/SHA512/reset/149
ok 1818 /checksum/SHA512/reset/150
ok 1819 /checksum/SHA512/reset/151
ok 1820 /checksum/SHA512/reset/152
ok 1821 /checksum/SHA512/reset/153
ok 1822 /checksum/SHA512/reset/154
ok 1823 /checksum/SHA512/reset/155
ok 1824 /checksum/SHA512/reset/156
ok 1825 /checksum/SHA512/reset/157
ok 1826 /checksum/SHA512/reset/158
ok 1827 /checksum/SHA512/reset/159
ok 1828 /checksum/SHA512/reset/160
ok 1829 /checksum/SHA512/reset/161
ok 1830 /checksum/SHA512/reset/162
ok 1831 /checksum/SHA512/reset/163
ok 1832 /checksum/SHA512/reset/164
ok 1833 /checksum/SHA512/reset/165
ok 1834 /checksum/SHA512/reset/166
ok 1835 /checksum/SHA512/reset/167
ok 1836 /checksum/SHA512/reset/168
ok 1837 /checksum/SHA512/reset/169
ok 1838 /checksum/SHA512/reset/170
ok 1839 /checksum/SHA512/reset/171
ok 1840 /checksum/SHA512/reset/172
ok 1841 /checksum/SHA512/reset/173
ok 1842 /checksum/SHA512/reset/174
ok 1843 /checksum/SHA512/reset/175
ok 1844 /checksum/SHA512/reset/176
ok 1845 /checksum/SHA512/reset/177
ok 1846 /checksum/SHA512/reset/178
ok 1847 /checksum/SHA512/reset/179
ok 1848 /checksum/SHA512/reset/180
ok 1849 /checksum/SHA512/reset/181
ok 1850 /checksum/SHA512/reset/182
ok 1851 /checksum/SHA512/reset/183
# End of reset tests
# End of SHA512 tests
# End of checksum tests
PASS: glib/checksum.test
Running test: glib/utf8-pointer.test
# random seed: R02S77301a211554de2dbf5d9d0683dfa554
1..3
# Start of utf8 tests
ok 1 /utf8/offsets
ok 2 /utf8/lengths
ok 3 /utf8/find
# End of utf8 tests
PASS: glib/utf8-pointer.test
Running test: glib/types.test
# random seed: R02Sc7778b5a9b6800d1c05eab8c6ad2b240
1..1
# Start of types tests
ok 1 /types/basic_types
# End of types tests
PASS: glib/types.test
Running test: glib/references.test
PASS: glib/references.test
Running test: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
Executing: glib/threadpool-test.test
PASS: glib/threadpool-test.test
Running test: glib/signal4.test
START: /usr/libexec/installed-tests/glib/signal4
init 0x55628e460a00
init 0x55628e460a20
..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Executing: glib/signal4.test
.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
stopping
stopped
dispose 0x55628e460a00!
dispose 0x55628e460a20!
PASS: glib/signal4.test
Running test: glib/gdbus-auth.test
# random seed: R02S6d4ae45b1af38d85bc6945ec7df533e2
1..5
# Start of gdbus tests
# Start of auth tests
# Start of client tests
ok 1 /gdbus/auth/client/EXTERNAL
ok 2 /gdbus/auth/client/DBUS_COOKIE_SHA1
# End of client tests
# Start of server tests
ok 3 /gdbus/auth/server/ANONYMOUS
ok 4 /gdbus/auth/server/EXTERNAL
ok 5 /gdbus/auth/server/DBUS_COOKIE_SHA1
# End of server tests
# End of auth tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-auth.test
Running test: glib/binding.test
# random seed: R02S146ec76b2a7555f190e0174b6c8e73bf
1..17
# Start of binding tests
ok 1 /binding/default
# /binding/canonicalisation summary: Test that bindings set up with non-canonical property names work
ok 2 /binding/canonicalisation
ok 3 /binding/bidirectional
ok 4 /binding/transform
ok 5 /binding/transform-default
ok 6 /binding/transform-closure
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=621782
ok 7 /binding/chain
ok 8 /binding/sync-create
ok 9 /binding/invert-boolean
ok 10 /binding/same-object
ok 11 /binding/unbind
ok 12 /binding/unbind-weak
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1373
ok 13 /binding/unbind-multiple
ok 14 /binding/fail
ok 15 /binding/interface
# /binding/concurrent-unbind summary: Test that unbinding from multiple threads concurrently works correctly
ok 16 /binding/concurrent-unbind
# /binding/concurrent-finalizing summary: Test that finalizing source/target from multiple threads concurrently works correctly
ok 17 /binding/concurrent-finalizing
# End of binding tests
PASS: glib/binding.test
Running test: glib/contexts.test
# random seed: R02S5908e42ee388f12b0e92105981b45e75
1..5
# Start of gio tests
# Start of contexts tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /gio/contexts/thread-independence
ok 2 /gio/contexts/context-independence
# Start of context-specific tests
ok 3 /gio/contexts/context-specific/identity
ok 4 /gio/contexts/context-specific/emit
ok 5 /gio/contexts/context-specific/emit-and-unref
# End of context-specific tests
# End of contexts tests
# End of gio tests
PASS: glib/contexts.test
Running test: glib/buffered-input-stream.test
# random seed: R02S3e10d02e368bd9d36d5c8d119c07193f
1..10
# Start of buffered-input-stream tests
ok 1 /buffered-input-stream/peek
ok 2 /buffered-input-stream/peek-buffer
ok 3 /buffered-input-stream/set-buffer-size
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=562393
ok 4 /buffered-input-stream/read-byte
ok 5 /buffered-input-stream/read
ok 6 /buffered-input-stream/read-async
ok 7 /buffered-input-stream/skip
ok 8 /buffered-input-stream/skip-async
ok 9 /buffered-input-stream/seek
# End of buffered-input-stream tests
# Start of filter-input-stream tests
ok 10 /filter-input-stream/close
# End of filter-input-stream tests
PASS: glib/buffered-input-stream.test
Running test: glib/gdbus-message.test
# random seed: R02S0e73994e0e5e68f92f43a0328a6048fe
1..3
# Start of gdbus tests
# Start of message tests
ok 1 /gdbus/message/lock
ok 2 /gdbus/message/copy
# Vector: 0
# Vector: 1
# Vector: 2
# Vector: 3
# Vector: 4
# Vector: 5
ok 3 /gdbus/message/bytes-needed
# End of message tests
# End of gdbus tests
PASS: glib/gdbus-message.test
Running test: glib/bitlock.test
# random seed: R02S529d09b41bd4cc3d4cd1a222ef0ebb45
1..0
PASS: glib/bitlock.test
Running test: glib/error.test
# random seed: R02S79608f1a6b13806317dc5d2a49eb59c3
1..11
# Start of error tests
ok 1 /error/overwrite
ok 2 /error/prefix
ok 3 /error/prefix-literal
ok 4 /error/literal
ok 5 /error/copy
# /error/matches summary: Test g_error_matches()
ok 6 /error/matches
# /error/clear summary: Test g_error_clear()
ok 7 /error/clear
ok 8 /error/extended
# Start of new-valist tests
# /error/new-valist/invalid summary: Test that g_error_new_valist() rejects invalid input
# Test 0
# Test 1
ok 9 /error/new-valist/invalid
# End of new-valist tests
# Start of extended tests
# /error/extended/duplicate summary: Test that registering a duplicate extended error domain doesn?t work
ok 10 /error/extended/duplicate
# /error/extended/non-static summary: Test registering an extended error domain with a non-static name
ok 11 /error/extended/non-static
# End of extended tests
# End of error tests
PASS: glib/error.test
Running test: glib/testfilemonitor.test
# random seed: R02Sd8902baf6ecf02c16f51dcffbf8a241a
1..7
# Start of monitor tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
# Using temporary directory: /tmp/gio-test-testfilemonitor_HOHRW2
# Using GFileMonitor GInotifyFileMonitor
ok 1 /monitor/atomic-replace
# Using temporary directory: /tmp/gio-test-testfilemonitor_VT3RW2
# Using GFileMonitor GInotifyFileMonitor
Executing: glib/testfilemonitor.test
ok 2 /monitor/file-changes
# Using temporary directory: /tmp/gio-test-testfilemonitor_M7XGW2
# Using GFileMonitor GInotifyFileMonitor
ok 3 /monitor/dir-monitor
# Using temporary directory: /tmp/gio-test-testfilemonitor_KBWRW2
# Using GFileMonitor GInotifyFileMonitor
Executing: glib/testfilemonitor.test
Executing: glib/testfilemonitor.test
Executing: glib/testfilemonitor.test
Executing: glib/testfilemonitor.test
Executing: glib/testfilemonitor.test
Executing: glib/testfilemonitor.test
ok 4 /monitor/dir-not-existent
# Using temporary directory: /tmp/gio-test-testfilemonitor_Z3QSW2
# Using GFileMonitor 0 GInotifyFileMonitor
# Using GFileMonitor 1 GInotifyFileMonitor
ok 5 /monitor/cross-dir-moves
# Using temporary directory: /tmp/gio-test-testfilemonitor_1JNSW2
# /monitor/finalize-in-callback summary: Test that finalization of a GFileMonitor in one of its callbacks doesn?t cause a deadlock.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1941
ok 6 /monitor/finalize-in-callback
# Start of file tests
# Using temporary directory: /tmp/gio-test-testfilemonitor_29LSW2
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=755721
# Running with hard link tests
# Using GFileMonitor GInotifyFileMonitor
Executing: glib/testfilemonitor.test
# Event 0 at expected index 7 skipped because it is marked as optional
# Event 2 at expected index 11 skipped because it is marked as optional
ok 7 /monitor/file/hard-links
# End of file tests
# End of monitor tests
PASS: glib/testfilemonitor.test
Running test: glib/gdbus-subscribe.test
# random seed: R02S2b8258d64cc13d534ac2b08dc94ee6b1
1..24
# Start of gdbus tests
# Start of subscribe tests
# Start of conn tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/simple/.dirs/runtime
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/simple summary: A broadcast is only received after subscribing to it
# Step 0: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 0 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 1 times by GDBusConnection, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 1 /gdbus/subscribe/conn/simple
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast
# Step 0: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: service 2
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: service 2
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 1
# Signal received from service 2 :1.2
# Signal received from service 2 :1.2 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Signal received from service 2 :1.2
# Signal received from service 2 :1.2 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 1 times by GDBusConnection, expected 1
# Signal from step 2 was received 1 times by GDBusConnection, expected 1
# Signal from step 3 was received 1 times by GDBusConnection, expected 1
# Signal from step 4 was received 1 times by GDBusConnection, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 2 /gdbus/subscribe/conn/broadcast_from_anyone
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/match_twice/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/match_twice summary: A message matching more than one subscription is received once per subscription
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: (any)
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: (any)
# 	Path: (any)
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 3: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 4: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 4 was received 4 times by GDBusConnection, expected 4
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 3 /gdbus/subscribe/conn/match_twice
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# Signal from step 3 was received 1 times by GDBusConnection, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 4 /gdbus/subscribe/conn/limit_by_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages
# Step 0: adding subscription
# 	Sender: :0.this.had.better.not.exist
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 5 /gdbus/subscribe/conn/nonexistent_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: org.gtk.Test.OwnedLater
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 3: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 5: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 6: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Step 7: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 5
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0
# Signal from step 3 was received 0 times by GDBusConnection, expected 0
# Signal from step 4 was received 0 times by GDBusConnection, expected 0
# Signal from step 5 was received 1 times by GDBusConnection, expected 1
# NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0
# Signal from step 7 was received 2 times by GDBusConnection, expected 2
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 6 /gdbus/subscribe/conn/limit_by_well_known_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/limit_to_message_bus/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus
# Step 0: adding subscription
# 	Sender: org.freedesktop.DBus
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# 	String argument 0: would I lie to you?
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Waiting for signal to reach message bus
# Step 3: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Signal received from message bus org.freedesktop.DBus
# Signal received from (unused) org.freedesktop.DBus via connection
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 7 /gdbus/subscribe/conn/limit_to_message_bus
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/conn/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Immediately unsubscribing
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 8 /gdbus/subscribe/conn/unsubscribe_immediately
# End of conn tests
# Start of proxy tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/simple/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/simple summary: A broadcast is only received after subscribing to it
# Step 0: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 9 /gdbus/subscribe/proxy/simple
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast
# Step 0: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: service 2
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: service 2
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 0 times by GDBusProxy, expected 0
# Signal from step 4 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 10 /gdbus/subscribe/proxy/broadcast_from_anyone
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/match_twice/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/match_twice summary: A message matching more than one subscription is received once per subscription
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: (any)
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: (any)
# 	Path: (any)
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 3: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 4: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 4 was received 2 times by GDBusProxy, expected 2
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 11 /gdbus/subscribe/proxy/match_twice
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 12 /gdbus/subscribe/proxy/limit_by_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages
# Step 0: adding subscription
# 	Sender: :0.this.had.better.not.exist
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 13 /gdbus/subscribe/proxy/nonexistent_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: org.gtk.Test.OwnedLater
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 3: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 5: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 6: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Step 7: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 5
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 0 times by GDBusProxy, expected 0
# Signal from step 4 was received 0 times by GDBusProxy, expected 0
# Signal from step 5 was received 1 times by GDBusProxy, expected 1
# NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0
# Signal from step 7 was received 2 times by GDBusProxy, expected 2
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 14 /gdbus/subscribe/proxy/limit_by_well_known_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus
# Step 0: adding subscription
# 	Sender: org.freedesktop.DBus
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# 	String argument 0: would I lie to you?
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Waiting for signal to reach message bus
# Step 3: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Signal received from message bus org.freedesktop.DBus
# Signal received from (unused) org.freedesktop.DBus via proxy
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 15 /gdbus/subscribe/proxy/limit_to_message_bus
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/proxy/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 16 /gdbus/subscribe/proxy/unsubscribe_immediately
# End of proxy tests
# Start of parallel tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/simple/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/simple summary: A broadcast is only received after subscribing to it
# Step 0: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 0 was received 0 times by GDBusConnection, expected 0
# Signal from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 1 times by GDBusConnection, expected 1
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 17 /gdbus/subscribe/parallel/simple
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast
# Step 0: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: service 2
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: service 2
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 1
# Signal received from service 2 :1.2
# Signal received from service 2 :1.2 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Signal received from service 2 :1.2
# Signal received from service 2 :1.2 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 1 times by GDBusConnection, expected 1
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 1 times by GDBusConnection, expected 1
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 1 times by GDBusConnection, expected 1
# Signal from step 3 was received 0 times by GDBusProxy, expected 0
# Signal from step 4 was received 1 times by GDBusConnection, expected 1
# Signal from step 4 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 18 /gdbus/subscribe/parallel/broadcast_from_anyone
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/match_twice/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/match_twice summary: A message matching more than one subscription is received once per subscription
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: adding subscription
# 	Sender: (any)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: (any)
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: (any)
# 	Path: (any)
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Cannot subscribe via proxy: no bus name
# Waiting for AddMatch to be processed
# Step 3: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 4: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 4
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 4 was received 4 times by GDBusConnection, expected 4
# Signal from step 4 was received 2 times by GDBusProxy, expected 2
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 19 /gdbus/subscribe/parallel/match_twice
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name
# Step 0: adding subscription
# 	Sender: service :1.1
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 3: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 3
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 1 times by GDBusConnection, expected 1
# Signal from step 3 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 20 /gdbus/subscribe/parallel/limit_by_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages
# Step 0: adding subscription
# 	Sender: :0.this.had.better.not.exist
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 21 /gdbus/subscribe/parallel/nonexistent_unique_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/limit_by_well_known_name summary: A subscription via a well-known name only accepts messages sent by the owner of that well-known name
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 2: adding subscription
# 	Sender: org.gtk.Test.OwnedLater
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 3: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 4: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 5: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Step 6: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Step 7: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 5
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 5
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Signal received from service :1.1
# Signal received from service :1.1 via connection
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 7
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0
# NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 3 was received 0 times by GDBusConnection, expected 0
# Signal from step 3 was received 0 times by GDBusProxy, expected 0
# Signal from step 4 was received 0 times by GDBusConnection, expected 0
# Signal from step 4 was received 0 times by GDBusProxy, expected 0
# Signal from step 5 was received 1 times by GDBusConnection, expected 1
# Signal from step 5 was received 1 times by GDBusProxy, expected 1
# NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0
# NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0
# Signal from step 7 was received 2 times by GDBusConnection, expected 2
# Signal from step 7 was received 2 times by GDBusProxy, expected 2
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 22 /gdbus/subscribe/parallel/limit_by_well_known_name
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus
# Step 0: adding subscription
# 	Sender: org.freedesktop.DBus
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 1: emitting signal
# 	Sender: attacker
# 	Destination: (broadcast)
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# 	String argument 0: would I lie to you?
# Waiting for signal to reach message bus
# Step 2: emitting signal
# 	Sender: attacker
# 	Destination: subscriber :1.0
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Waiting for signal to reach message bus
# Step 3: claiming bus name
# 	Name: org.gtk.Test.OwnedLater
# 	Owner: service
# Signal received from message bus org.freedesktop.DBus
# Signal received from (unused) org.freedesktop.DBus via connection
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Signal received from message bus org.freedesktop.DBus
# Signal received from (unused) org.freedesktop.DBus via proxy
# 	Path: /org/freedesktop/DBus
# 	Interface: org.freedesktop.DBus
# 	Member: NameOwnerChanged
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# Signal from step 1 was received 0 times by GDBusConnection, expected 0
# Signal from step 1 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 0 times by GDBusProxy, expected 0
# NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1
# NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 23 /gdbus/subscribe/parallel/limit_to_message_bus
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_PJ1HW2/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/runtime
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# subscriber is :1.0
# service is :1.1
# service 2 is :1.2
# attacker is :1.3
# Waiting for AddMatch to be processed
# /gdbus/subscribe/parallel/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash
# Step 0: claiming bus name
# 	Name: org.gtk.Test.AlreadyOwned
# 	Owner: service
# Step 1: adding subscription
# 	Sender: org.gtk.Test.AlreadyOwned
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: (any)
# 	String argument 0: (any)
# 	Flags: 0
# 	Subscribing via connection
# 	Immediately unsubscribing
# 	Subscribing via proxy
# Waiting for AddMatch to be processed
# Step 2: emitting signal
# 	Sender: service
# 	Destination: (broadcast)
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# Waiting for signal to reach message bus
# Signal received from service :1.1
# Signal received from service :1.1 via proxy
# 	Path: /org/gtk/GDBus/ExampleInterface
# 	Interface: org.gtk.GDBus.ExampleInterface
# 	Member: Foo
# 	Argument 0: (not a string)
# 	Sent in step: 2
# Received Finished signal from subscriber :1.0
# Received Finished signal from service :1.1
# Received Finished signal from service 2 :1.2
# Received Finished signal from attacker :1.3
# NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0
# NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0
# Signal from step 2 was received 0 times by GDBusConnection, expected 0
# Signal from step 2 was received 1 times by GDBusProxy, expected 1
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 24 /gdbus/subscribe/parallel/unsubscribe_immediately
# End of parallel tests
# End of subscribe tests
# End of gdbus tests
PASS: glib/gdbus-subscribe.test
Running test: glib/file.test
# random seed: R02S7723e541e4a8c14f7c5990e18702655f
1..37
# Start of file tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /file/basic
ok 2 /file/build-filename
ok 3 /file/parent
ok 4 /file/child
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2328
# /file/empty-path summary: Check that creating a file with an empty path results in errors
ok 5 /file/empty-path
ok 6 /file/type
ok 7 /file/parse-name
ok 8 /file/replace-load
# Bug Reference: https://bugzilla.gnome.org/629301
ok 9 /file/replace-cancel
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2325
# /file/replace-symlink summary: Test that G_FILE_CREATE_REPLACE_DESTINATION doesn?t follow symlinks
# Using temporary directory /tmp/g_file_replace_symlink_3CENW2
ok 10 /file/replace-symlink
ok 11 /file/async-delete
# Current umask: 18
# Vector 0
# Vector 1
# Vector 2
# Vector 3
# Vector 4
# Vector 5
# Vector 6
# Vector 7
ok 12 /file/copy-preserve-mode
ok 13 /file/measure
ok 14 /file/measure-async
ok 15 /file/load-bytes
ok 16 /file/load-bytes-async
ok 17 /file/writev
# Attributes for copy: time::modified,time::modified-usec,unix::mode,xattr::*
# Attributes for copy: time::modified,time::modified-usec,xattr::*
# Attributes for copy: time::access,time::access-usec,time::modified,time::modified-usec,unix::gid,unix::mode,unix::uid,xattr::*,xattr-sys::*
# Attributes for copy: time::access,time::access-usec,time::modified,time::modified-usec,unix::gid,unix::uid,xattr::*,xattr-sys::*
ok 18 /file/build-attribute-list-for-copy
ok 19 /file/move_async
# Start of async-create-delete tests
ok 20 /file/async-create-delete/0
ok 21 /file/async-create-delete/1
ok 22 /file/async-create-delete/10
ok 23 /file/async-create-delete/25
ok 24 /file/async-create-delete/4096
# End of async-create-delete tests
# Start of replace-symlink tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2417
# /file/replace-symlink/using-etag summary: Test that ETag checks work when replacing a file through a symlink
# Using temporary directory /tmp/g_file_replace_symlink_using_etag_593TW2
ok 25 /file/replace-symlink/using-etag
# End of replace-symlink tests
# Start of replace tests
# /file/replace/write-only summary: Test various situations for g_file_replace()
# Current umask: 18
# Test 0, using temporary directory /tmp/g_file_replace_R21TW2
# Test 1, using temporary directory /tmp/g_file_replace_CV1TW2
# Test 2, using temporary directory /tmp/g_file_replace_M01TW2
# Test 3, using temporary directory /tmp/g_file_replace_GJ2TW2
# Test 4, using temporary directory /tmp/g_file_replace_I91TW2
# Test 5, using temporary directory /tmp/g_file_replace_3C2TW2
# Test 6, using temporary directory /tmp/g_file_replace_FW2TW2
# Test 7, using temporary directory /tmp/g_file_replace_EZ2TW2
# Test 8, using temporary directory /tmp/g_file_replace_CR2TW2
# Test 9, using temporary directory /tmp/g_file_replace_NT2TW2
# Test 10, using temporary directory /tmp/g_file_replace_X92TW2
# Test 11, using temporary directory /tmp/g_file_replace_4D3TW2
# Test 12, using temporary directory /tmp/g_file_replace_X22TW2
# Test 13, using temporary directory /tmp/g_file_replace_472TW2
# Test 14, using temporary directory /tmp/g_file_replace_FJ0TW2
# Test 15, using temporary directory /tmp/g_file_replace_W9ZTW2
# Test 16, using temporary directory /tmp/g_file_replace_4D0TW2
# Test 17, using temporary directory /tmp/g_file_replace_7X0TW2
# Test 18, using temporary directory /tmp/g_file_replace_B20TW2
# Test 19, using temporary directory /tmp/g_file_replace_2Q0TW2
# Test 20, using temporary directory /tmp/g_file_replace_RU0TW2
# Test 21, using temporary directory /tmp/g_file_replace_CF1TW2
# Test 22, using temporary directory /tmp/g_file_replace_370TW2
# Test 23, using temporary directory /tmp/g_file_replace_870TW2
# Test 24, using temporary directory /tmp/g_file_replace_MQ1TW2
# Test 25, using temporary directory /tmp/g_file_replace_II1TW2
# Test 26, using temporary directory /tmp/g_file_replace_GJ1TW2
# Test 27, using temporary directory /tmp/g_file_replace_0M1TW2
# Test 28, using temporary directory /tmp/g_file_replace_GZYTW2
# Test 29, using temporary directory /tmp/g_file_replace_6QYTW2
# Test 30, using temporary directory /tmp/g_file_replace_PUYTW2
# Test 31, using temporary directory /tmp/g_file_replace_XWYTW2
# Test 32, using temporary directory /tmp/g_file_replace_HDZTW2
# Test 33, using temporary directory /tmp/g_file_replace_YHZTW2
# Test 34, using temporary directory /tmp/g_file_replace_Z7YTW2
# Test 35, using temporary directory /tmp/g_file_replace_FBZTW2
# Test 36, using temporary directory /tmp/g_file_replace_GSZTW2
# Test 37, using temporary directory /tmp/g_file_replace_KKZTW2
# Test 38, using temporary directory /tmp/g_file_replace_8MZTW2
# Test 39, using temporary directory /tmp/g_file_replace_F5ZTW2
# Test 40, using temporary directory /tmp/g_file_replace_AB0TW2
# Test 41, using temporary directory /tmp/g_file_replace_MYZTW2
# Test 42, using temporary directory /tmp/g_file_replace_I4ZTW2
# Test 43, using temporary directory /tmp/g_file_replace_TGXTW2
# Test 44, using temporary directory /tmp/g_file_replace_5IXTW2
# Test 45, using temporary directory /tmp/g_file_replace_36WTW2
# Test 46, using temporary directory /tmp/g_file_replace_QAXTW2
# Test 47, using temporary directory /tmp/g_file_replace_1SXTW2
# Test 48, using temporary directory /tmp/g_file_replace_IWXTW2
ok 26 /file/replace/write-only
# /file/replace/read-write summary: Test various situations for g_file_replace()
# Current umask: 18
# Test 0, using temporary directory /tmp/g_file_replace_EMXTW2
# Test 1, using temporary directory /tmp/g_file_replace_OPXTW2
# Test 2, using temporary directory /tmp/g_file_replace_N6XTW2
# Test 3, using temporary directory /tmp/g_file_replace_1CYTW2
# Test 4, using temporary directory /tmp/g_file_replace_JZXTW2
# Test 5, using temporary directory /tmp/g_file_replace_T4XTW2
# Test 6, using temporary directory /tmp/g_file_replace_ELYTW2
# Test 7, using temporary directory /tmp/g_file_replace_5OYTW2
# Test 8, using temporary directory /tmp/g_file_replace_VEYTW2
# Test 9, using temporary directory /tmp/g_file_replace_CJYTW2
# Test 10, using temporary directory /tmp/g_file_replace_K4KUW2
# Test 11, using temporary directory /tmp/g_file_replace_0ALUW2
# Test 12, using temporary directory /tmp/g_file_replace_NXKUW2
# Test 13, using temporary directory /tmp/g_file_replace_10KUW2
# Test 14, using temporary directory /tmp/g_file_replace_WILUW2
# Test 15, using temporary directory /tmp/g_file_replace_8OLUW2
# Test 16, using temporary directory /tmp/g_file_replace_ADLUW2
# Test 17, using temporary directory /tmp/g_file_replace_LYLUW2
# Test 18, using temporary directory /tmp/g_file_replace_O0LUW2
# Test 19, using temporary directory /tmp/g_file_replace_DQLUW2
# Test 20, using temporary directory /tmp/g_file_replace_PTLUW2
# Test 21, using temporary directory /tmp/g_file_replace_PBMUW2
# Test 22, using temporary directory /tmp/g_file_replace_UFMUW2
# Test 23, using temporary directory /tmp/g_file_replace_N5LUW2
# Test 24, using temporary directory /tmp/g_file_replace_Z8LUW2
# Test 25, using temporary directory /tmp/g_file_replace_QNJUW2
# Test 26, using temporary directory /tmp/g_file_replace_HOJUW2
# Test 27, using temporary directory /tmp/g_file_replace_CDJUW2
# Test 28, using temporary directory /tmp/g_file_replace_1GJUW2
# Test 29, using temporary directory /tmp/g_file_replace_NZJUW2
# Test 30, using temporary directory /tmp/g_file_replace_B3JUW2
# Test 31, using temporary directory /tmp/g_file_replace_4SJUW2
# Test 32, using temporary directory /tmp/g_file_replace_ZWJUW2
# Test 33, using temporary directory /tmp/g_file_replace_7DKUW2
# Test 34, using temporary directory /tmp/g_file_replace_NIKUW2
# Test 35, using temporary directory /tmp/g_file_replace_JJKUW2
# Test 36, using temporary directory /tmp/g_file_replace_Y8JUW2
# Test 37, using temporary directory /tmp/g_file_replace_5SKUW2
# Test 38, using temporary directory /tmp/g_file_replace_LUKUW2
# Test 39, using temporary directory /tmp/g_file_replace_5XKUW2
# Test 40, using temporary directory /tmp/g_file_replace_WPKUW2
# Test 41, using temporary directory /tmp/g_file_replace_Z1HUW2
# Test 42, using temporary directory /tmp/g_file_replace_62HUW2
# Test 43, using temporary directory /tmp/g_file_replace_06HUW2
# Test 44, using temporary directory /tmp/g_file_replace_KWHUW2
# Test 45, using temporary directory /tmp/g_file_replace_J0HUW2
# Test 46, using temporary directory /tmp/g_file_replace_KFIUW2
# Test 47, using temporary directory /tmp/g_file_replace_PHIUW2
# Test 48, using temporary directory /tmp/g_file_replace_5KIUW2
ok 27 /file/replace/read-write
# End of replace tests
# Start of writev tests
ok 28 /file/writev/no-bytes-written
ok 29 /file/writev/no-vectors
ok 30 /file/writev/empty-vectors
ok 31 /file/writev/too-big-vectors
ok 32 /file/writev/async
ok 33 /file/writev/async_all
ok 34 /file/writev/async_all-empty-vectors
ok 35 /file/writev/async_all-no-vectors
ok 36 /file/writev/async_all-to-big-vectors
ok 37 /file/writev/async_all-cancellation
# End of writev tests
# End of file tests
PASS: glib/file.test
Running test: glib/search-utils.test
# random seed: R02S90fb067342bd5263f170bb485f4ab335
# GLib-DEBUG: Current user locale: C
1..6
# Start of search tests
# GLib-DEBUG: Started
# GLib-DEBUG: 'he' - 'Hello World' should match: OK
# GLib-DEBUG: 'wo' - 'Hello World' should match: OK
# GLib-DEBUG: 'lo' - 'Hello World' should NOT match: OK
# GLib-DEBUG: 'ld' - 'Hello World' should NOT match: OK
# GLib-DEBUG: 'wo' - 'Hello-World' should match: OK
# GLib-DEBUG: 'wo' - 'HelloWorld' should NOT match: OK
ok 1 /search/basic
# GLib-DEBUG: Started
# Locale 'sv_SE.UTF-8' is unavailable
# GLib-DEBUG: 'jor' - 'J?rgen' should match: SKIPPED
# GLib-DEBUG: 'gaetan' - 'Gaëtan' should match: OK
# GLib-DEBUG: 'ele' - 'élève' should match: OK
# GLib-DEBUG: 'AzaÏs' - 'Azais' should NOT match: OK
# GLib-DEBUG: 'Azais' - 'AzaÏs' should match: OK
ok 2 /search/composed
# GLib-DEBUG: Started
# Locale 'sv_SE.UTF-8' is unavailable
# GLib-DEBUG: 'Jör' - 'Jorgen' should NOT match: SKIPPED
# Locale 'sv_SE.UTF-8' is unavailable
# GLib-DEBUG: 'jor' - 'Jörgen' should match: SKIPPED
ok 3 /search/decomposed # SKIP No locales for the test set are available
# GLib-DEBUG: Started
# GLib-DEBUG: 'ist' - 'İstanbul' should match: OK
# GLib-DEBUG: 'diyarbakir' - 'Diyarbakır' should match: OK
ok 4 /search/turkish
# GLib-DEBUG: Started
# GLib-DEBUG: 'jor' - 'J?rgen' should match: OK
# GLib-DEBUG: 'Jo?r' - 'Jorgen' should NOT match: OK
# GLib-DEBUG: 'jor' - 'Jo?rgen' should match: OK
ok 5 /search/c_locale_unicode
# GLib-DEBUG: Started
# GLib-DEBUG: 'Xav Cla' - 'Xavier Claessens' should match: OK
# GLib-DEBUG: 'Cla Xav' - 'Xavier Claessens' should match: OK
# GLib-DEBUG: '   b  ' - 'Foo Bar Baz' should match: OK
# GLib-DEBUG: 'bar bazz' - 'Foo Bar Baz' should NOT match: OK
ok 6 /search/multi_words
# End of search tests
PASS: glib/search-utils.test
Running test: glib/gdbus-non-socket.test
# random seed: R02Sb18073a135c9f2c91af1995794ebb3ba
1..1
# Start of gdbus tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/system-config1:/tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/system-data1:/tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-non-socket_F9AUW2/gdbus/non-socket/.dirs/runtime
ok 1 /gdbus/non-socket
# End of gdbus tests
PASS: glib/gdbus-non-socket.test
Running test: glib/queue.test
# random seed: R02Sddb73b10f4f113a4871eff19934c265a
1..12
# Start of queue tests
ok 1 /queue/basic
ok 2 /queue/copy
ok 3 /queue/off-by-one
ok 4 /queue/find-custom
ok 5 /queue/static
ok 6 /queue/clear
ok 7 /queue/free-full
ok 8 /queue/clear-full
ok 9 /queue/insert-sibling-link
ok 10 /queue/push-nth-link
# Start of clear-full tests
ok 11 /queue/clear-full/noop
# End of clear-full tests
# Start of random tests
ok 12 /queue/random/seed:997627617
# End of random tests
# End of queue tests
PASS: glib/queue.test
Running test: glib/gdbus-proxy.test
# random seed: R02S5a9ef4c6c0a5e72e52ba662f02dc6fa1
1..5
# Start of gdbus tests
Executing: glib/gdbus-proxy.test
ok 1 /gdbus/proxy
# Start of proxy tests
ok 2 /gdbus/proxy/no-properties
ok 3 /gdbus/proxy/wellknown-noauto
ok 4 /gdbus/proxy/async
# /gdbus/proxy/no-match-rule summary: Test that G_DBUS_PROXY_FLAGS_NO_MATCH_RULE works
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1109
ok 5 /gdbus/proxy/no-match-rule
# End of proxy tests
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-proxy.test
Running test: glib/mimeapps.test
# random seed: R02S36e7c88d6e86ebc7bece08cac2ad0b3b
1..7
# Start of appinfo tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/data/applications/mimeinfo.cache'
ok 1 /appinfo/all
# Start of mime tests
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/all/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config
ok 2 /appinfo/mime/api
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/mime/api/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config
ok 3 /appinfo/mime/default
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/mime/default/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config
ok 4 /appinfo/mime/file
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/mime/file/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/config
ok 5 /appinfo/mime/scheme-handler
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/mime/scheme-handler/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
# GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config
ok 6 /appinfo/mime/default-last-used
# GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/home
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/cache
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-config1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-config2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/config
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-data1:/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-data2
# GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data
# GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/state
# GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/runtime
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp2.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp3.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp4.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp5.desktop'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/nosuchapp.desktop'
# removing '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeapps.list'
# creating '/tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeinfo.cache'
# GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_O0UKW2/appinfo/mime/default-last-used/.dirs/config to /tmp/test_mimeapps_O0UKW2/appinfo/mime/ignore-nonexisting/.dirs/config
ok 7 /appinfo/mime/ignore-nonexisting
# End of mime tests
# End of appinfo tests
PASS: glib/mimeapps.test
Running test: glib/actions.test
# random seed: R02S78185304ffed13a63d475440828c14a3
1..11
# Start of actions tests
ok 1 /actions/basic
ok 2 /actions/name
ok 3 /actions/simplegroup
ok 4 /actions/stateful
ok 5 /actions/default-activate
ok 6 /actions/entries
ok 7 /actions/parse-detailed
ok 8 /actions/property
# Start of dbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 9 /actions/dbus/export
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
Executing: glib/actions.test
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 10 /actions/dbus/threaded
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 11 /actions/dbus/bug679509
# End of dbus tests
# End of actions tests
PASS: glib/actions.test
Running test: glib/markup.test
# random seed: R02S078eada07fd1a14c9e1f31a396c5399b
1..1
# Start of markup tests
ok 1 /markup/stack
# End of markup tests
PASS: glib/markup.test
Running test: glib/mkenums.py.test
TAP version 13
ok 1 __main__.TestMkenums.test_available_in
# tmpdir: /tmp/tmp8l8wsrl2
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp8l8wsrl2/tmpvc81twf3.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmp8l8wsrl2/tmp_kp9o7id.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp8l8wsrl2/tmp_kp9o7id.template', '/tmp/tmp8l8wsrl2/tmpvc81twf3.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp8l8wsrl2/tmpvc81twf3.h
# basename: tmpvc81twf3.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 2 __main__.TestMkenums.test_deprecated_in
# tmpdir: /tmp/tmp4dkv3w2b
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp4dkv3w2b/tmp0ajj2s3q.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmp4dkv3w2b/tmpnqdrgoga.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp4dkv3w2b/tmpnqdrgoga.template', '/tmp/tmp4dkv3w2b/tmp0ajj2s3q.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp4dkv3w2b/tmp0ajj2s3q.h
# basename: tmp0ajj2s3q.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 3 __main__.TestMkenums.test_deprecated_in_for
# tmpdir: /tmp/tmpy81hotp2
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpy81hotp2/tmp0anqwsgs.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR(G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER2) = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmpy81hotp2/tmplmvoy0go.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpy81hotp2/tmplmvoy0go.template', '/tmp/tmpy81hotp2/tmp0anqwsgs.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpy81hotp2/tmp0anqwsgs.h
# basename: tmp0anqwsgs.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 4 __main__.TestMkenums.test_empty_header
# tmpdir: /tmp/tmp0g3tihi8
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp0g3tihi8/tmpxt_9xu2o.h: 
# /tmp/tmp0g3tihi8/tmpex6bj6z_.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp0g3tihi8/tmpex6bj6z_.template', '/tmp/tmp0g3tihi8/tmpxt_9xu2o.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-tail
# 
# comment
# comment: Generated data ends here
ok 5 __main__.TestMkenums.test_empty_template
# tmpdir: /tmp/tmpapl_qd40
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpapl_qd40/tmp3t61utpw.template: 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpapl_qd40/tmp3t61utpw.template']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 6 __main__.TestMkenums.test_enum_name
# tmpdir: /tmp/tmpxfm1e2am
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpxfm1e2am/tmp7yx42x66.h: 
#         typedef enum _SomeEnumIdentifier {
#           ENUM_VALUE
#         } SomeEnumIdentifier;
#         
# /tmp/tmpxfm1e2am/tmpya0nd4el.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpxfm1e2am/tmpya0nd4el.template', '/tmp/tmpxfm1e2am/tmp7yx42x66.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpxfm1e2am/tmp7yx42x66.h
# basename: tmp7yx42x66.h
# enumeration-production
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE
# valuenick: value
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 7 __main__.TestMkenums.test_enum_private_public
# tmpdir: /tmp/tmp58164myb
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp58164myb/tmp8z1_y6vm.h: 
#         typedef enum {
#           ENUM_VALUE_PUBLIC1,
#           /*< private >*/
#           ENUM_VALUE_PRIVATE,
#         } SomeEnumA
#         
# /tmp/tmp58164myb/tmpsbul6jrt.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp58164myb/tmpsbul6jrt.template', '/tmp/tmp58164myb/tmp8z1_y6vm.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp58164myb/tmp8z1_y6vm.h
# basename: tmp8z1_y6vm.h
# enumeration-production
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE_PUBLIC1
# valuenick: public1
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
# /tmp/tmp58164myb/tmpvlcijgqd.h: 
#         typedef enum {
#           /*< private >*/
#           ENUM_VALUE_PRIVATE,
#           /*< public >*/
#           ENUM_VALUE_PUBLIC2,
#         } SomeEnumB;
#         
# /tmp/tmp58164myb/tmpj3mre39_.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp58164myb/tmpj3mre39_.template', '/tmp/tmp58164myb/tmpvlcijgqd.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp58164myb/tmpvlcijgqd.h
# basename: tmpvlcijgqd.h
# enumeration-production
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE_PUBLIC2
# valuenick: public2
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 8 __main__.TestMkenums.test_filename_basename_in_fhead_ftail
# tmpdir: /tmp/tmpk_5nx7rb
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpk_5nx7rb/tmpoppmzi6a.template: 
# /*** BEGIN file-header ***/
# file-header
# filename: @filename@
# basename: @basename@
# /*** END file-header ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# filename: @filename@
# basename: @basename@
# /*** END file-tail ***/
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpk_5nx7rb/tmpoppmzi6a.template']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# filename: @filename@
# basename: @basename@
# file-tail
# filename: @filename@
# basename: @basename@
# 
# comment
# comment: Generated data ends here
ok 9 __main__.TestMkenums.test_help
# tmpdir: /tmp/tmpm_97t96f
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# Running: ['/usr/bin/glib-mkenums', '--help']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX]
#                     [--symbol-prefix SYMPREFIX] [--fhead FHEAD]
#                     [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD]
#                     [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL]
#                     [--comments COMMENT_TMPL] [--template TEMPLATE]
#                     [--output OUTPUT] [--version]
#                     [args ...]
# 
# positional arguments:
#   args                  One or more input files, or a single argument
#                         @rspfile_path pointing to a file that contains the
#                         actual arguments
# 
# options:
#   -h, --help            show this help message and exit
#   --identifier-prefix IDPREFIX
#                         Identifier prefix
#   --symbol-prefix SYMPREFIX
#                         Symbol prefix
#   --fhead FHEAD         Output file header
#   --ftail FTAIL         Output file footer
#   --fprod FPROD         Put out TEXT every time a new input file is being
#                         processed.
#   --eprod EPROD         Per enum text, produced prior to value iterations
#   --vhead VHEAD         Value header, produced before iterating over enum
#                         values
#   --vprod VPROD         Value text, produced for each enum value.
#   --vtail VTAIL         Value tail, produced after iterating over enum values
#   --comments COMMENT_TMPL
#                         Comment structure
#   --template TEMPLATE   Template file
#   --output OUTPUT
#   --version, -v         Print version information
# 
# Production text substitutions:
#   @EnumName@            PrefixTheXEnum
#   @enum_name@           prefix_the_xenum
#   @ENUMNAME@            PREFIX_THE_XENUM
#   @ENUMSHORT@           THE_XENUM
#   @ENUMPREFIX@          PREFIX
#   @enumsince@           the user-provided since value given
#   @VALUENAME@           PREFIX_THE_XVALUE
#   @valuenick@           the-xvalue
#   @valuenum@            the integer value (limited support, Since: 2.26)
#   @type@                either enum or flags
#   @Type@                either Enum or Flags
#   @TYPE@                either ENUM or FLAGS
#   @filename@            name of current input file
#   @basename@            base name of the current input file (Since: 2.22)
ok 10 __main__.TestMkenums.test_no_args
# tmpdir: /tmp/tmplyemng3n
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# Running: ['/usr/bin/glib-mkenums']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 11 __main__.TestMkenums.test_no_headers
# tmpdir: /tmp/tmpxunl0lwx
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpxunl0lwx/tmpa6_8njts.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpxunl0lwx/tmpa6_8njts.template']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-tail
# 
# comment
# comment: Generated data ends here
ok 12 __main__.TestMkenums.test_no_nick
# tmpdir: /tmp/tmpbvbc30cx
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpbvbc30cx/tmpkyohx2o4.h: 
#         typedef enum {
#           GEGL_SAMPLER_NEAREST = 0,   /*< desc="nearest"      >*/
#         } GeglSamplerType;
#         
# /tmp/tmpbvbc30cx/tmpi2_3hox9.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpbvbc30cx/tmpi2_3hox9.template', '/tmp/tmpbvbc30cx/tmpkyohx2o4.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpbvbc30cx/tmpkyohx2o4.h
# basename: tmpkyohx2o4.h
# enumeration-production
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: GEGL_SAMPLER_NEAREST
# valuenick: nearest
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 13 __main__.TestMkenums.test_non_utf8_encoding
# tmpdir: /tmp/tmpsvs_b5vp
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpsvs_b5vp/tmp08rada00.h: 
#         /* Copyright © La Peña */
#         typedef enum {
#           ENUM_VALUE
#         } SomeEnumIdentifier;
#         
# /tmp/tmpsvs_b5vp/tmpv5pslcrl.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpsvs_b5vp/tmpv5pslcrl.template', '/tmp/tmpsvs_b5vp/tmp08rada00.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpsvs_b5vp/tmp08rada00.h
# basename: tmp08rada00.h
# enumeration-production
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE
# valuenick: value
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 14 __main__.TestMkenums.test_reproducible
# tmpdir: /tmp/tmpi521w797
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpi521w797/tmpyz_huvob.template: template
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpi521w797/tmpyz_huvob.template', '/tmp/tmpi521w797/tmpgq3l1wb61.h', '/tmp/tmpi521w797/tmp6omckf172.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
# /tmp/tmpi521w797/tmp294g42jf.template: template
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpi521w797/tmp294g42jf.template', '/tmp/tmpi521w797/tmp6omckf172.h', '/tmp/tmpi521w797/tmpgq3l1wb61.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 15 __main__.TestMkenums.test_since
# tmpdir: /tmp/tmpfapzw213
# rspfile: False, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpfapzw213/tmpgzzg2euj.h: 
#         typedef enum { /*< since=1.0 >*/
#             QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0,
#         } QmiWmsMessageProtocol;
#         
# /tmp/tmpfapzw213/tmp14yf0azr.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpfapzw213/tmp14yf0azr.template', '/tmp/tmpfapzw213/tmpgzzg2euj.h']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpfapzw213/tmpgzzg2euj.h
# basename: tmpgzzg2euj.h
# enumeration-production
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA
# valuenick: cdma
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 16 __main__.TestRspMkenums.test_available_in
# tmpdir: /tmp/tmpb0rcnjb1
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpb0rcnjb1/tmpn24ca4nv.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmpb0rcnjb1/tmpuc40sit3.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpb0rcnjb1/tmpuc40sit3.template /tmp/tmpb0rcnjb1/tmpn24ca4nv.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpb0rcnjb1/tmpzewl50hh']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpb0rcnjb1/tmpn24ca4nv.h
# basename: tmpn24ca4nv.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 17 __main__.TestRspMkenums.test_deprecated_in
# tmpdir: /tmp/tmp3d8ld20u
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp3d8ld20u/tmpqqg6z1t0.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmp3d8ld20u/tmpcys_hdkm.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmp3d8ld20u/tmpcys_hdkm.template /tmp/tmp3d8ld20u/tmpqqg6z1t0.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3d8ld20u/tmpzm6bkewo']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp3d8ld20u/tmpqqg6z1t0.h
# basename: tmpqqg6z1t0.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 18 __main__.TestRspMkenums.test_deprecated_in_for
# tmpdir: /tmp/tmplwxj0qe8
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmplwxj0qe8/tmpvcrmk5rz.h: 
#         typedef enum {
#           G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR(G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER2) = (1<<2)
#         } GDBusServerFlags;
#         
# /tmp/tmplwxj0qe8/tmpankc1xdn.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmplwxj0qe8/tmpankc1xdn.template /tmp/tmplwxj0qe8/tmpvcrmk5rz.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmplwxj0qe8/tmprdkg5y42']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmplwxj0qe8/tmpvcrmk5rz.h
# basename: tmpvcrmk5rz.h
# enumeration-production
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-header
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-production
# VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
# valuenick: user
# valuenum: 4
# type: flags
# Type: Flags
# TYPE: FLAGS
# value-tail
# EnumName: GDBusServerFlags
# enum_name: g_dbus_server_flags
# ENUMNAME: G_DBUS_SERVER_FLAGS
# ENUMSHORT: DBUS_SERVER_FLAGS
# ENUMPREFIX: G
# enumsince: 
# type: flags
# Type: Flags
# TYPE: FLAGS
# file-tail
# 
# comment
# comment: Generated data ends here
ok 19 __main__.TestRspMkenums.test_empty_header
# tmpdir: /tmp/tmpja4s2qhw
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpja4s2qhw/tmpcis8_y3f.h: 
# /tmp/tmpja4s2qhw/tmpna2rv8qt.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpja4s2qhw/tmpna2rv8qt.template /tmp/tmpja4s2qhw/tmpcis8_y3f.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpja4s2qhw/tmpju4uq1kx']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-tail
# 
# comment
# comment: Generated data ends here
ok 20 __main__.TestRspMkenums.test_empty_template
# tmpdir: /tmp/tmpfgbbky5w
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpfgbbky5w/tmpwiidr74t.template: 
# Response file contains: --template /tmp/tmpfgbbky5w/tmpwiidr74t.template
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpfgbbky5w/tmp8wydfrp3']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 21 __main__.TestRspMkenums.test_enum_name
# tmpdir: /tmp/tmphfm1zrfn
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmphfm1zrfn/tmp1lxtyk7v.h: 
#         typedef enum _SomeEnumIdentifier {
#           ENUM_VALUE
#         } SomeEnumIdentifier;
#         
# /tmp/tmphfm1zrfn/tmputxbgs75.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmphfm1zrfn/tmputxbgs75.template /tmp/tmphfm1zrfn/tmp1lxtyk7v.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmphfm1zrfn/tmpivde_e21']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmphfm1zrfn/tmp1lxtyk7v.h
# basename: tmp1lxtyk7v.h
# enumeration-production
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE
# valuenick: value
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 22 __main__.TestRspMkenums.test_enum_private_public
# tmpdir: /tmp/tmpqrj4ep2r
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpqrj4ep2r/tmp00dn9ibz.h: 
#         typedef enum {
#           ENUM_VALUE_PUBLIC1,
#           /*< private >*/
#           ENUM_VALUE_PRIVATE,
#         } SomeEnumA
#         
# /tmp/tmpqrj4ep2r/tmp7zomocq4.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpqrj4ep2r/tmp7zomocq4.template /tmp/tmpqrj4ep2r/tmp00dn9ibz.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpqrj4ep2r/tmpw54x009l']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpqrj4ep2r/tmp00dn9ibz.h
# basename: tmp00dn9ibz.h
# enumeration-production
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE_PUBLIC1
# valuenick: public1
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumA
# enum_name: some_enum_a
# ENUMNAME: SOME_ENUM_A
# ENUMSHORT: ENUM_A
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
# /tmp/tmpqrj4ep2r/tmp0iyfawr0.h: 
#         typedef enum {
#           /*< private >*/
#           ENUM_VALUE_PRIVATE,
#           /*< public >*/
#           ENUM_VALUE_PUBLIC2,
#         } SomeEnumB;
#         
# /tmp/tmpqrj4ep2r/tmpro5wsc9g.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpqrj4ep2r/tmpro5wsc9g.template /tmp/tmpqrj4ep2r/tmp0iyfawr0.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpqrj4ep2r/tmptmxebih9']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpqrj4ep2r/tmp0iyfawr0.h
# basename: tmp0iyfawr0.h
# enumeration-production
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE_PUBLIC2
# valuenick: public2
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumB
# enum_name: some_enum_b
# ENUMNAME: SOME_ENUM_B
# ENUMSHORT: ENUM_B
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 23 __main__.TestRspMkenums.test_filename_basename_in_fhead_ftail
# tmpdir: /tmp/tmp3q7oyege
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp3q7oyege/tmpsgr_z0hg.template: 
# /*** BEGIN file-header ***/
# file-header
# filename: @filename@
# basename: @basename@
# /*** END file-header ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# filename: @filename@
# basename: @basename@
# /*** END file-tail ***/
# Response file contains: --template /tmp/tmp3q7oyege/tmpsgr_z0hg.template
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3q7oyege/tmpe9yp2_un']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# filename: @filename@
# basename: @basename@
# file-tail
# filename: @filename@
# basename: @basename@
# 
# comment
# comment: Generated data ends here
ok 24 __main__.TestRspMkenums.test_help
# tmpdir: /tmp/tmp8ec6tgsu
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# Response file contains: --help
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp8ec6tgsu/tmpdcdqgvzh']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX]
#                     [--symbol-prefix SYMPREFIX] [--fhead FHEAD]
#                     [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD]
#                     [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL]
#                     [--comments COMMENT_TMPL] [--template TEMPLATE]
#                     [--output OUTPUT] [--version]
#                     [args ...]
# 
# positional arguments:
#   args                  One or more input files, or a single argument
#                         @rspfile_path pointing to a file that contains the
#                         actual arguments
# 
# options:
#   -h, --help            show this help message and exit
#   --identifier-prefix IDPREFIX
#                         Identifier prefix
#   --symbol-prefix SYMPREFIX
#                         Symbol prefix
#   --fhead FHEAD         Output file header
#   --ftail FTAIL         Output file footer
#   --fprod FPROD         Put out TEXT every time a new input file is being
#                         processed.
#   --eprod EPROD         Per enum text, produced prior to value iterations
#   --vhead VHEAD         Value header, produced before iterating over enum
#                         values
#   --vprod VPROD         Value text, produced for each enum value.
#   --vtail VTAIL         Value tail, produced after iterating over enum values
#   --comments COMMENT_TMPL
#                         Comment structure
#   --template TEMPLATE   Template file
#   --output OUTPUT
#   --version, -v         Print version information
# 
# Production text substitutions:
#   @EnumName@            PrefixTheXEnum
#   @enum_name@           prefix_the_xenum
#   @ENUMNAME@            PREFIX_THE_XENUM
#   @ENUMSHORT@           THE_XENUM
#   @ENUMPREFIX@          PREFIX
#   @enumsince@           the user-provided since value given
#   @VALUENAME@           PREFIX_THE_XVALUE
#   @valuenick@           the-xvalue
#   @valuenum@            the integer value (limited support, Since: 2.26)
#   @type@                either enum or flags
#   @Type@                either Enum or Flags
#   @TYPE@                either ENUM or FLAGS
#   @filename@            name of current input file
#   @basename@            base name of the current input file (Since: 2.22)
ok 25 __main__.TestRspMkenums.test_no_args
# tmpdir: /tmp/tmpym24pl3u
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# Response file contains: 
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpym24pl3u/tmpo5v8jlq4']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 26 __main__.TestRspMkenums.test_no_headers
# tmpdir: /tmp/tmpy54bolix
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpy54bolix/tmpifg3klax.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpy54bolix/tmpifg3klax.template
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpy54bolix/tmpevj8cwt3']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-tail
# 
# comment
# comment: Generated data ends here
ok 27 __main__.TestRspMkenums.test_no_nick
# tmpdir: /tmp/tmp2cbq1uc8
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp2cbq1uc8/tmpnwkt43u2.h: 
#         typedef enum {
#           GEGL_SAMPLER_NEAREST = 0,   /*< desc="nearest"      >*/
#         } GeglSamplerType;
#         
# /tmp/tmp2cbq1uc8/tmputjhj862.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmp2cbq1uc8/tmputjhj862.template /tmp/tmp2cbq1uc8/tmpnwkt43u2.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp2cbq1uc8/tmpiq6ngfkh']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp2cbq1uc8/tmpnwkt43u2.h
# basename: tmpnwkt43u2.h
# enumeration-production
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: GEGL_SAMPLER_NEAREST
# valuenick: nearest
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: GeglSamplerType
# enum_name: gegl_sampler_type
# ENUMNAME: GEGL_SAMPLER_TYPE
# ENUMSHORT: SAMPLER_TYPE
# ENUMPREFIX: GEGL
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 28 __main__.TestRspMkenums.test_non_utf8_encoding
# tmpdir: /tmp/tmp8gap0htk
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp8gap0htk/tmpwjlimxzi.h: 
#         /* Copyright © La Peña */
#         typedef enum {
#           ENUM_VALUE
#         } SomeEnumIdentifier;
#         
# /tmp/tmp8gap0htk/tmp0z51dcfh.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmp8gap0htk/tmp0z51dcfh.template /tmp/tmp8gap0htk/tmpwjlimxzi.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp8gap0htk/tmpmzodd_gf']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmp8gap0htk/tmpwjlimxzi.h
# basename: tmpwjlimxzi.h
# enumeration-production
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: ENUM_VALUE
# valuenick: value
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: SomeEnumIdentifier
# enum_name: some_enum_identifier
# ENUMNAME: SOME_ENUM_IDENTIFIER
# ENUMSHORT: ENUM_IDENTIFIER
# ENUMPREFIX: SOME
# enumsince: 
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
ok 29 __main__.TestRspMkenums.test_reproducible
# tmpdir: /tmp/tmp28z_9h6v
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmp28z_9h6v/tmp3zobv94c.template: template
# Response file contains: --template /tmp/tmp28z_9h6v/tmp3zobv94c.template /tmp/tmp28z_9h6v/tmplm8oez291.h /tmp/tmp28z_9h6v/tmpsne3p90r2.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp28z_9h6v/tmpvzx9kj7d']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
# /tmp/tmp28z_9h6v/tmpnrd_1xlz.template: template
# Response file contains: --template /tmp/tmp28z_9h6v/tmpnrd_1xlz.template /tmp/tmp28z_9h6v/tmpsne3p90r2.h /tmp/tmp28z_9h6v/tmplm8oez291.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp28z_9h6v/tmp8ioghy_r']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: /* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */
# 
# 
# /* Generated data ends here */
ok 30 __main__.TestRspMkenums.test_since
# tmpdir: /tmp/tmpdyz77nbf
# rspfile: True, mkenums: /usr/bin/glib-mkenums
# /tmp/tmpdyz77nbf/tmpulvp9nk3.h: 
#         typedef enum { /*< since=1.0 >*/
#             QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0,
#         } QmiWmsMessageProtocol;
#         
# /tmp/tmpdyz77nbf/tmp6vu1oj4b.template: 
# /*** BEGIN file-header ***/
# file-header
# /*** END file-header ***/
# 
# /*** BEGIN file-production ***/
# file-production
# filename: @filename@
# basename: @basename@
# /*** END file-production ***/
# 
# /*** BEGIN enumeration-production ***/
# enumeration-production
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END enumeration-production ***/
# 
# /*** BEGIN value-header ***/
# value-header
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-header ***/
# 
# /*** BEGIN value-production ***/
# value-production
# VALUENAME: @VALUENAME@
# valuenick: @valuenick@
# valuenum: @valuenum@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-production ***/
# 
# /*** BEGIN value-tail ***/
# value-tail
# EnumName: @EnumName@
# enum_name: @enum_name@
# ENUMNAME: @ENUMNAME@
# ENUMSHORT: @ENUMSHORT@
# ENUMPREFIX: @ENUMPREFIX@
# enumsince: @enumsince@
# type: @type@
# Type: @Type@
# TYPE: @TYPE@
# /*** END value-tail ***/
# 
# /*** BEGIN comment ***/
# comment
# comment: @comment@
# /*** END comment ***/
# 
# /*** BEGIN file-tail ***/
# file-tail
# /*** END file-tail ***/
# 
# Response file contains: --template /tmp/tmpdyz77nbf/tmp6vu1oj4b.template /tmp/tmpdyz77nbf/tmpulvp9nk3.h
# Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpdyz77nbf/tmp0tb1gr92']
# Environment: {'SHELL': '/bin/sh', 'PWD': '/usr/lib/glib-2.0/ptest', 'LOGNAME': 'glib2-test', '_': '/usr/bin/gnome-desktop-testing-runner', 'HOME': '/home/glib2-test', 'SSH_CONNECTION': '192.168.7.1 59834 192.168.7.2 22', 'USER': 'glib2-test', 'SHLVL': '1', 'SSH_CLIENT': '192.168.7.1 59834 22', 'PATH': '/bin:/usr/bin', 'MAIL': '/var/mail/root', 'GIO_USE_VFS': 'local', 'LC_ALL': 'C.UTF-8'}
# Output: comment
# comment: This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses.
# 
# 
# file-header
# file-production
# filename: /tmp/tmpdyz77nbf/tmpulvp9nk3.h
# basename: tmpulvp9nk3.h
# enumeration-production
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-header
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-production
# VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA
# valuenick: cdma
# valuenum: 0
# type: enum
# Type: Enum
# TYPE: ENUM
# value-tail
# EnumName: QmiWmsMessageProtocol
# enum_name: qmi_wms_message_protocol
# ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL
# ENUMSHORT: WMS_MESSAGE_PROTOCOL
# ENUMPREFIX: QMI
# enumsince: 1.0
# type: enum
# Type: Enum
# TYPE: ENUM
# file-tail
# 
# comment
# comment: Generated data ends here
1..30
PASS: glib/mkenums.py.test
Running test: glib/properties3.test
START: /usr/libexec/installed-tests/glib/properties3
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.bExecuting: glib/properties3.test
.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b
stopping
stopped
42136794 676678
PASS: glib/properties3.test
Running test: glib/enums.test
# random seed: R02Sfd454e3d2914e71acc583e49d04a09e3
1..2
# Start of enum tests
ok 1 /enum/basic
# End of enum tests
# Start of flags tests
ok 2 /flags/basic
# End of flags tests
PASS: glib/enums.test
Running test: glib/proxy-test.test
# random seed: R02Sed5cca302ecb8665bd092c1986f7e386
1..11
# Start of proxy tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestProxyResolver) for ?gio-proxy-resolver?
ok 1 /proxy/direct_sync
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 2 /proxy/direct_async
ok 3 /proxy/single_sync
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 4 /proxy/single_async
ok 5 /proxy/multiple_sync
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 6 /proxy/multiple_async
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597
ok 7 /proxy/invalid-uris-sync
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 8 /proxy/invalid-uris-async
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: IPv6 DNS error: Not found
# GLib-GIO-DEBUG: IPv4 DNS error: Not found
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Not found
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Not found
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null)
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 9 /proxy/dns
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null)
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
# GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Starting proxy connection
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses)
# GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null)
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol
ok 10 /proxy/override
ok 11 /proxy/enumerator-ports
# End of proxy tests
PASS: glib/proxy-test.test
Running test: glib/thread-pool.test
# random seed: R02S0f67199316a5bb0ab5b9cec57e8ad91e
1..5
# Start of thread_pool tests
# /thread_pool/shared summary: Tests that a shared, non-exclusive thread pool generally works.
ok 1 /thread_pool/shared
# /thread_pool/exclusive summary: Tests that an exclusive thread pool generally works.
ok 2 /thread_pool/exclusive
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012
# /thread_pool/create_shared_after_exclusive summary: Tests that creating a shared pool after an exclusive one works.
ok 3 /thread_pool/create_shared_after_exclusive
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/121
ok 4 /thread_pool/create_full
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012
# /thread_pool/create_exclusive_after_shared summary: Tests that creating an exclusive pool after a shared one works.
ok 5 /thread_pool/create_exclusive_after_shared
# End of thread_pool tests
PASS: glib/thread-pool.test
Running test: glib/bindinggroup.test
# random seed: R02S63e3cb2313699eb9f1ede075d25ca44c
1..11
# Start of GObject tests
# Start of BindingGroup tests
ok 1 /GObject/BindingGroup/invalid
ok 2 /GObject/BindingGroup/default
ok 3 /GObject/BindingGroup/bidirectional
ok 4 /GObject/BindingGroup/transform
ok 5 /GObject/BindingGroup/transform-closures
ok 6 /GObject/BindingGroup/same-object
ok 7 /GObject/BindingGroup/weak-ref-source
ok 8 /GObject/BindingGroup/weak-ref-target
ok 9 /GObject/BindingGroup/properties
ok 10 /GObject/BindingGroup/weak-notify-no-bindings
ok 11 /GObject/BindingGroup/empty-closures
# End of BindingGroup tests
# End of GObject tests
PASS: glib/bindinggroup.test
Running test: glib/option-context.test
# random seed: R02Sd671bd4673828c7c18b9cdaabe1c91e2
1..57
# Start of option tests
ok 1 /option/basic
ok 2 /option/translate
ok 3 /option/strict-posix
# Start of help tests
ok 4 /option/help/options
ok 5 /option/help/no-options
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=697652
ok 6 /option/help/no-help-options
# End of help tests
# Start of group tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=504142
ok 7 /option/group/captions
ok 8 /option/group/main
ok 9 /option/group/error-hook
ok 10 /option/group/parse
# Start of captions tests
# Start of subprocess tests
# End of subprocess tests
# End of captions tests
# End of group tests
# Start of restoration tests
ok 11 /option/restoration/int
ok 12 /option/restoration/string
ok 13 /option/restoration/boolean
# End of restoration tests
# Start of arg tests
ok 14 /option/arg/reverse-string
ok 15 /option/arg/optional-int
# Start of repetition tests
ok 16 /option/arg/repetition/int
ok 17 /option/arg/repetition/string
ok 18 /option/arg/repetition/filename
ok 19 /option/arg/repetition/double
ok 20 /option/arg/repetition/locale
ok 21 /option/arg/repetition/int64
# End of repetition tests
# Start of array tests
ok 22 /option/arg/array/string
# End of array tests
# Start of callback tests
ok 23 /option/arg/callback/string
ok 24 /option/arg/callback/count
ok 25 /option/arg/callback/optional1
ok 26 /option/arg/callback/optional2
ok 27 /option/arg/callback/optional3
ok 28 /option/arg/callback/optional4
ok 29 /option/arg/callback/optional5
ok 30 /option/arg/callback/optional6
ok 31 /option/arg/callback/optional7
ok 32 /option/arg/callback/optional8
# End of callback tests
# Start of remaining tests
ok 33 /option/arg/remaining/callback
ok 34 /option/arg/remaining/callback-false
ok 35 /option/arg/remaining/non-option
ok 36 /option/arg/remaining/separator
ok 37 /option/arg/remaining/array
# End of remaining tests
# Start of ignore tests
ok 38 /option/arg/ignore/long
ok 39 /option/arg/ignore/short
ok 40 /option/arg/ignore/arg
# End of ignore tests
# Start of rest tests
ok 41 /option/arg/rest/non-option
ok 42 /option/arg/rest/separator1
ok 43 /option/arg/rest/separator2
ok 44 /option/arg/rest/separator3
ok 45 /option/arg/rest/separator4
ok 46 /option/arg/rest/separator5
# End of rest tests
# End of arg tests
# Start of context tests
ok 47 /option/context/add
ok 48 /option/context/empty2
ok 49 /option/context/empty3
# End of context tests
# Start of bug tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=166609
ok 50 /option/bug/unknown-short
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=168008
ok 51 /option/bug/lonely-dash
ok 52 /option/bug/triple-dash
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=305576
ok 53 /option/bug/missing-arg
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=577638
ok 54 /option/bug/dash-arg
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=729563
ok 55 /option/bug/short-remaining
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=646926
ok 56 /option/bug/double-free
ok 57 /option/bug/double-zero
# End of bug tests
# End of option tests
PASS: glib/option-context.test
Running test: glib/threadtests.test
# random seed: R02Se78e3d34891fce2b1743068cd5ae9702
1..4
# Start of GObject tests
ok 1 /GObject/threaded-object-init
ok 2 /GObject/threaded-weak-ref
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2394
# /GObject/threaded-toggle-notify summary: Test that toggle reference notifications can be changed safely from another (the main) thread without causing the notifying thread to abort
Executing: glib/threadtests.test
ok 3 /GObject/threaded-toggle-notify
# Start of threaded-weak-ref tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390
# /GObject/threaded-weak-ref/on-finalization summary: Test that a weak ref added by another thread during dispose of a GObject is cleared during finalisation. Use on_weak_ref_disposed() to synchronize the other thread with the dispose vfunc.
ok 4 /GObject/threaded-weak-ref/on-finalization
# End of threaded-weak-ref tests
# End of GObject tests
PASS: glib/threadtests.test
Running test: glib/gdbus-proxy-threads.test
# random seed: R02Scfc9be7b9bc98c444cc447474b9cbfca
1..1
# Start of gdbus tests
# Start of proxy tests
ok 1 /gdbus/proxy/vs-threads
# End of proxy tests
# End of gdbus tests
cleaning up pid 22885
PASS: glib/gdbus-proxy-threads.test
Running test: glib/permission.test
# random seed: R02S339a6780027dddc7fba538b43fbd1cb5
1..1
# Start of permission tests
ok 1 /permission/simple
# End of permission tests
PASS: glib/permission.test
Running test: glib/readwrite.test
# random seed: R02Sa0d541a719c7594dd4dfad5da53a21e7
1..3
# Start of readwrite tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 1 /readwrite/test_g_file_open_readwrite
ok 2 /readwrite/test_g_file_create_readwrite
ok 3 /readwrite/test_g_file_replace_readwrite
# End of readwrite tests
PASS: glib/readwrite.test
Running test: glib/gutils-user-database.test
# random seed: R02S875211991fa616b0a412e1e6e30c6091
1..1
# Start of gutils tests
ok 1 /gutils/get_user_database_entry
# End of gutils tests
PASS: glib/gutils-user-database.test
Running test: glib/gdbus-peer-object-manager.test
# random seed: R02S400f2f5a42a29f9fcaa1ec8f311d993c
1..2
# Start of gdbus tests
# Start of peer-object-manager tests
ok 1 /gdbus/peer-object-manager/normal
ok 2 /gdbus/peer-object-manager/root
# End of peer-object-manager tests
# End of gdbus tests
PASS: glib/gdbus-peer-object-manager.test
Running test: glib/signal2.test
START: /usr/libexec/installed-tests/glib/signal2
init 0x55b2f3c62a00
init 0x55b2f3c62a20
.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Executing: glib/signal2.test
.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
stopping
stopped
dispose 0x55b2f3c62a00!
dispose 0x55b2f3c62a20!
PASS: glib/signal2.test
Running test: glib/buffered-output-stream.test
# random seed: R02Sfda7b6c2cad8f8f6ffe211616cb81770
1..5
# Start of buffered-output-stream tests
ok 1 /buffered-output-stream/write
ok 2 /buffered-output-stream/grow
ok 3 /buffered-output-stream/seek
ok 4 /buffered-output-stream/truncate
# End of buffered-output-stream tests
# Start of filter-output-stream tests
ok 5 /filter-output-stream/close
# End of filter-output-stream tests
PASS: glib/buffered-output-stream.test
Running test: glib/gdbus-introspection.test
# random seed: R02S20964f6b35dbeeed24d5e8ccb039447a
1..4
# Start of gdbus tests
ok 1 /gdbus/introspection-parser
ok 2 /gdbus/introspection-generate
ok 3 /gdbus/introspection-default-direction
ok 4 /gdbus/introspection-extra-data
# End of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
PASS: glib/gdbus-introspection.test
Running test: glib/list.test
# random seed: R02Sb9889dbc04f25167976cc3341ce3948d
1..20
# Start of list tests
ok 1 /list/sort
ok 2 /list/sort-with-data
ok 3 /list/insert-before-link
ok 4 /list/insert-sorted
ok 5 /list/insert-sorted-with-data
ok 6 /list/reverse
ok 7 /list/nth
ok 8 /list/concat
ok 9 /list/remove
ok 10 /list/remove-all
ok 11 /list/first-last
ok 12 /list/insert
ok 13 /list/free-full
ok 14 /list/copy
ok 15 /list/copy-deep
ok 16 /list/delete-link
ok 17 /list/prepend
ok 18 /list/position
ok 19 /list/double-free
# Start of sort tests
ok 20 /list/sort/stable
# End of sort tests
# End of list tests
PASS: glib/list.test
Running test: glib/test-printf.test
# random seed: R02S7d969479adcc27a1289ef18e03691f08
1..21
# Start of snprintf tests
ok 1 /snprintf/retval-and-trunc
ok 2 /snprintf/%d
ok 3 /snprintf/%d-invalid
ok 4 /snprintf/%o
ok 5 /snprintf/%u
ok 6 /snprintf/%x
ok 7 /snprintf/%X
ok 8 /snprintf/%f
ok 9 /snprintf/%e
ok 10 /snprintf/%c
ok 11 /snprintf/%s
ok 12 /snprintf/%n
ok 13 /snprintf/test-percent
ok 14 /snprintf/test-positional-params
ok 15 /snprintf/test-64bit
# End of snprintf tests
# Start of printf tests
ok 16 /printf/test-percent
ok 17 /printf/test-positional-params
ok 18 /printf/test-64bit
# Start of test-64bit tests
# Start of subprocess tests
# End of subprocess tests
# End of test-64bit tests
# End of printf tests
# Start of sprintf tests
ok 19 /sprintf/test-positional-params
ok 20 /sprintf/upper-bound
# End of sprintf tests
# Start of vasprintf tests
# /vasprintf/invalid-format-placeholder summary: Test error handling for invalid format placeholder in g_vasprintf()
ok 21 /vasprintf/invalid-format-placeholder
# End of vasprintf tests
PASS: glib/test-printf.test
Running test: glib/sequence.test
# random seed: R02Sb5d63b47f7c52174a810ef2412180b74
1..16
# Start of sequence tests
ok 1 /sequence/out-of-range-jump
ok 2 /sequence/iter-move
ok 3 /sequence/insert-sorted-non-pointer
ok 4 /sequence/stable-sort
ok 5 /sequence/is_empty
# Start of random tests
ok 6 /sequence/random/seed:825541564
ok 7 /sequence/random/seed:801678400
ok 8 /sequence/random/seed:1477639090
ok 9 /sequence/random/seed:3369132895
ok 10 /sequence/random/seed:1192944867
ok 11 /sequence/random/seed:770458294
Executing: glib/sequence.test
ok 12 /sequence/random/seed:1099575817
ok 13 /sequence/random/seed:590523467
ok 14 /sequence/random/seed:3583571454
ok 15 /sequence/random/seed:579241222
ok 16 /sequence/random/seed:2107024623
# End of random tests
# End of sequence tests
PASS: glib/sequence.test
Running test: glib/simple-proxy.test
# random seed: R02Sf4779af6e32210fbbd5b53e7580923d1
1..3
# Start of static-proxy tests
ok 1 /static-proxy/uri
ok 2 /static-proxy/socks
ok 3 /static-proxy/ignore
# End of static-proxy tests
PASS: glib/simple-proxy.test
Running test: glib/volumemonitor.test
# random seed: R02S50b54148810eb0e5141052e3e24a2c7a
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
1..3
# Start of volumemonitor tests
ok 1 /volumemonitor/connected_drives
ok 2 /volumemonitor/volumes
ok 3 /volumemonitor/mounts
# End of volumemonitor tests
PASS: glib/volumemonitor.test
Running test: glib/properties2.test
START: /usr/libexec/installed-tests/glib/properties2
init 0x55fb5902f800
....................................................................................................dispose 0x55fb5902f800!
PASS: glib/properties2.test
Running test: glib/markup-escape.test
# random seed: R02S373b5c2b510a27b2cff52ea4f488fda9
1..41
# Start of markup tests
ok 1 /markup/format
# Start of escape-text tests
ok 2 /markup/escape-text/0
ok 3 /markup/escape-text/1
ok 4 /markup/escape-text/2
ok 5 /markup/escape-text/3
ok 6 /markup/escape-text/4
ok 7 /markup/escape-text/5
ok 8 /markup/escape-text/6
ok 9 /markup/escape-text/7
ok 10 /markup/escape-text/8
ok 11 /markup/escape-text/9
ok 12 /markup/escape-text/10
ok 13 /markup/escape-text/11
ok 14 /markup/escape-text/12
ok 15 /markup/escape-text/13
ok 16 /markup/escape-text/14
ok 17 /markup/escape-text/15
ok 18 /markup/escape-text/16
ok 19 /markup/escape-text/17
ok 20 /markup/escape-text/18
ok 21 /markup/escape-text/19
ok 22 /markup/escape-text/20
ok 23 /markup/escape-text/21
ok 24 /markup/escape-text/22
# End of escape-text tests
# Start of escape-unichar tests
ok 25 /markup/escape-unichar/0
ok 26 /markup/escape-unichar/1
ok 27 /markup/escape-unichar/2
ok 28 /markup/escape-unichar/3
ok 29 /markup/escape-unichar/4
ok 30 /markup/escape-unichar/5
ok 31 /markup/escape-unichar/6
ok 32 /markup/escape-unichar/7
ok 33 /markup/escape-unichar/8
ok 34 /markup/escape-unichar/9
ok 35 /markup/escape-unichar/10
ok 36 /markup/escape-unichar/11
ok 37 /markup/escape-unichar/12
ok 38 /markup/escape-unichar/13
ok 39 /markup/escape-unichar/14
ok 40 /markup/escape-unichar/15
ok 41 /markup/escape-unichar/16
# End of escape-unichar tests
# End of markup tests
PASS: glib/markup-escape.test
Running test: glib/singleton.test
PASS: glib/singleton.test
Running test: glib/regex.test
# random seed: R02S46dff5723a387f273909275a525805cf
1..575
# Start of regex tests
ok 1 /regex/properties
ok 2 /regex/class
ok 3 /regex/lookahead
ok 4 /regex/lookbehind
ok 5 /regex/subpattern
ok 6 /regex/condition
ok 7 /regex/recursion
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640489
ok 8 /regex/multiline
ok 9 /regex/explicit-crlf
ok 10 /regex/max-lookbehind
# Start of new tests
ok 11 /regex/new/1
ok 12 /regex/new/2
ok 13 /regex/new/3
ok 14 /regex/new/4
ok 15 /regex/new/5
ok 16 /regex/new/6
ok 17 /regex/new/7
ok 18 /regex/new/8
ok 19 /regex/new/9
ok 20 /regex/new/10
ok 21 /regex/new/11
ok 22 /regex/new/12
ok 23 /regex/new/13
ok 24 /regex/new/14
ok 25 /regex/new/15
ok 26 /regex/new/16
ok 27 /regex/new/17
ok 28 /regex/new/18
ok 29 /regex/new/19
# End of new tests
# Start of new-check-flags tests
ok 30 /regex/new-check-flags/20
ok 31 /regex/new-check-flags/21
ok 32 /regex/new-check-flags/22
ok 33 /regex/new-check-flags/23
ok 34 /regex/new-check-flags/24
ok 35 /regex/new-check-flags/25
ok 36 /regex/new-check-flags/26
ok 37 /regex/new-check-flags/27
ok 38 /regex/new-check-flags/28
ok 39 /regex/new-check-flags/29
ok 40 /regex/new-check-flags/30
ok 41 /regex/new-check-flags/31
ok 42 /regex/new-check-flags/32
ok 43 /regex/new-check-flags/33
# End of new-check-flags tests
# Start of new-fail tests
ok 44 /regex/new-fail/34
ok 45 /regex/new-fail/35
ok 46 /regex/new-fail/36
ok 47 /regex/new-fail/37
ok 48 /regex/new-fail/38
ok 49 /regex/new-fail/39
ok 50 /regex/new-fail/40
ok 51 /regex/new-fail/41
ok 52 /regex/new-fail/42
ok 53 /regex/new-fail/43
ok 54 /regex/new-fail/44
ok 55 /regex/new-fail/45
ok 56 /regex/new-fail/46
ok 57 /regex/new-fail/47
ok 58 /regex/new-fail/48
ok 59 /regex/new-fail/49
ok 60 /regex/new-fail/50
ok 61 /regex/new-fail/51
ok 62 /regex/new-fail/52
ok 63 /regex/new-fail/53
ok 64 /regex/new-fail/54
ok 65 /regex/new-fail/55
ok 66 /regex/new-fail/56
ok 67 /regex/new-fail/57
ok 68 /regex/new-fail/58
ok 69 /regex/new-fail/59
ok 70 /regex/new-fail/60
ok 71 /regex/new-fail/61
ok 72 /regex/new-fail/62
ok 73 /regex/new-fail/63
ok 74 /regex/new-fail/64
ok 75 /regex/new-fail/65
ok 76 /regex/new-fail/66
ok 77 /regex/new-fail/67
ok 78 /regex/new-fail/68
ok 79 /regex/new-fail/69
ok 80 /regex/new-fail/70
ok 81 /regex/new-fail/71
ok 82 /regex/new-fail/72
ok 83 /regex/new-fail/73
ok 84 /regex/new-fail/74
ok 85 /regex/new-fail/75
ok 86 /regex/new-fail/76
ok 87 /regex/new-fail/77
ok 88 /regex/new-fail/78
ok 89 /regex/new-fail/79
ok 90 /regex/new-fail/80
ok 91 /regex/new-fail/81
ok 92 /regex/new-fail/82
ok 93 /regex/new-fail/83
ok 94 /regex/new-fail/84
ok 95 /regex/new-fail/85
ok 96 /regex/new-fail/86
ok 97 /regex/new-fail/87
ok 98 /regex/new-fail/88
# End of new-fail tests
# Start of match-simple tests
ok 99 /regex/match-simple/89
ok 100 /regex/match-simple/90
ok 101 /regex/match-simple/91
ok 102 /regex/match-simple/92
ok 103 /regex/match-simple/93
ok 104 /regex/match-simple/94
ok 105 /regex/match-simple/95
ok 106 /regex/match-simple/96
ok 107 /regex/match-simple/97
ok 108 /regex/match-simple/98
ok 109 /regex/match-simple/99
ok 110 /regex/match-simple/100
ok 111 /regex/match-simple/101
ok 112 /regex/match-simple/102
ok 113 /regex/match-simple/103
ok 114 /regex/match-simple/104
ok 115 /regex/match-simple/105
ok 116 /regex/match-simple/106
ok 117 /regex/match-simple/107
ok 118 /regex/match-simple/108
ok 119 /regex/match-simple/109
ok 120 /regex/match-simple/110
ok 121 /regex/match-simple/111
ok 122 /regex/match-simple/112
ok 123 /regex/match-simple/113
ok 124 /regex/match-simple/114
ok 125 /regex/match-simple/115
ok 126 /regex/match-simple/116
ok 127 /regex/match-simple/117
ok 128 /regex/match-simple/118
ok 129 /regex/match-simple/119
ok 130 /regex/match-simple/120
ok 131 /regex/match-simple/121
ok 132 /regex/match-simple/122
ok 133 /regex/match-simple/123
ok 134 /regex/match-simple/124
ok 135 /regex/match-simple/125
ok 136 /regex/match-simple/126
ok 137 /regex/match-simple/127
ok 138 /regex/match-simple/128
ok 139 /regex/match-simple/129
ok 140 /regex/match-simple/130
ok 141 /regex/match-simple/131
ok 142 /regex/match-simple/132
ok 143 /regex/match-simple/133
ok 144 /regex/match-simple/134
ok 145 /regex/match-simple/135
ok 146 /regex/match-simple/136
ok 147 /regex/match-simple/137
ok 148 /regex/match-simple/138
ok 149 /regex/match-simple/139
ok 150 /regex/match-simple/140
ok 151 /regex/match-simple/141
ok 152 /regex/match-simple/142
ok 153 /regex/match-simple/143
ok 154 /regex/match-simple/144
ok 155 /regex/match-simple/145
ok 156 /regex/match-simple/146
ok 157 /regex/match-simple/147
ok 158 /regex/match-simple/148
ok 159 /regex/match-simple/149
ok 160 /regex/match-simple/150
ok 161 /regex/match-simple/151
ok 162 /regex/match-simple/152
ok 163 /regex/match-simple/153
ok 164 /regex/match-simple/154
ok 165 /regex/match-simple/155
ok 166 /regex/match-simple/156
ok 167 /regex/match-simple/157
# End of match-simple tests
# Start of match tests
ok 168 /regex/match/158
ok 169 /regex/match/159
ok 170 /regex/match/160
ok 171 /regex/match/161
ok 172 /regex/match/162
ok 173 /regex/match/163
ok 174 /regex/match/164
ok 175 /regex/match/165
ok 176 /regex/match/166
ok 177 /regex/match/167
ok 178 /regex/match/168
ok 179 /regex/match/169
ok 180 /regex/match/170
ok 181 /regex/match/171
ok 182 /regex/match/172
ok 183 /regex/match/173
ok 184 /regex/match/174
ok 185 /regex/match/175
ok 186 /regex/match/176
ok 187 /regex/match/177
ok 188 /regex/match/178
ok 189 /regex/match/179
ok 190 /regex/match/180
ok 191 /regex/match/181
ok 192 /regex/match/182
ok 193 /regex/match/183
ok 194 /regex/match/184
ok 195 /regex/match/185
ok 196 /regex/match/186
ok 197 /regex/match/187
ok 198 /regex/match/188
ok 199 /regex/match/189
ok 200 /regex/match/190
ok 201 /regex/match/191
ok 202 /regex/match/192
ok 203 /regex/match/193
ok 204 /regex/match/194
ok 205 /regex/match/195
ok 206 /regex/match/196
ok 207 /regex/match/197
ok 208 /regex/match/198
ok 209 /regex/match/199
ok 210 /regex/match/200
ok 211 /regex/match/201
ok 212 /regex/match/202
ok 213 /regex/match/203
ok 214 /regex/match/204
ok 215 /regex/match/205
ok 216 /regex/match/206
ok 217 /regex/match/207
ok 218 /regex/match/208
ok 219 /regex/match/209
ok 220 /regex/match/210
ok 221 /regex/match/211
ok 222 /regex/match/212
ok 223 /regex/match/213
ok 224 /regex/match/214
ok 225 /regex/match/215
ok 226 /regex/match/216
ok 227 /regex/match/217
ok 228 /regex/match/218
ok 229 /regex/match/219
ok 230 /regex/match/220
ok 231 /regex/match/221
ok 232 /regex/match/222
ok 233 /regex/match/223
ok 234 /regex/match/224
ok 235 /regex/match/225
ok 236 /regex/match/226
ok 237 /regex/match/227
ok 238 /regex/match/228
# Start of next0 tests
ok 239 /regex/match/next0/229
ok 240 /regex/match/next0/230
ok 241 /regex/match/next0/231
ok 242 /regex/match/next0/232
# End of next0 tests
# Start of next1 tests
ok 243 /regex/match/next1/233
ok 244 /regex/match/next1/234
ok 245 /regex/match/next1/235
ok 246 /regex/match/next1/236
# End of next1 tests
# Start of next2 tests
ok 247 /regex/match/next2/237
ok 248 /regex/match/next2/238
ok 249 /regex/match/next2/239
ok 250 /regex/match/next2/240
ok 251 /regex/match/next2/241
ok 252 /regex/match/next2/242
ok 253 /regex/match/next2/243
# End of next2 tests
# Start of next3 tests
ok 254 /regex/match/next3/244
ok 255 /regex/match/next3/245
ok 256 /regex/match/next3/246
ok 257 /regex/match/next3/247
ok 258 /regex/match/next3/248
ok 259 /regex/match/next3/249
# End of next3 tests
# Start of next4 tests
ok 260 /regex/match/next4/250
# End of next4 tests
# Start of count tests
ok 261 /regex/match/count/251
ok 262 /regex/match/count/252
ok 263 /regex/match/count/253
ok 264 /regex/match/count/254
ok 265 /regex/match/count/255
ok 266 /regex/match/count/256
ok 267 /regex/match/count/257
ok 268 /regex/match/count/258
ok 269 /regex/match/count/259
ok 270 /regex/match/count/260
# End of count tests
# Start of partial tests
ok 271 /regex/match/partial/261
ok 272 /regex/match/partial/262
ok 273 /regex/match/partial/263
ok 274 /regex/match/partial/264
ok 275 /regex/match/partial/265
ok 276 /regex/match/partial/266
ok 277 /regex/match/partial/267
ok 278 /regex/match/partial/268
ok 279 /regex/match/partial/269
# End of partial tests
# Start of subpattern tests
ok 280 /regex/match/subpattern/270
ok 281 /regex/match/subpattern/271
ok 282 /regex/match/subpattern/272
ok 283 /regex/match/subpattern/273
ok 284 /regex/match/subpattern/274
ok 285 /regex/match/subpattern/275
ok 286 /regex/match/subpattern/276
ok 287 /regex/match/subpattern/277
ok 288 /regex/match/subpattern/278
ok 289 /regex/match/subpattern/279
ok 290 /regex/match/subpattern/280
ok 291 /regex/match/subpattern/281
ok 292 /regex/match/subpattern/282
# Start of named tests
# Start of dupnames tests
ok 293 /regex/match/subpattern/named/dupnames/292
ok 294 /regex/match/subpattern/named/dupnames/293
ok 295 /regex/match/subpattern/named/dupnames/294
ok 296 /regex/match/subpattern/named/dupnames/295
ok 297 /regex/match/subpattern/named/dupnames/296
# End of dupnames tests
# End of named tests
# End of subpattern tests
# Start of named tests
# Start of subpattern tests
ok 298 /regex/match/named/subpattern/283
ok 299 /regex/match/named/subpattern/284
ok 300 /regex/match/named/subpattern/285
ok 301 /regex/match/named/subpattern/286
ok 302 /regex/match/named/subpattern/287
ok 303 /regex/match/named/subpattern/288
ok 304 /regex/match/named/subpattern/289
ok 305 /regex/match/named/subpattern/290
ok 306 /regex/match/named/subpattern/291
ok 307 /regex/match/named/subpattern/297
ok 308 /regex/match/named/subpattern/298
ok 309 /regex/match/named/subpattern/299
ok 310 /regex/match/named/subpattern/300
ok 311 /regex/match/named/subpattern/301
# End of subpattern tests
# End of named tests
# End of match tests
# Start of fetch-all0 tests
ok 312 /regex/fetch-all0/302
ok 313 /regex/fetch-all0/303
# End of fetch-all0 tests
# Start of fetch-all1 tests
ok 314 /regex/fetch-all1/304
ok 315 /regex/fetch-all1/305
ok 316 /regex/fetch-all1/306
# End of fetch-all1 tests
# Start of fetch-all2 tests
ok 317 /regex/fetch-all2/307
ok 318 /regex/fetch-all2/308
ok 319 /regex/fetch-all2/309
# End of fetch-all2 tests
# Start of fetch-all3 tests
ok 320 /regex/fetch-all3/310
ok 321 /regex/fetch-all3/311
ok 322 /regex/fetch-all3/312
ok 323 /regex/fetch-all3/313
ok 324 /regex/fetch-all3/314
# End of fetch-all3 tests
# Start of split tests
# Start of simple0 tests
ok 325 /regex/split/simple0/315
ok 326 /regex/split/simple0/316
ok 327 /regex/split/simple0/331
ok 328 /regex/split/simple0/332
# End of simple0 tests
# Start of simple1 tests
ok 329 /regex/split/simple1/317
ok 330 /regex/split/simple1/318
# End of simple1 tests
# Start of simple2 tests
ok 331 /regex/split/simple2/319
ok 332 /regex/split/simple2/325
ok 333 /regex/split/simple2/327
# End of simple2 tests
# Start of simple3 tests
ok 334 /regex/split/simple3/320
ok 335 /regex/split/simple3/321
ok 336 /regex/split/simple3/322
ok 337 /regex/split/simple3/323
ok 338 /regex/split/simple3/324
ok 339 /regex/split/simple3/326
ok 340 /regex/split/simple3/328
ok 341 /regex/split/simple3/329
ok 342 /regex/split/simple3/330
# End of simple3 tests
# End of split tests
# Start of split0 tests
ok 343 /regex/split0/333
ok 344 /regex/split0/335
# End of split0 tests
# Start of full-split0 tests
ok 345 /regex/full-split0/334
ok 346 /regex/full-split0/336
ok 347 /regex/full-split0/337
ok 348 /regex/full-split0/338
ok 349 /regex/full-split0/339
# End of full-split0 tests
# Start of split1 tests
ok 350 /regex/split1/340
ok 351 /regex/split1/343
# End of split1 tests
# Start of full-split1 tests
ok 352 /regex/full-split1/341
ok 353 /regex/full-split1/342
ok 354 /regex/full-split1/344
ok 355 /regex/full-split1/345
ok 356 /regex/full-split1/371
# End of full-split1 tests
# Start of split2 tests
ok 357 /regex/split2/346
ok 358 /regex/split2/350
ok 359 /regex/split2/362
# End of split2 tests
# Start of full-split2 tests
ok 360 /regex/full-split2/347
ok 361 /regex/full-split2/348
ok 362 /regex/full-split2/349
ok 363 /regex/full-split2/351
ok 364 /regex/full-split2/363
ok 365 /regex/full-split2/366
ok 366 /regex/full-split2/372
# End of full-split2 tests
# Start of split3 tests
ok 367 /regex/split3/352
ok 368 /regex/split3/354
ok 369 /regex/split3/356
ok 370 /regex/split3/358
ok 371 /regex/split3/360
ok 372 /regex/split3/364
ok 373 /regex/split3/367
ok 374 /regex/split3/369
# End of split3 tests
# Start of full-split3 tests
ok 375 /regex/full-split3/353
ok 376 /regex/full-split3/355
ok 377 /regex/full-split3/357
ok 378 /regex/full-split3/359
ok 379 /regex/full-split3/361
ok 380 /regex/full-split3/365
ok 381 /regex/full-split3/368
ok 382 /regex/full-split3/370
ok 383 /regex/full-split3/373
ok 384 /regex/full-split3/374
# End of full-split3 tests
# Start of check-repacement tests
ok 385 /regex/check-repacement/375
ok 386 /regex/check-repacement/376
ok 387 /regex/check-repacement/377
ok 388 /regex/check-repacement/378
ok 389 /regex/check-repacement/379
ok 390 /regex/check-repacement/380
ok 391 /regex/check-repacement/381
ok 392 /regex/check-repacement/382
# End of check-repacement tests
# Start of expand tests
ok 393 /regex/expand/383
ok 394 /regex/expand/384
ok 395 /regex/expand/385
ok 396 /regex/expand/386
ok 397 /regex/expand/387
ok 398 /regex/expand/388
ok 399 /regex/expand/389
ok 400 /regex/expand/390
ok 401 /regex/expand/391
ok 402 /regex/expand/392
ok 403 /regex/expand/393
ok 404 /regex/expand/394
ok 405 /regex/expand/395
ok 406 /regex/expand/396
ok 407 /regex/expand/397
ok 408 /regex/expand/398
ok 409 /regex/expand/399
ok 410 /regex/expand/400
ok 411 /regex/expand/401
ok 412 /regex/expand/402
ok 413 /regex/expand/403
ok 414 /regex/expand/404
ok 415 /regex/expand/405
ok 416 /regex/expand/406
ok 417 /regex/expand/407
ok 418 /regex/expand/408
ok 419 /regex/expand/409
ok 420 /regex/expand/410
ok 421 /regex/expand/411
ok 422 /regex/expand/412
ok 423 /regex/expand/413
ok 424 /regex/expand/414
ok 425 /regex/expand/415
ok 426 /regex/expand/416
ok 427 /regex/expand/417
ok 428 /regex/expand/418
ok 429 /regex/expand/419
ok 430 /regex/expand/420
ok 431 /regex/expand/421
ok 432 /regex/expand/422
ok 433 /regex/expand/423
ok 434 /regex/expand/424
ok 435 /regex/expand/425
ok 436 /regex/expand/426
ok 437 /regex/expand/427
ok 438 /regex/expand/428
ok 439 /regex/expand/429
ok 440 /regex/expand/430
ok 441 /regex/expand/431
ok 442 /regex/expand/432
ok 443 /regex/expand/433
ok 444 /regex/expand/434
ok 445 /regex/expand/435
ok 446 /regex/expand/436
ok 447 /regex/expand/437
ok 448 /regex/expand/438
ok 449 /regex/expand/439
ok 450 /regex/expand/440
ok 451 /regex/expand/441
ok 452 /regex/expand/442
ok 453 /regex/expand/443
ok 454 /regex/expand/444
ok 455 /regex/expand/445
ok 456 /regex/expand/446
ok 457 /regex/expand/447
ok 458 /regex/expand/448
# End of expand tests
# Start of replace tests
ok 459 /regex/replace/449
ok 460 /regex/replace/450
ok 461 /regex/replace/451
ok 462 /regex/replace/452
ok 463 /regex/replace/453
ok 464 /regex/replace/454
ok 465 /regex/replace/455
ok 466 /regex/replace/456
ok 467 /regex/replace/457
ok 468 /regex/replace/458
ok 469 /regex/replace/459
ok 470 /regex/replace/460
ok 471 /regex/replace/461
ok 472 /regex/replace/462
ok 473 /regex/replace/463
ok 474 /regex/replace/464
ok 475 /regex/replace/465
ok 476 /regex/replace/466
ok 477 /regex/replace/467
ok 478 /regex/replace/468
ok 479 /regex/replace/469
ok 480 /regex/replace/470
ok 481 /regex/replace/471
ok 482 /regex/replace/472
ok 483 /regex/replace/473
ok 484 /regex/replace/474
# End of replace tests
# Start of replace-literally tests
ok 485 /regex/replace-literally/475
ok 486 /regex/replace-literally/476
ok 487 /regex/replace-literally/477
ok 488 /regex/replace-literally/478
ok 489 /regex/replace-literally/479
ok 490 /regex/replace-literally/480
ok 491 /regex/replace-literally/481
ok 492 /regex/replace-literally/482
ok 493 /regex/replace-literally/483
ok 494 /regex/replace-literally/484
ok 495 /regex/replace-literally/485
ok 496 /regex/replace-literally/486
ok 497 /regex/replace-literally/487
ok 498 /regex/replace-literally/488
ok 499 /regex/replace-literally/489
ok 500 /regex/replace-literally/490
ok 501 /regex/replace-literally/491
ok 502 /regex/replace-literally/492
ok 503 /regex/replace-literally/493
ok 504 /regex/replace-literally/494
# End of replace-literally tests
# Start of string-number tests
ok 505 /regex/string-number/495
ok 506 /regex/string-number/496
ok 507 /regex/string-number/497
ok 508 /regex/string-number/498
ok 509 /regex/string-number/499
ok 510 /regex/string-number/500
ok 511 /regex/string-number/501
ok 512 /regex/string-number/502
ok 513 /regex/string-number/503
ok 514 /regex/string-number/504
ok 515 /regex/string-number/505
# End of string-number tests
# Start of escape_nul tests
ok 516 /regex/escape_nul/506
ok 517 /regex/escape_nul/507
ok 518 /regex/escape_nul/508
ok 519 /regex/escape_nul/509
ok 520 /regex/escape_nul/510
ok 521 /regex/escape_nul/511
ok 522 /regex/escape_nul/512
ok 523 /regex/escape_nul/513
ok 524 /regex/escape_nul/514
ok 525 /regex/escape_nul/515
ok 526 /regex/escape_nul/516
ok 527 /regex/escape_nul/517
ok 528 /regex/escape_nul/518
ok 529 /regex/escape_nul/519
ok 530 /regex/escape_nul/520
# End of escape_nul tests
# Start of escape tests
ok 531 /regex/escape/521
ok 532 /regex/escape/522
ok 533 /regex/escape/523
ok 534 /regex/escape/524
ok 535 /regex/escape/525
ok 536 /regex/escape/526
ok 537 /regex/escape/527
ok 538 /regex/escape/528
ok 539 /regex/escape/529
ok 540 /regex/escape/530
ok 541 /regex/escape/531
ok 542 /regex/escape/532
ok 543 /regex/escape/533
ok 544 /regex/escape/534
ok 545 /regex/escape/535
ok 546 /regex/escape/536
ok 547 /regex/escape/537
ok 548 /regex/escape/538
# End of escape tests
# Start of match-all0 tests
ok 549 /regex/match-all0/539
ok 550 /regex/match-all0/541
# End of match-all0 tests
# Start of match-all-full0 tests
ok 551 /regex/match-all-full0/540
ok 552 /regex/match-all-full0/542
ok 553 /regex/match-all-full0/543
ok 554 /regex/match-all-full0/544
# End of match-all-full0 tests
# Start of match-all1 tests
ok 555 /regex/match-all1/545
ok 556 /regex/match-all1/547
ok 557 /regex/match-all1/552
# End of match-all1 tests
# Start of match-all-full1 tests
ok 558 /regex/match-all-full1/546
ok 559 /regex/match-all-full1/548
ok 560 /regex/match-all-full1/549
ok 561 /regex/match-all-full1/550
ok 562 /regex/match-all-full1/551
ok 563 /regex/match-all-full1/553
# End of match-all-full1 tests
# Start of match-all2 tests
ok 564 /regex/match-all2/554
ok 565 /regex/match-all2/556
ok 566 /regex/match-all2/558
# End of match-all2 tests
# Start of match-all-full2 tests
ok 567 /regex/match-all-full2/555
ok 568 /regex/match-all-full2/557
ok 569 /regex/match-all-full2/559
# End of match-all-full2 tests
# Start of match-all3 tests
ok 570 /regex/match-all3/560
ok 571 /regex/match-all3/562
# End of match-all3 tests
# Start of match-all-full3 tests
ok 572 /regex/match-all-full3/561
ok 573 /regex/match-all-full3/563
# End of match-all-full3 tests
# Start of match-notempty tests
ok 574 /regex/match-notempty/564
# End of match-notempty tests
# Start of match-notempty-atstart tests
ok 575 /regex/match-notempty-atstart/565
# End of match-notempty-atstart tests
# End of regex tests
PASS: glib/regex.test
Running test: glib/override.test
PASS: glib/override.test
Running test: glib/guuid.test
# random seed: R02S33cd9593e3a7abfbe47dbe348c2c6ddb
1..2
# Start of uuid tests
ok 1 /uuid/string
ok 2 /uuid/random
# End of uuid tests
PASS: glib/guuid.test
Running test: glib/socket-address.test
# random seed: R02Sb373af3f88f50868e847541c2ae88722
1..2
# Start of socket tests
# Start of address tests
# Start of unix tests
ok 1 /socket/address/unix/construct
ok 2 /socket/address/unix/to-string
# End of unix tests
# End of address tests
# End of socket tests
PASS: glib/socket-address.test
Running test: glib/utf8-misc.test
# random seed: R02S8e08564cc18752775d17f8ccbf676dd9
1..6
# Start of utf8 tests
ok 1 /utf8/strlen
ok 2 /utf8/strncpy
ok 3 /utf8/strrchr
ok 4 /utf8/reverse
ok 5 /utf8/substring
ok 6 /utf8/make-valid
# End of utf8 tests
PASS: glib/utf8-misc.test
Running test: glib/network-monitor.test
# random seed: R02Sd659f6ac165f8c6e6eb9a934f2796f59
1..4
# Start of network-monitor tests
# GLib-GIO-DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals
# GLib-GIO-DEBUG: Failed to initialize networkmanager (GNetworkMonitorNM) for gio-network-monitor: NetworkManager not running
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation netlink (GNetworkMonitorNetlink) for ?gio-network-monitor?
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
ok 1 /network-monitor/default
ok 2 /network-monitor/remove_default
ok 3 /network-monitor/add_networks
ok 4 /network-monitor/remove_networks
# End of network-monitor tests
PASS: glib/network-monitor.test
Running test: glib/gdbus-proxy-well-known-name.test
# random seed: R02S3959fdbcfd5849b8ca9314fcd816c43d
1..1
# Start of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 1 /gdbus/proxy-well-known-name
# End of gdbus tests
PASS: glib/gdbus-proxy-well-known-name.test
Running test: glib/objects.test
START: /usr/libexec/installed-tests/glib/objects
init 0x560cac548e00
init 0x560cac548e20
.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Executing: glib/objects.test
..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
stopping
dispose 0x560cac548e00!
dispose 0x560cac548e20!
stopped
PASS: glib/objects.test
Running test: glib/trash.test
# random seed: R02S0a20c4b3125f28b750e80d49c4637945
1..2
# Start of trash tests
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/251
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
# File: /tmp/test-trashY6CWW2 (parent st_dev: 19)
# Home: /home/glib2-test (st_dev: 64768)
# Mount: /var/volatile
# Error: Trashing on system internal mounts is not supported
ok 1 /trash/not-supported
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1522
ok 2 /trash/symlinks # SKIP Directory '/home/glib2-test/.local' does not exist
# End of trash tests
PASS: glib/trash.test
Running test: glib/signal1.test
START: /usr/libexec/installed-tests/glib/signal1
init 0x5630bba59a00
init 0x5630bba59a20
...........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Executing: glib/signal1.test
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
stopping
stopped
dispose 0x5630bba59a00!
dispose 0x5630bba59a20!
PASS: glib/signal1.test
Running test: glib/giomodule.test
# random seed: R02S8fd03fc075b4bcac001699d3471425a2
1..3
# Start of giomodule tests
ok 1 /giomodule/extension-point
ok 2 /giomodule/module-scan-all
ok 3 /giomodule/module-scan-all-with-scope
# End of giomodule tests
PASS: glib/giomodule.test
Running test: glib/module-test-library.test
# random seed: R02Sd33860a5df9754e32c44b98ec215840c
PASS: glib/module-test-library.test
Running test: glib/unix-streams.test
# random seed: R02S96d61facd015c6ca22e56d4ce8a52bfd
1..9
# Start of unix-streams tests
ok 1 /unix-streams/basic
ok 2 /unix-streams/pipe-io-test
ok 3 /unix-streams/nonblocking-io-test
ok 4 /unix-streams/read_write
ok 5 /unix-streams/read_writev
ok 6 /unix-streams/write-wouldblock
ok 7 /unix-streams/writev-wouldblock
ok 8 /unix-streams/write-async-wouldblock
ok 9 /unix-streams/writev-async-wouldblock
# End of unix-streams tests
PASS: glib/unix-streams.test
Running test: glib/timeout.test
# random seed: R02Sa0b4ffbfc577cf85041d8c1dd0ef66f8
1..4
# Start of timeout tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642052
Executing: glib/timeout.test
ok 1 /timeout/seconds
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1600
ok 2 /timeout/weeks-overflow
ok 3 /timeout/far-future-ready-time
Executing: glib/timeout.test
Executing: glib/timeout.test
ok 4 /timeout/rounding
# End of timeout tests
PASS: glib/timeout.test
Running test: glib/memory-monitor-dbus.test
TAP version 13
ok 1 __main__.TestLowMemoryMonitor.test_low_memory_warning_signal # SKIP Cannot import dbus
1..1
PASS: glib/memory-monitor-dbus.test
Running test: glib/fileattributematcher.test
# random seed: R02S49a994c439335566ed080deaf4c6e71a
1..3
# Start of fileattributematcher tests
ok 1 /fileattributematcher/exact
ok 2 /fileattributematcher/equality
ok 3 /fileattributematcher/subtract
# End of fileattributematcher tests
PASS: glib/fileattributematcher.test
Running test: glib/dir.test
# random seed: R02S705cd86ab048acafbc5ec8d834514da3
1..2
# Start of dir tests
ok 1 /dir/read
ok 2 /dir/nonexisting
# End of dir tests
PASS: glib/dir.test
Running test: glib/credentials.test
# random seed: R02S9d4f339efb0accd13842ef07b2142e12
1..1
# Start of credentials tests
# GCredentials:linux-ucred:pid=23020,uid=1000,gid=1001
# GCredentials:linux-ucred:pid=23020,uid=0,gid=1001
ok 1 /credentials/basic
# End of credentials tests
PASS: glib/credentials.test
Running test: glib/mainloop-test.test
PASS: glib/mainloop-test.test
Running test: glib/unix-fd.test
# random seed: R02Sdd037c672fe1798a509b690d3ecef0c2
1..1
# Start of unix-streams tests
ok 1 /unix-streams/file-descriptors
# End of unix-streams tests
PASS: glib/unix-fd.test
Running test: glib/gapplication.test
# random seed: R02Sfd68a2d433a3b0d773aad332458e0f09
1..17
# Start of gapplication tests
ok 1 /gapplication/no-dbus
ok 2 /gapplication/no-appid
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 3 /gapplication/properties
ok 4 /gapplication/app-id
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 5 /gapplication/quit
ok 6 /gapplication/registered
ok 7 /gapplication/local-actions
ok 8 /gapplication/local-command-line
ok 9 /gapplication/resource-path
ok 10 /gapplication/test-help
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 11 /gapplication/test-busy
ok 12 /gapplication/test-handle-local-options1
ok 13 /gapplication/test-handle-local-options2
ok 14 /gapplication/test-handle-local-options3
ok 15 /gapplication/api
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# launching subprocess
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 16 /gapplication/replace
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# launching subprocess
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 17 /gapplication/no-replace
# End of gapplication tests
PASS: glib/gapplication.test
Running test: glib/mutex.test
# random seed: R02S4f84b5116de1886d0e8f0aed920380f3
1..5
# Start of thread tests
ok 1 /thread/mutex1
ok 2 /thread/mutex2
ok 3 /thread/mutex3
ok 4 /thread/mutex4
Executing: glib/mutex.test
ok 5 /thread/mutex5
# End of thread tests
PASS: glib/mutex.test
Running test: glib/filter-streams.test
# random seed: R02S5371147d1d6e879e8cd623c0a53bb0f7
1..4
# Start of filter-stream tests
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=568394
ok 1 /filter-stream/input
ok 2 /filter-stream/output
ok 3 /filter-stream/async-input
ok 4 /filter-stream/async-output
# End of filter-stream tests
PASS: glib/filter-streams.test
Running test: glib/gvariant.test
# random seed: R02S658895b7ee00944b7f648a10a611501e
1..61
# Start of gvariant tests
ok 1 /gvariant/type
ok 2 /gvariant/typeinfo
ok 3 /gvariant/string
ok 4 /gvariant/utf8
ok 5 /gvariant/containers
ok 6 /gvariant/format-strings
ok 7 /gvariant/invalid-varargs
ok 8 /gvariant/varargs
ok 9 /gvariant/valist
ok 10 /gvariant/builder-memory
ok 11 /gvariant/hashing
ok 12 /gvariant/byteswap
ok 13 /gvariant/parser
ok 14 /gvariant/parse-failures
ok 15 /gvariant/parse-positional
ok 16 /gvariant/floating
ok 17 /gvariant/bytestring
ok 18 /gvariant/lookup-value
ok 19 /gvariant/lookup
ok 20 /gvariant/compare
ok 21 /gvariant/equal
ok 22 /gvariant/fixed-array
ok 23 /gvariant/check-format-string
ok 24 /gvariant/checksum-basic
ok 25 /gvariant/checksum-nested
ok 26 /gvariant/gbytes
ok 27 /gvariant/print-context
ok 28 /gvariant/error-quark
ok 29 /gvariant/stack-builder-init
ok 30 /gvariant/stack-dict-init
ok 31 /gvariant/unaligned-construction
# Start of type tests
# Start of string-scan tests
# Start of recursion tests
ok 32 /gvariant/type/string-scan/recursion/tuple
ok 33 /gvariant/type/string-scan/recursion/array
# End of recursion tests
# End of string-scan tests
# End of type tests
# Start of serialiser tests
ok 34 /gvariant/serialiser/maybe
ok 35 /gvariant/serialiser/array
ok 36 /gvariant/serialiser/tuple
ok 37 /gvariant/serialiser/variant
ok 38 /gvariant/serialiser/strings
ok 39 /gvariant/serialiser/byteswap
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1865
# /gvariant/serialiser/children summary: Test that getting a child variant before and after serialisation of the parent works
ok 40 /gvariant/serialiser/children
# Start of fuzz tests
ok 41 /gvariant/serialiser/fuzz/1%
ok 42 /gvariant/serialiser/fuzz/5%
Executing: glib/gvariant.test
ok 43 /gvariant/serialiser/fuzz/9%
ok 44 /gvariant/serialiser/fuzz/13%
ok 45 /gvariant/serialiser/fuzz/17%
# End of fuzz tests
# End of serialiser tests
# Start of varargs tests
# Start of subprocess tests
# End of subprocess tests
# End of varargs tests
# Start of byteswap tests
# /gvariant/byteswap/non-normal-non-aligned summary: Test that calling g_variant_byteswap() on a variant which is in non-normal form and doesn?t need byteswapping returns the same variant in normal form.
ok 46 /gvariant/byteswap/non-normal-non-aligned
# End of byteswap tests
# Start of parser tests
ok 47 /gvariant/parser/integer-bounds
ok 48 /gvariant/parser/recursion
# End of parser tests
# Start of parse tests
# Start of subprocess tests
# End of subprocess tests
# End of parse tests
# Start of normal-checking tests
ok 49 /gvariant/normal-checking/tuples
ok 50 /gvariant/normal-checking/array-offsets
ok 51 /gvariant/normal-checking/array-offsets2
ok 52 /gvariant/normal-checking/tuple-offsets
ok 53 /gvariant/normal-checking/tuple-offsets2
ok 54 /gvariant/normal-checking/tuple-offsets3
ok 55 /gvariant/normal-checking/tuple-offsets4
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2840
ok 56 /gvariant/normal-checking/tuple-offsets5
ok 57 /gvariant/normal-checking/empty-object-path
# Start of array-offsets tests
ok 58 /gvariant/normal-checking/array-offsets/minimal-sized
# End of array-offsets tests
# Start of tuple-offsets tests
ok 59 /gvariant/normal-checking/tuple-offsets/minimal-sized
# End of tuple-offsets tests
# End of normal-checking tests
# Start of recursion-limits tests
ok 60 /gvariant/recursion-limits/variant-in-variant
ok 61 /gvariant/recursion-limits/array-in-variant
# End of recursion-limits tests
# End of gvariant tests
PASS: glib/gvariant.test
Running test: glib/io-stream.test
# random seed: R02S77d1fca3ae76b04dcbefb69e6200a5d2
1..3
# Start of io-stream tests
ok 1 /io-stream/copy-chunks
# Start of close tests
# Start of async tests
ok 2 /io-stream/close/async/memory
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 3 /io-stream/close/async/file
# End of async tests
# End of close tests
# End of io-stream tests
PASS: glib/io-stream.test
Running test: glib/resources.test
# random seed: R02S9bf8985372cbced81a8b717201227ecc
1..16
# Start of resource tests
ok 1 /resource/file
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
ok 2 /resource/file-path
ok 3 /resource/data
ok 4 /resource/data_unaligned
ok 5 /resource/data-corrupt
ok 6 /resource/data-empty
ok 7 /resource/registered
ok 8 /resource/manual
ok 9 /resource/manual2
ok 10 /resource/automatic
ok 11 /resource/module
ok 12 /resource/64k
GLib-GIO-Message: 01:25:20.891: Adding GResources overlay '/auto_loaded/test1.txt=/usr/libexec/installed-tests/glib/test1.overlay'
ok 13 /resource/overlay
ok 14 /resource/digits
# Start of uri tests
ok 15 /resource/uri/query-info
ok 16 /resource/uri/file
# End of uri tests
# End of resource tests
PASS: glib/resources.test
Running test: glib/mappedfile.test
# random seed: R02S8ca68b84c8c700b4a70b3e3c6c3d2f16
1..7
# Start of mappedfile tests
ok 1 /mappedfile/basic
ok 2 /mappedfile/empty
ok 3 /mappedfile/device
ok 4 /mappedfile/nonexisting
ok 5 /mappedfile/writable
ok 6 /mappedfile/writable_fd
ok 7 /mappedfile/gbytes
# End of mappedfile tests
PASS: glib/mappedfile.test
Running test: glib/boxed.test
# random seed: R02Sdda5dfaf0ee2683a61e2cd29c96ff408
1..26
# Start of boxed tests
ok 1 /boxed/define
ok 2 /boxed/ownership
ok 3 /boxed/closure
ok 4 /boxed/date
ok 5 /boxed/value
ok 6 /boxed/string
ok 7 /boxed/hashtable
ok 8 /boxed/array
ok 9 /boxed/ptrarray
ok 10 /boxed/regex
ok 11 /boxed/varianttype
ok 12 /boxed/error
ok 13 /boxed/datetime
ok 14 /boxed/matchinfo
ok 15 /boxed/keyfile
ok 16 /boxed/mainloop
ok 17 /boxed/maincontext
ok 18 /boxed/source
ok 19 /boxed/variantbuilder
ok 20 /boxed/timezone
ok 21 /boxed/pollfd
ok 22 /boxed/markup
ok 23 /boxed/thread
ok 24 /boxed/checksum
ok 25 /boxed/tree
ok 26 /boxed/patternspec
# End of boxed tests
PASS: glib/boxed.test
Running test: glib/stream-rw_all.test
# random seed: R02Sf8691e9d00deec034208d804c54379a9
1..3
# Start of stream tests
# Start of read_all_async tests
ok 1 /stream/read_all_async/memory
# End of read_all_async tests
# Start of write_all_async tests
ok 2 /stream/write_all_async/memory
# End of write_all_async tests
# Start of read_write_all_async tests
ok 3 /stream/read_write_all_async/pipe
# End of read_write_all_async tests
# End of stream tests
PASS: glib/stream-rw_all.test
Running test: glib/signal3.test
START: /usr/libexec/installed-tests/glib/signal3
init 0x56137be84a00
init 0x56137be84a20
...........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Executing: glib/signal3.test
................................................................................................................
stopping
stopped
dispose 0x56137be84a00!
dispose 0x56137be84a20!
PASS: glib/signal3.test
Running test: glib/logging.test
# random seed: R02Sa8f8520a4604af974a0e7dc1e6df9481
1..16
# Start of logging tests
ok 1 /logging/default-handler
ok 2 /logging/warnings
ok 3 /logging/fatal-log-mask
# bu-DEBUG: message
# ba-DEBUG: message
# ba-INFO: message
ok 4 /logging/set-handler
ok 5 /logging/print-handler
ok 6 /logging/printerr-handler
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=653052
# The Log Message Handler
# 
# The Good Fail Message Handler
# 
ok 7 /logging/653052
ok 8 /logging/gibberish
# Start of default-handler tests
# Start of subprocess tests
# End of subprocess tests
# End of default-handler tests
# End of logging tests
# Start of structured-logging tests
ok 9 /structured-logging/no-state
ok 10 /structured-logging/some-state
# The Log Message Handler
# 
ok 11 /structured-logging/robustness
ok 12 /structured-logging/roundtrip1
ok 13 /structured-logging/roundtrip2
ok 14 /structured-logging/roundtrip3
ok 15 /structured-logging/variant1
ok 16 /structured-logging/variant2
# End of structured-logging tests
PASS: glib/logging.test
Running test: glib/gsocketclient-slow.test
# random seed: R02S319dc4c30b7ca016de2fc7333124d419
1..3
# Start of socket-client tests
# Start of happy-eyeballs tests
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: Timeout reached, trying another enumeration
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 1 /socket-client/happy-eyeballs/slow
# Start of cancellation tests
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Connection failed: Operation was cancelled
ok 2 /socket-client/happy-eyeballs/cancellation/instant
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: Timeout reached, trying another enumeration
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection cancelled!
ok 3 /socket-client/happy-eyeballs/cancellation/delayed
# End of cancellation tests
# End of happy-eyeballs tests
# End of socket-client tests
PASS: glib/gsocketclient-slow.test
Running test: glib/glistmodel.test
# random seed: R02S60035098756c1b94d5a25e33d230b814
1..18
# Start of glistmodel tests
# Start of store tests
ok 1 /glistmodel/store/properties
ok 2 /glistmodel/store/non-gobjects
ok 3 /glistmodel/store/boundaries
ok 4 /glistmodel/store/refcounts
ok 5 /glistmodel/store/sorted
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307
ok 6 /glistmodel/store/splice-replace-middle
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307
ok 7 /glistmodel/store/splice-replace-all
ok 8 /glistmodel/store/splice-noop
ok 9 /glistmodel/store/splice-remove-multiple
ok 10 /glistmodel/store/splice-add-multiple
ok 11 /glistmodel/store/splice-wrong-type
ok 12 /glistmodel/store/item-type
ok 13 /glistmodel/store/remove-all
ok 14 /glistmodel/store/sort
ok 15 /glistmodel/store/get-item-cache
ok 16 /glistmodel/store/items-changed
ok 17 /glistmodel/store/past-end
ok 18 /glistmodel/store/find
# End of store tests
# End of glistmodel tests
PASS: glib/glistmodel.test
Running test: glib/srvtarget.test
# random seed: R02Se1cd73c34c6779ae05856eed50647cbc
1..1
# Start of srvtarget tests
ok 1 /srvtarget/srv-target-ordering
# End of srvtarget tests
PASS: glib/srvtarget.test
Running test: glib/mainloop.test
# random seed: R02S0ef6879f4533c5fd454608085076328e
1..42
# Start of maincontext tests
ok 1 /maincontext/basic
# Add same-priority sources: 6
# Find each source: 0
# Remove in random order: 7
ok 2 /maincontext/nsources_same_priority
# Add different-priority sources: 8
# Find each source: 0
# Remove in random order: 11
ok 3 /maincontext/nsources_different_priority
# Add sources from threads: 218
# Remove sources from threads: 201
ok 4 /maincontext/nsources_threadpool
ok 5 /maincontext/source_finalization
# Start of source_finalization_from_source tests
# /maincontext/source_finalization_from_source/0 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 6 /maincontext/source_finalization_from_source/0
# /maincontext/source_finalization_from_source/1 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 7 /maincontext/source_finalization_from_source/1
# /maincontext/source_finalization_from_source/2 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 8 /maincontext/source_finalization_from_source/2
# /maincontext/source_finalization_from_source/3 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 9 /maincontext/source_finalization_from_source/3
# /maincontext/source_finalization_from_source/4 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 10 /maincontext/source_finalization_from_source/4
# /maincontext/source_finalization_from_source/5 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 11 /maincontext/source_finalization_from_source/5
# /maincontext/source_finalization_from_source/6 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 12 /maincontext/source_finalization_from_source/6
# /maincontext/source_finalization_from_source/7 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 13 /maincontext/source_finalization_from_source/7
# /maincontext/source_finalization_from_source/8 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 14 /maincontext/source_finalization_from_source/8
# /maincontext/source_finalization_from_source/9 summary: Tests if freeing a GSource as part of another GSource during main context destruction works.
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353
ok 15 /maincontext/source_finalization_from_source/9
# End of source_finalization_from_source tests
# Start of source_finalization_from_dispatch tests
# /maincontext/source_finalization_from_dispatch/0 summary: Tests if freeing a GSource as part of another GSource during main context iteration works.
ok 16 /maincontext/source_finalization_from_dispatch/0
# /maincontext/source_finalization_from_dispatch/1 summary: Tests if freeing a GSource as part of another GSource during main context iteration works.
ok 17 /maincontext/source_finalization_from_dispatch/1
# /maincontext/source_finalization_from_dispatch/2 summary: Tests if freeing a GSource as part of another GSource during main context iteration works.
ok 18 /maincontext/source_finalization_from_dispatch/2
# End of source_finalization_from_dispatch tests
# End of maincontext tests
# Start of mainloop tests
ok 19 /mainloop/basic
ok 20 /mainloop/timeouts # SKIP Not running timing heavy test
ok 21 /mainloop/priorities
ok 22 /mainloop/invoke
ok 23 /mainloop/child_sources
Executing: glib/mainloop.test
ok 24 /mainloop/recursive_child_sources
ok 25 /mainloop/swapping_child_sources
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=701283
ok 26 /mainloop/blocked_child_sources
ok 27 /mainloop/source_time
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=687098
ok 28 /mainloop/overflow
ok 29 /mainloop/ready-time
ok 30 /mainloop/wakeup
ok 31 /mainloop/remove-invalid
ok 32 /mainloop/unref-while-pending
ok 33 /mainloop/unix-fd
ok 34 /mainloop/unix-fd-source
ok 35 /mainloop/source-unix-fd-api
ok 36 /mainloop/wait
ok 37 /mainloop/unix-file-poll
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1592
ok 38 /mainloop/unix-fd-priority
ok 39 /mainloop/nfds
ok 40 /mainloop/steal-fd
# Start of ownerless-polling tests
ok 41 /mainloop/ownerless-polling/attach-first
ok 42 /mainloop/ownerless-polling/pop-first
# End of ownerless-polling tests
# End of mainloop tests
PASS: glib/mainloop.test
Running test: glib/asyncqueue.test
# random seed: R02S5ef6a909cd7d214640f7e9be37982c78
1..7
# Start of asyncqueue tests
ok 1 /asyncqueue/basics
ok 2 /asyncqueue/sort
ok 3 /asyncqueue/destroy
ok 4 /asyncqueue/threads
ok 5 /asyncqueue/timed
ok 6 /asyncqueue/remove
ok 7 /asyncqueue/push_front
# End of asyncqueue tests
PASS: glib/asyncqueue.test
Running test: glib/gdbus-bz627724.test
# random seed: R02S416e1bab215ce0e777b20cdeb8d744af
1..1
# Start of gdbus tests
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
# GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created
ok 1 /gdbus/bz627724
# End of gdbus tests
PASS: glib/gdbus-bz627724.test
Running test: glib/environment.test
# random seed: R02Sbe478a3b2527a6160c85382a90cd07d4
1..6
# Start of environ tests
ok 1 /environ/listenv
ok 2 /environ/getenv
ok 3 /environ/setenv
ok 4 /environ/array
ok 5 /environ/null
ok 6 /environ/case
# End of environ tests
PASS: glib/environment.test
Running test: glib/signals.test
PASS: glib/signals.test
Running test: glib/once.test
# random seed: R02Sa6e0ddbb69734e5bba17840488173bf2
1..5
# Start of once tests
# /once/single-threaded summary: Test g_once() usage from a single thread
ok 1 /once/single-threaded
# /once/multi-threaded summary: Test g_once() usage from multiple threads
ok 2 /once/multi-threaded
# End of once tests
# Start of once-init tests
# /once-init/single-threaded summary: Test g_once_init_{enter,leave}() usage from a single thread
ok 3 /once-init/single-threaded
# /once-init/multi-threaded summary: Test g_once_init_{enter,leave}() usage from multiple threads
ok 4 /once-init/multi-threaded
# /once-init/string summary: Test g_once_init_{enter,leave}() usage with a string
ok 5 /once-init/string
# End of once-init tests
PASS: glib/once.test
Running test: glib/private.test
# random seed: R02S9081379c276b061ca1604c4d155911e1
1..8
# Start of thread tests
ok 1 /thread/private1
ok 2 /thread/private2
ok 3 /thread/private3
ok 4 /thread/staticprivate1
ok 5 /thread/staticprivate2
ok 6 /thread/staticprivate3
Executing: glib/private.test
ok 7 /thread/staticprivate4
ok 8 /thread/staticprivate5
# End of thread tests
PASS: glib/private.test
Running test: glib/mount-operation.test
# random seed: R02Sc34b0a479ed7096dc3912615093b7370
1..2
# Start of mount-operation tests
ok 1 /mount-operation/construction
ok 2 /mount-operation/properties
# End of mount-operation tests
PASS: glib/mount-operation.test
Running test: glib/dynamictype.test
PASS: glib/dynamictype.test
Running test: glib/memchunk.test
# random seed: R02S49ddc0da49aae28f56feefd84b375fc6
1..1
# Start of memchunk tests
ok 1 /memchunk/basic
# End of memchunk tests
PASS: glib/memchunk.test
Running test: glib/pollable.test
# random seed: R02S83c393183f6eea63c36ca63e7b46a756
1..6
# Start of pollable tests
ok 1 /pollable/converter
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver?
# GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration
# GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded
# GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt
# GLib-GIO-DEBUG: GSocketClient: TCP connection successful
# GLib-GIO-DEBUG: GSocketClient: Starting application layer connection
# GLib-GIO-DEBUG: GSocketClient: Connection successful!
ok 2 /pollable/socket
# Start of unix tests
# /pollable/unix/pipe summary: Test that pipes are considered pollable, just like sockets
ok 3 /pollable/unix/pipe
# /pollable/unix/pty summary: Test that PTYs are considered pollable
ok 4 /pollable/unix/pty
# /pollable/unix/file summary: Test that regular files are not considered pollable
ok 5 /pollable/unix/file
# /pollable/unix/nulldev summary: Test that /dev/null is not considered pollable, but only if on a system where we are able to tell it apart from devices that actually implement poll
ok 6 /pollable/unix/nulldev
# End of unix tests
# End of pollable tests
PASS: glib/pollable.test
Running test: glib/spawn-multithreaded.test
# random seed: R02S21865af67369f4e1c28fe5ebb52740c4
1..4
# Start of gthread tests
# Child 25323 (ttl 1) exited, status 0
# Child 25325 (ttl 2) exited, status 0
ok 1 /gthread/spawn-childs
# Created pid: 25329 (ttl 2)
# Created pid: 25330 (ttl 1)
# Child 25330 (ttl 1) exited, status 0
# Child 25329 (ttl 2) exited, status 0
ok 2 /gthread/spawn-childs-threads
ok 3 /gthread/spawn-sync
ok 4 /gthread/spawn-async
# End of gthread tests
PASS: glib/spawn-multithreaded.test
Running test: glib/inet-address.test
# random seed: R02S3916f70f9d9716717d7bff82b872d5fe
1..11
# Start of inet-address tests
ok 1 /inet-address/parse
ok 2 /inet-address/any
ok 3 /inet-address/loopback
ok 4 /inet-address/bytes
ok 5 /inet-address/property
# End of inet-address tests
# Start of socket-address tests
ok 6 /socket-address/basic
ok 7 /socket-address/to-string
# End of socket-address tests
# Start of address-mask tests
ok 8 /address-mask/parse
ok 9 /address-mask/property
ok 10 /address-mask/equal
ok 11 /address-mask/match
# End of address-mask tests
PASS: glib/inet-address.test
Running test: glib/type-flags.test
# random seed: R02S99a7615111a2a55db63ea06541e1116f
1..1
# Start of type tests
# Start of flags tests
ok 1 /type/flags/final
# End of flags tests
# End of type tests
PASS: glib/type-flags.test
Running test: glib/power-profile-monitor-dbus.test
TAP version 13
ok 1 __main__.TestPowerProfileMonitor.test_power_profile_power_saver_enabled # SKIP Cannot import dbus
1..1
PASS: glib/power-profile-monitor-dbus.test
Running test: glib/spawn-test.test
PASS: glib/spawn-test.test
Running test: glib/overflow-fallback.test
# random seed: R02S3ce1bd73fbf9234de3f85a8d59d58511
1..6
# Start of glib tests
# Start of checked-math tests
ok 1 /glib/checked-math/guint-add
ok 2 /glib/checked-math/guint-mul
ok 3 /glib/checked-math/guint64-add
ok 4 /glib/checked-math/guint64-mul
ok 5 /glib/checked-math/gsize-add
ok 6 /glib/checked-math/gsize-mul
# End of checked-math tests
# End of glib tests
PASS: glib/overflow-fallback.test
Running test: glib/static-link.test
Executing: glib/static-link.test
Test disabled because GLIB_TEST_COMPILATION is not set in the env.
If you wish to run this test, set GLIB_TEST_COMPILATION=1 in the env,
and make sure you have glib build dependencies installed, including
meson.
SKIP: glib/static-link.test
Running test: glib/keyfile.test
# random seed: R02S50f53f4c2763a99260c9ca59647ec4be
1..36
# Start of keyfile tests
ok 1 /keyfile/line-ends
ok 2 /keyfile/whitespace
ok 3 /keyfile/comments
ok 4 /keyfile/listing
ok 5 /keyfile/string
ok 6 /keyfile/boolean
ok 7 /keyfile/number
ok 8 /keyfile/locale-string
ok 9 /keyfile/lists
ok 10 /keyfile/lists-set-get
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165887
ok 11 /keyfile/group-remove
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165980
ok 12 /keyfile/key-remove
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=316309
ok 13 /keyfile/groups
ok 14 /keyfile/duplicate-keys
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=157877
ok 15 /keyfile/duplicate-groups
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=385910
ok 16 /keyfile/duplicate-groups2
ok 17 /keyfile/group-names
ok 18 /keyfile/key-names
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=420686
ok 19 /keyfile/reload
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=614864
ok 20 /keyfile/int64
ok 21 /keyfile/load
ok 22 /keyfile/save
ok 23 /keyfile/load-fail
ok 24 /keyfile/non-utf8
# Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640695
ok 25 /keyfile/page-boundary
ok 26 /keyfile/ref
ok 27 /keyfile/replace-value
ok 28 /keyfile/list-separator
ok 29 /keyfile/empty-string
ok 30 /keyfile/limbo
# Testing invalid encoding ?non-UTF-8?
# Testing invalid encoding ?UTF?
# Testing invalid encoding ?UTF-9?
ok 31 /keyfile/utf8
ok 32 /keyfile/roundtrip
ok 33 /keyfile/bytes
ok 34 /keyfile/get-locale
ok 35 /keyfile/free-when-not-last-ref
# Start of locale-string tests
# /keyfile/locale-string/multiple-loads summary: Check that loading with translations multiple times works
# Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2361
ok 36 /keyfile/locale-string/multiple-loads
# End of locale-string tests
# End of keyfile tests
PASS: glib/keyfile.test
Running test: glib/rcbox.test
# random seed: R02S69dfef5da7f6e0a9a087a993d59a4cd0
1..8
# Start of rcbox tests
ok 1 /rcbox/new
# global_point = 0x5641fda1c3a0
ok 2 /rcbox/release-full
# global_point_a = 0x5641fda1c3a0
# global_point_b = 0x5641fda1b9e0
ok 3 /rcbox/dup
ok 4 /rcbox/alignment
# End of rcbox tests
# Start of atomic-rcbox tests
ok 5 /atomic-rcbox/new
# global_point = 0x5641fda1c480
ok 6 /atomic-rcbox/release-full
# global_point_a = 0x5641fda1c480
# global_point_b = 0x5641fda1c440
ok 7 /atomic-rcbox/dup
ok 8 /atomic-rcbox/alignment
# End of atomic-rcbox tests
PASS: glib/rcbox.test
Running test: glib/dataset.test
# random seed: R02S97f0ad6c09f322256bb2719f32c7a094
1..10
# Start of quark tests
ok 1 /quark/basic
ok 2 /quark/string
# End of quark tests
# Start of dataset tests
ok 3 /dataset/basic
ok 4 /dataset/id
ok 5 /dataset/full
ok 6 /dataset/foreach
ok 7 /dataset/destroy
# End of dataset tests
# Start of datalist tests
ok 8 /datalist/basic
ok 9 /datalist/id
ok 10 /datalist/recursive-clear
# End of datalist tests
PASS: glib/dataset.test
SUMMARY: total=262; passed=261; skipped=1; failed=0; user=141.3s; system=85.7s; maxrss=507336
+ userdel glib2-test
DURATION: 270
