glib2 0.90.2-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (875) hide show
  1. data/ChangeLog +3115 -0
  2. data/README +40 -0
  3. data/Rakefile +69 -0
  4. data/ext/glib2/depend +10 -0
  5. data/ext/glib2/extconf.rb +61 -0
  6. data/ext/glib2/glib2.def +89 -0
  7. data/ext/glib2/rbgcompat.h +30 -0
  8. data/ext/glib2/rbglib.c +330 -0
  9. data/ext/glib2/rbglib.h +96 -0
  10. data/ext/glib2/rbglib_bookmarkfile.c +595 -0
  11. data/ext/glib2/rbglib_completion.c +192 -0
  12. data/ext/glib2/rbglib_convert.c +195 -0
  13. data/ext/glib2/rbglib_error.c +95 -0
  14. data/ext/glib2/rbglib_fileutils.c +83 -0
  15. data/ext/glib2/rbglib_i18n.c +44 -0
  16. data/ext/glib2/rbglib_int64.c +157 -0
  17. data/ext/glib2/rbglib_iochannel.c +883 -0
  18. data/ext/glib2/rbglib_keyfile.c +846 -0
  19. data/ext/glib2/rbglib_maincontext.c +915 -0
  20. data/ext/glib2/rbglib_mainloop.c +87 -0
  21. data/ext/glib2/rbglib_messages.c +150 -0
  22. data/ext/glib2/rbglib_pollfd.c +111 -0
  23. data/ext/glib2/rbglib_shell.c +68 -0
  24. data/ext/glib2/rbglib_source.c +190 -0
  25. data/ext/glib2/rbglib_spawn.c +345 -0
  26. data/ext/glib2/rbglib_threads.c +51 -0
  27. data/ext/glib2/rbglib_timer.c +127 -0
  28. data/ext/glib2/rbglib_unicode.c +611 -0
  29. data/ext/glib2/rbglib_utils.c +386 -0
  30. data/ext/glib2/rbglib_win32.c +136 -0
  31. data/ext/glib2/rbgobj_boxed.c +251 -0
  32. data/ext/glib2/rbgobj_closure.c +337 -0
  33. data/ext/glib2/rbgobj_convert.c +167 -0
  34. data/ext/glib2/rbgobj_enums.c +961 -0
  35. data/ext/glib2/rbgobj_fundamental.c +30 -0
  36. data/ext/glib2/rbgobj_object.c +892 -0
  37. data/ext/glib2/rbgobj_param.c +390 -0
  38. data/ext/glib2/rbgobj_paramspecs.c +305 -0
  39. data/ext/glib2/rbgobj_signal.c +963 -0
  40. data/ext/glib2/rbgobj_strv.c +61 -0
  41. data/ext/glib2/rbgobj_type.c +851 -0
  42. data/ext/glib2/rbgobj_typeinstance.c +121 -0
  43. data/ext/glib2/rbgobj_typeinterface.c +148 -0
  44. data/ext/glib2/rbgobj_typemodule.c +66 -0
  45. data/ext/glib2/rbgobj_typeplugin.c +49 -0
  46. data/ext/glib2/rbgobj_value.c +313 -0
  47. data/ext/glib2/rbgobj_valuearray.c +59 -0
  48. data/ext/glib2/rbgobj_valuetypes.c +298 -0
  49. data/ext/glib2/rbgobject.c +406 -0
  50. data/ext/glib2/rbgobject.h +265 -0
  51. data/ext/glib2/rbgprivate.h +88 -0
  52. data/ext/glib2/rbgutil.c +316 -0
  53. data/ext/glib2/rbgutil.h +82 -0
  54. data/ext/glib2/rbgutil_callback.c +231 -0
  55. data/extconf.rb +49 -0
  56. data/lib/1.8/glib2.so +0 -0
  57. data/lib/1.9/glib2.so +0 -0
  58. data/lib/glib-mkenums.rb +199 -0
  59. data/lib/glib2.rb +239 -0
  60. data/lib/gnome2-win32-binary-downloader.rb +92 -0
  61. data/lib/mkmf-gnome2.rb +377 -0
  62. data/sample/bookmarkfile.rb +66 -0
  63. data/sample/completion.rb +45 -0
  64. data/sample/idle.rb +41 -0
  65. data/sample/iochannel.rb +44 -0
  66. data/sample/keyfile.rb +62 -0
  67. data/sample/shell.rb +36 -0
  68. data/sample/spawn.rb +25 -0
  69. data/sample/timeout.rb +28 -0
  70. data/sample/timeout2.rb +35 -0
  71. data/sample/timer.rb +40 -0
  72. data/sample/type-register.rb +103 -0
  73. data/sample/type-register2.rb +104 -0
  74. data/sample/utils.rb +54 -0
  75. data/test/glib-test-init.rb +6 -0
  76. data/test/glib-test-utils.rb +12 -0
  77. data/test/run-test.rb +21 -0
  78. data/test/test_enum.rb +99 -0
  79. data/test/test_file_utils.rb +15 -0
  80. data/test/test_glib2.rb +120 -0
  81. data/test/test_iochannel.rb +275 -0
  82. data/test/test_key_file.rb +38 -0
  83. data/test/test_mkenums.rb +25 -0
  84. data/test/test_signal.rb +20 -0
  85. data/test/test_timeout.rb +28 -0
  86. data/test/test_unicode.rb +369 -0
  87. data/test/test_utils.rb +37 -0
  88. data/test/test_win32.rb +13 -0
  89. data/test-unit/COPYING +56 -0
  90. data/test-unit/GPL +340 -0
  91. data/test-unit/History.txt +232 -0
  92. data/test-unit/Manifest.txt +110 -0
  93. data/test-unit/PSFL +271 -0
  94. data/test-unit/README.txt +75 -0
  95. data/test-unit/Rakefile +53 -0
  96. data/test-unit/TODO +5 -0
  97. data/test-unit/bin/testrb +5 -0
  98. data/test-unit/html/bar.png +0 -0
  99. data/test-unit/html/bar.svg +153 -0
  100. data/test-unit/html/developer.png +0 -0
  101. data/test-unit/html/developer.svg +469 -0
  102. data/test-unit/html/famfamfam-logo.png +0 -0
  103. data/test-unit/html/favicon.ico +0 -0
  104. data/test-unit/html/favicon.png +0 -0
  105. data/test-unit/html/favicon.svg +82 -0
  106. data/test-unit/html/heading-mark.png +0 -0
  107. data/test-unit/html/heading-mark.svg +393 -0
  108. data/test-unit/html/index.html +247 -0
  109. data/test-unit/html/index.html.ja +270 -0
  110. data/test-unit/html/install.png +0 -0
  111. data/test-unit/html/install.svg +636 -0
  112. data/test-unit/html/jp.png +0 -0
  113. data/test-unit/html/kinotan-failure.png +0 -0
  114. data/test-unit/html/kinotan-pass.png +0 -0
  115. data/test-unit/html/logo.png +0 -0
  116. data/test-unit/html/logo.svg +483 -0
  117. data/test-unit/html/reference.png +0 -0
  118. data/test-unit/html/rubyforge.png +0 -0
  119. data/test-unit/html/tango-logo.png +0 -0
  120. data/test-unit/html/test-unit.css +339 -0
  121. data/test-unit/html/tutorial.png +0 -0
  122. data/test-unit/html/tutorial.svg +559 -0
  123. data/test-unit/html/us.png +0 -0
  124. data/test-unit/images/color-diff.png +0 -0
  125. data/test-unit/lib/test/unit/assertionfailederror.rb +25 -0
  126. data/test-unit/lib/test/unit/assertions.rb +1334 -0
  127. data/test-unit/lib/test/unit/attribute.rb +125 -0
  128. data/test-unit/lib/test/unit/autorunner.rb +363 -0
  129. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  130. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  131. data/test-unit/lib/test/unit/collector/load.rb +144 -0
  132. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  133. data/test-unit/lib/test/unit/collector.rb +36 -0
  134. data/test-unit/lib/test/unit/color-scheme.rb +106 -0
  135. data/test-unit/lib/test/unit/color.rb +96 -0
  136. data/test-unit/lib/test/unit/diff.rb +740 -0
  137. data/test-unit/lib/test/unit/error.rb +130 -0
  138. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  139. data/test-unit/lib/test/unit/failure.rb +136 -0
  140. data/test-unit/lib/test/unit/fixture.rb +176 -0
  141. data/test-unit/lib/test/unit/notification.rb +129 -0
  142. data/test-unit/lib/test/unit/omission.rb +191 -0
  143. data/test-unit/lib/test/unit/pending.rb +150 -0
  144. data/test-unit/lib/test/unit/priority.rb +180 -0
  145. data/test-unit/lib/test/unit/runner/console.rb +52 -0
  146. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  147. data/test-unit/lib/test/unit/runner/tap.rb +8 -0
  148. data/test-unit/lib/test/unit/testcase.rb +483 -0
  149. data/test-unit/lib/test/unit/testresult.rb +121 -0
  150. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  151. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  152. data/test-unit/lib/test/unit/ui/console/testrunner.rb +430 -0
  153. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +63 -0
  154. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +82 -0
  155. data/test-unit/lib/test/unit/ui/testrunner.rb +53 -0
  156. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  157. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  158. data/test-unit/lib/test/unit/util/backtracefilter.rb +42 -0
  159. data/test-unit/lib/test/unit/util/method-owner-finder.rb +28 -0
  160. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  161. data/test-unit/lib/test/unit/util/output.rb +31 -0
  162. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  163. data/test-unit/lib/test/unit/version.rb +7 -0
  164. data/test-unit/lib/test/unit.rb +328 -0
  165. data/test-unit/sample/adder.rb +13 -0
  166. data/test-unit/sample/subtracter.rb +12 -0
  167. data/test-unit/sample/test_adder.rb +20 -0
  168. data/test-unit/sample/test_subtracter.rb +20 -0
  169. data/test-unit/sample/test_user.rb +23 -0
  170. data/test-unit/test/collector/test-descendant.rb +133 -0
  171. data/test-unit/test/collector/test-load.rb +442 -0
  172. data/test-unit/test/collector/test_dir.rb +406 -0
  173. data/test-unit/test/collector/test_objectspace.rb +100 -0
  174. data/test-unit/test/run-test.rb +15 -0
  175. data/test-unit/test/test-attribute.rb +86 -0
  176. data/test-unit/test/test-color-scheme.rb +69 -0
  177. data/test-unit/test/test-color.rb +47 -0
  178. data/test-unit/test/test-diff.rb +518 -0
  179. data/test-unit/test/test-emacs-runner.rb +60 -0
  180. data/test-unit/test/test-fixture.rb +287 -0
  181. data/test-unit/test/test-notification.rb +33 -0
  182. data/test-unit/test/test-omission.rb +81 -0
  183. data/test-unit/test/test-pending.rb +70 -0
  184. data/test-unit/test/test-priority.rb +119 -0
  185. data/test-unit/test/test-testcase.rb +544 -0
  186. data/test-unit/test/test_assertions.rb +1197 -0
  187. data/test-unit/test/test_error.rb +26 -0
  188. data/test-unit/test/test_failure.rb +33 -0
  189. data/test-unit/test/test_testresult.rb +113 -0
  190. data/test-unit/test/test_testsuite.rb +129 -0
  191. data/test-unit/test/testunit-test-util.rb +14 -0
  192. data/test-unit/test/ui/test_tap.rb +33 -0
  193. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  194. data/test-unit/test/util/test-method-owner-finder.rb +38 -0
  195. data/test-unit/test/util/test-output.rb +11 -0
  196. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  197. data/test-unit/test/util/test_observable.rb +102 -0
  198. data/test-unit/test/util/test_procwrapper.rb +36 -0
  199. data/vendor/local/bin/envsubst.exe +0 -0
  200. data/vendor/local/bin/gettext.exe +0 -0
  201. data/vendor/local/bin/gettext.sh +123 -0
  202. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  203. data/vendor/local/bin/glib-gettextize +188 -0
  204. data/vendor/local/bin/glib-mkenums +511 -0
  205. data/vendor/local/bin/gobject-query.exe +0 -0
  206. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  207. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  208. data/vendor/local/bin/intl.dll +0 -0
  209. data/vendor/local/bin/libasprintf-0.dll +0 -0
  210. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  211. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  212. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  213. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  214. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  215. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  216. data/vendor/local/bin/ngettext.exe +0 -0
  217. data/vendor/local/include/autosprintf.h +66 -0
  218. data/vendor/local/include/glib-2.0/gio/gappinfo.h +237 -0
  219. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  220. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  221. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  222. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +82 -0
  223. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  224. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  225. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  226. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  227. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +80 -0
  228. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +80 -0
  229. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +133 -0
  230. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +116 -0
  231. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  232. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  233. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  234. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  235. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  236. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +133 -0
  237. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  238. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +951 -0
  239. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  240. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  241. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  242. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  243. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  244. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  245. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  246. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  247. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  248. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  249. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  250. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  251. data/vendor/local/include/glib-2.0/gio/gio.h +101 -0
  252. data/vendor/local/include/glib-2.0/gio/gioenums.h +703 -0
  253. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +79 -0
  254. data/vendor/local/include/glib-2.0/gio/gioerror.h +48 -0
  255. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  256. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  257. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  258. data/vendor/local/include/glib-2.0/gio/giotypes.h +339 -0
  259. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  260. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  261. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +97 -0
  262. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  263. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  264. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  265. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +69 -0
  266. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +69 -0
  267. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  268. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  269. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  270. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  271. data/vendor/local/include/glib-2.0/gio/gsocket.h +176 -0
  272. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  273. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  274. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +130 -0
  275. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +68 -0
  276. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  277. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  278. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  279. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  280. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  281. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  282. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  283. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  284. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  285. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  286. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +151 -0
  287. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +55 -0
  288. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +54 -0
  289. data/vendor/local/include/glib-2.0/glib/galloca.h +63 -0
  290. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  291. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  292. data/vendor/local/include/glib-2.0/glib/gatomic.h +85 -0
  293. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  294. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  295. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  296. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +191 -0
  297. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  298. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  299. data/vendor/local/include/glib-2.0/glib/gcompletion.h +77 -0
  300. data/vendor/local/include/glib-2.0/glib/gconvert.h +138 -0
  301. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  302. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  303. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  304. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  305. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  306. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  307. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  308. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  309. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  310. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  311. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  312. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +250 -0
  313. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  314. data/vendor/local/include/glib-2.0/glib/gmacros.h +277 -0
  315. data/vendor/local/include/glib-2.0/glib/gmain.h +304 -0
  316. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  317. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  318. data/vendor/local/include/glib-2.0/glib/gmem.h +203 -0
  319. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  320. data/vendor/local/include/glib-2.0/glib/gnode.h +288 -0
  321. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  322. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  323. data/vendor/local/include/glib-2.0/glib/gpoll.h +93 -0
  324. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  325. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  326. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  327. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  328. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  329. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  330. data/vendor/local/include/glib-2.0/glib/gregex.h +243 -0
  331. data/vendor/local/include/glib-2.0/glib/grel.h +97 -0
  332. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  333. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  334. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  335. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  336. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  337. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  338. data/vendor/local/include/glib-2.0/glib/gstdio.h +159 -0
  339. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +267 -0
  340. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  341. data/vendor/local/include/glib-2.0/glib/gtestutils.h +292 -0
  342. data/vendor/local/include/glib-2.0/glib/gthread.h +408 -0
  343. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  344. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  345. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  346. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  347. data/vendor/local/include/glib-2.0/glib/gunicode.h +404 -0
  348. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  349. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  350. data/vendor/local/include/glib-2.0/glib/gvariant.h +224 -0
  351. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +305 -0
  352. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  353. data/vendor/local/include/glib-2.0/glib-object.h +41 -0
  354. data/vendor/local/include/glib-2.0/glib.h +97 -0
  355. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  356. data/vendor/local/include/glib-2.0/gobject/gboxed.h +236 -0
  357. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  358. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  359. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +169 -0
  360. data/vendor/local/include/glib-2.0/gobject/gobject.h +562 -0
  361. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +166 -0
  362. data/vendor/local/include/glib-2.0/gobject/gparam.h +410 -0
  363. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1083 -0
  364. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  365. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  366. data/vendor/local/include/glib-2.0/gobject/gtype.h +1608 -0
  367. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  368. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  369. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  370. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  371. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +222 -0
  372. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +243 -0
  373. data/vendor/local/include/libintl.h +464 -0
  374. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  375. data/vendor/local/lib/gio-2.0.def +800 -0
  376. data/vendor/local/lib/gio-2.0.lib +0 -0
  377. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  378. data/vendor/local/lib/glib-2.0.def +1381 -0
  379. data/vendor/local/lib/glib-2.0.lib +0 -0
  380. data/vendor/local/lib/gmodule-2.0.def +11 -0
  381. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  382. data/vendor/local/lib/gobject-2.0.def +349 -0
  383. data/vendor/local/lib/gobject-2.0.lib +0 -0
  384. data/vendor/local/lib/gthread-2.0.def +3 -0
  385. data/vendor/local/lib/gthread-2.0.lib +0 -0
  386. data/vendor/local/lib/intl.lib +0 -0
  387. data/vendor/local/lib/libasprintf.dll.a +0 -0
  388. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  389. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  390. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  391. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  392. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  393. data/vendor/local/lib/libintl.def +31 -0
  394. data/vendor/local/lib/libintl.dll.a +0 -0
  395. data/vendor/local/lib/pkgconfig/gio-2.0.pc +14 -0
  396. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  397. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  398. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  399. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  400. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  401. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  402. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  403. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  404. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  405. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  406. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  407. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  408. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  409. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  410. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  411. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  412. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  413. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  414. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  415. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  416. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  417. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  418. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  419. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  420. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  421. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  422. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  423. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  424. data/vendor/local/share/glib-2.0/gdb/glib.py +252 -0
  425. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  426. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  427. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +277 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1390 -0
  429. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +531 -0
  430. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  431. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +568 -0
  432. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +295 -0
  433. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  434. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  435. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +388 -0
  436. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +993 -0
  437. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +544 -0
  438. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  439. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  440. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  441. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7450 -0
  442. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +115 -0
  443. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +520 -0
  444. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  445. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  446. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3116 -0
  447. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  448. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  449. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  450. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  451. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +182 -0
  452. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +183 -0
  453. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  454. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  455. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  456. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  457. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +195 -0
  458. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  459. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  460. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  461. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  462. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +362 -0
  463. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  464. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  465. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +263 -0
  466. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +248 -0
  467. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1006 -0
  468. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  469. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  470. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +979 -0
  471. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2152 -0
  472. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  473. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +930 -0
  474. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +428 -0
  475. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +548 -0
  476. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +274 -0
  477. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +741 -0
  478. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  479. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  480. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  481. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +381 -0
  482. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +280 -0
  483. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  484. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  485. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +306 -0
  486. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  487. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  488. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +709 -0
  489. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +180 -0
  490. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +128 -0
  491. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  492. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  493. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1088 -0
  494. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +206 -0
  495. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +97 -0
  496. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +4499 -0
  497. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  498. data/vendor/local/share/gtk-doc/html/gio/ch01.html +171 -0
  499. data/vendor/local/share/gtk-doc/html/gio/ch02.html +45 -0
  500. data/vendor/local/share/gtk-doc/html/gio/ch03.html +80 -0
  501. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  502. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  503. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  504. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  505. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  506. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +96 -0
  507. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  508. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  509. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  510. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  511. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  512. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +465 -0
  513. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +381 -0
  514. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +163 -0
  515. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +163 -0
  516. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +927 -0
  517. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +328 -0
  518. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  519. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  520. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +918 -0
  521. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +107 -0
  522. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1235 -0
  523. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +1384 -0
  524. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  525. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +47 -0
  526. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  527. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  528. data/vendor/local/share/gtk-doc/html/gio/index.html +318 -0
  529. data/vendor/local/share/gtk-doc/html/gio/index.sgml +1795 -0
  530. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/gio/migrating.html +42 -0
  532. data/vendor/local/share/gtk-doc/html/gio/networking.html +57 -0
  533. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  534. data/vendor/local/share/gtk-doc/html/gio/pt02.html +293 -0
  535. data/vendor/local/share/gtk-doc/html/gio/resolver.html +47 -0
  536. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  537. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  538. data/vendor/local/share/gtk-doc/html/gio/style.css +257 -0
  539. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  540. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  541. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  542. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  543. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  544. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  545. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +563 -0
  546. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  547. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  548. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  549. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  550. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  551. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +419 -0
  552. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +389 -0
  553. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +413 -0
  554. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  555. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +340 -0
  556. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +7835 -0
  557. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +413 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +430 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2054 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1187 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1665 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2042 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1023 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1810 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +3798 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1815 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +629 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2556 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1029 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +703 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1045 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1523 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1466 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +204 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2648 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +483 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1283 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1212 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +466 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2947 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1290 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1719 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3379 -0
  616. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  617. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  618. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  619. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  620. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  621. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +314 -0
  622. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3356 -0
  623. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +150 -0
  624. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  625. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  626. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +438 -0
  627. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  628. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  629. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  630. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  631. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  632. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  633. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  634. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2395 -0
  635. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  636. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +302 -0
  637. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +112 -0
  638. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2084 -0
  639. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2556 -0
  640. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  641. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  642. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  643. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1171 -0
  644. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  645. data/vendor/local/share/gtk-doc/html/glib/index.html +336 -0
  646. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2717 -0
  647. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  648. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  649. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  650. data/vendor/local/share/gtk-doc/html/glib/style.css +257 -0
  651. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  652. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +72 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2577 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +355 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +295 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +406 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2355 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1423 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5242 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2609 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4227 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +413 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +230 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +723 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +757 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  703. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  704. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  705. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  706. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  707. data/vendor/local/share/gtk-doc/html/gobject/index.html +187 -0
  708. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +734 -0
  709. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  710. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  711. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  712. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  713. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  714. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  715. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +82 -0
  716. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  717. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  718. data/vendor/local/share/gtk-doc/html/gobject/style.css +257 -0
  719. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  720. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  721. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  722. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  723. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  724. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  725. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  726. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  729. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  731. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  735. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  736. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  738. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  743. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  744. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  750. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  751. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  753. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  754. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  760. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  761. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  762. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  763. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  766. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  770. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  771. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  772. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  780. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  781. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  783. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  787. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  789. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/locale.alias +77 -0
  792. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  795. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  797. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  799. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  801. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  802. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  805. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  806. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  807. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  808. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  810. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  813. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  814. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  816. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  818. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  822. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  823. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  825. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  826. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  828. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  830. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  831. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  832. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  834. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  835. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  836. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  837. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  838. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  839. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  840. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  841. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  842. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  843. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  844. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  845. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  846. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  847. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  848. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  849. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  850. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  851. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  852. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  853. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  854. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  855. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  856. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  857. data/vendor/local/share/man/man1/gettext.1 +69 -0
  858. data/vendor/local/share/man/man1/glib-genmarshal.1 +307 -0
  859. data/vendor/local/share/man/man1/glib-mkenums.1 +234 -0
  860. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  861. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  862. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  863. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  864. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  865. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  866. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  867. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  868. data/vendor/local/share/man/man3/gettext.3 +99 -0
  869. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  870. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  871. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  872. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  873. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  874. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  875. metadata +940 -0
@@ -0,0 +1,1719 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>Testing</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GLib Reference Manual">
8
+ <link rel="up" href="glib-utilities.html" title="GLib Utilities">
9
+ <link rel="prev" href="glib-Bookmark-file-parser.html" title="Bookmark file parser">
10
+ <link rel="next" href="glib-Windows-Compatibility-Functions.html" title="Windows Compatibility Functions">
11
+ <meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="glib-Bookmark-file-parser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="glib-utilities.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GLib Reference Manual</th>
21
+ <td><a accesskey="n" href="glib-Windows-Compatibility-Functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#glib-Testing.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#glib-Testing.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry" title="Testing">
30
+ <a name="glib-Testing"></a><div class="titlepage"></div>
31
+ <div class="refnamediv"><table width="100%"><tr>
32
+ <td valign="top">
33
+ <h2><span class="refentrytitle"><a name="glib-Testing.top_of_page"></a>Testing</span></h2>
34
+ <p>Testing — a test framework</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv" title="Synopsis">
39
+ <a name="glib-Testing.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">
41
+ #include &lt;glib.h&gt;
42
+
43
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-minimized-result" title="g_test_minimized_result ()">g_test_minimized_result</a> (<em class="parameter"><code><span class="type">double</span> minimized_quantity</code></em>,
44
+ <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
45
+ <em class="parameter"><code>...</code></em>);
46
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-maximized-result" title="g_test_maximized_result ()">g_test_maximized_result</a> (<em class="parameter"><code><span class="type">double</span> maximized_quantity</code></em>,
47
+ <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
48
+ <em class="parameter"><code>...</code></em>);
49
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()">g_test_init</a> (<em class="parameter"><code><span class="type">int</span> *argc</code></em>,
50
+ <em class="parameter"><code><span class="type">char</span> ***argv</code></em>,
51
+ <em class="parameter"><code>...</code></em>);
52
+ #define <a class="link" href="glib-Testing.html#g-test-quick" title="g_test_quick">g_test_quick</a>
53
+ #define <a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow">g_test_slow</a>
54
+ #define <a class="link" href="glib-Testing.html#g-test-thorough" title="g_test_thorough">g_test_thorough</a>
55
+ #define <a class="link" href="glib-Testing.html#g-test-perf" title="g_test_perf">g_test_perf</a>
56
+ #define <a class="link" href="glib-Testing.html#g-test-verbose" title="g_test_verbose">g_test_verbose</a>
57
+ #define <a class="link" href="glib-Testing.html#g-test-quiet" title="g_test_quiet">g_test_quiet</a>
58
+ <span class="returnvalue">int</span> <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()">g_test_run</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
59
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()">g_test_add_func</a> (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
60
+ <em class="parameter"><code><span class="type">void</span> (test_funcvoid) ()</code></em>);
61
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-add-data-func" title="g_test_add_data_func ()">g_test_add_data_func</a> (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
62
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
63
+ <em class="parameter"><code><span class="type">void</span> (test_funcgconstpointer) ()</code></em>);
64
+ #define <a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()">g_test_add</a> (testpath,
65
+ Fixture,
66
+ tdata,
67
+ fsetup,
68
+ ftest,
69
+ fteardown)
70
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-message" title="g_test_message ()">g_test_message</a> (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
71
+ <em class="parameter"><code>...</code></em>);
72
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-bug-base" title="g_test_bug_base ()">g_test_bug_base</a> (<em class="parameter"><code>const <span class="type">char</span> *uri_pattern</code></em>);
73
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-bug" title="g_test_bug ()">g_test_bug</a> (<em class="parameter"><code>const <span class="type">char</span> *bug_uri_snippet</code></em>);
74
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()">*GTestLogFatalFunc</a>) (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *log_domain</code></em>,
75
+ <em class="parameter"><code><a class="link" href="glib-Message-Logging.html#GLogLevelFlags" title="enum GLogLevelFlags"><span class="type">GLogLevelFlags</span></a> log_level</code></em>,
76
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *message</code></em>,
77
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
78
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-log-set-fatal-handler" title="g_test_log_set_fatal_handler ()">g_test_log_set_fatal_handler</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()"><span class="type">GTestLogFatalFunc</span></a> log_func</code></em>,
79
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
80
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-timer-start" title="g_test_timer_start ()">g_test_timer_start</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
81
+ <span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()">g_test_timer_elapsed</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
82
+ <span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-timer-last" title="g_test_timer_last ()">g_test_timer_last</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
83
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-queue-free" title="g_test_queue_free ()">g_test_queue_free</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> gfree_pointer</code></em>);
84
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()">g_test_queue_destroy</a> (<em class="parameter"><code><a class="link" href="glib-Datasets.html#GDestroyNotify" title="GDestroyNotify ()"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>,
85
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> destroy_data</code></em>);
86
+ #define <a class="link" href="glib-Testing.html#g-test-queue-unref" title="g_test_queue_unref()">g_test_queue_unref</a> (gobject)
87
+ enum <a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags">GTestTrapFlags</a>;
88
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()">g_test_trap_fork</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> usec_timeout</code></em>,
89
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> test_trap_flags</code></em>);
90
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-has-passed" title="g_test_trap_has_passed ()">g_test_trap_has_passed</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
91
+ <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-reached-timeout" title="g_test_trap_reached_timeout ()">g_test_trap_reached_timeout</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
92
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-passed" title="g_test_trap_assert_passed">g_test_trap_assert_passed</a>
93
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-failed" title="g_test_trap_assert_failed">g_test_trap_assert_failed</a>
94
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout" title="g_test_trap_assert_stdout()">g_test_trap_assert_stdout</a> (soutpattern)
95
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout-unmatched" title="g_test_trap_assert_stdout_unmatched()">g_test_trap_assert_stdout_unmatched</a> (soutpattern)
96
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr" title="g_test_trap_assert_stderr()">g_test_trap_assert_stderr</a> (serrpattern)
97
+ #define <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr-unmatched" title="g_test_trap_assert_stderr_unmatched()">g_test_trap_assert_stderr_unmatched</a> (serrpattern)
98
+ #define <a class="link" href="glib-Testing.html#g-test-rand-bit" title="g_test_rand_bit">g_test_rand_bit</a>
99
+ <a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()">g_test_rand_int</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
100
+ <a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> <a class="link" href="glib-Testing.html#g-test-rand-int-range" title="g_test_rand_int_range ()">g_test_rand_int_range</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> begin</code></em>,
101
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> end</code></em>);
102
+ <span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-rand-double" title="g_test_rand_double ()">g_test_rand_double</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
103
+ <span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-rand-double-range" title="g_test_rand_double_range ()">g_test_rand_double_range</a> (<em class="parameter"><code><span class="type">double</span> range_start</code></em>,
104
+ <em class="parameter"><code><span class="type">double</span> range_end</code></em>);
105
+ #define <a class="link" href="glib-Testing.html#g-assert" title="g_assert()">g_assert</a> (expr)
106
+ #define <a class="link" href="glib-Testing.html#g-assert-not-reached" title="g_assert_not_reached">g_assert_not_reached</a>
107
+ #define <a class="link" href="glib-Testing.html#g-assert-cmpstr" title="g_assert_cmpstr()">g_assert_cmpstr</a> (s1,
108
+ cmp,
109
+ s2)
110
+ #define <a class="link" href="glib-Testing.html#g-assert-cmpint" title="g_assert_cmpint()">g_assert_cmpint</a> (n1,
111
+ cmp,
112
+ n2)
113
+ #define <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()">g_assert_cmpuint</a> (n1,
114
+ cmp,
115
+ n2)
116
+ #define <a class="link" href="glib-Testing.html#g-assert-cmphex" title="g_assert_cmphex()">g_assert_cmphex</a> (n1,
117
+ cmp,
118
+ n2)
119
+ #define <a class="link" href="glib-Testing.html#g-assert-cmpfloat" title="g_assert_cmpfloat()">g_assert_cmpfloat</a> (n1,
120
+ cmp,
121
+ n2)
122
+ #define <a class="link" href="glib-Testing.html#g-assert-no-error" title="g_assert_no_error()">g_assert_no_error</a> (err)
123
+ #define <a class="link" href="glib-Testing.html#g-assert-error" title="g_assert_error()">g_assert_error</a> (err,
124
+ dom,
125
+ c)
126
+ typedef <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase">GTestCase</a>;
127
+ typedef <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite">GTestSuite</a>;
128
+ <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="returnvalue">GTestCase</span></a>* <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()">g_test_create_case</a> (<em class="parameter"><code>const <span class="type">char</span> *test_name</code></em>,
129
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> data_size</code></em>,
130
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
131
+ <em class="parameter"><code><span class="type">void</span> (data_setupvoid) ()</code></em>,
132
+ <em class="parameter"><code><span class="type">void</span> (data_testvoid) ()</code></em>,
133
+ <em class="parameter"><code><span class="type">void</span> (data_teardownvoid) ()</code></em>);
134
+ <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a>* <a class="link" href="glib-Testing.html#g-test-create-suite" title="g_test_create_suite ()">g_test_create_suite</a> (<em class="parameter"><code>const <span class="type">char</span> *suite_name</code></em>);
135
+ <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a>* <a class="link" href="glib-Testing.html#g-test-get-root" title="g_test_get_root ()">g_test_get_root</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
136
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-suite-add" title="g_test_suite_add ()">g_test_suite_add</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
137
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a> *test_case</code></em>);
138
+ <span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-suite-add-suite" title="g_test_suite_add_suite ()">g_test_suite_add_suite</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
139
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *nestedsuite</code></em>);
140
+ <span class="returnvalue">int</span> <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()">g_test_run_suite</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>);
141
+ </pre>
142
+ </div>
143
+ <div class="refsect1" title="Description">
144
+ <a name="glib-Testing.description"></a><h2>Description</h2>
145
+ <p>
146
+ GLib provides a framework for writing and maintaining unit tests
147
+ in parallel to the code they are testing. The API is designed according
148
+ to established concepts found in the other test frameworks (JUnit, NUnit,
149
+ RUnit), which in turn is based on smalltalk unit testing concepts.
150
+ </p>
151
+ <div class="variablelist"><table border="0">
152
+ <col align="left" valign="top">
153
+ <tbody>
154
+ <tr>
155
+ <td><p><span class="term">Test case</span></p></td>
156
+ <td><p>
157
+ Tests (test methods) are grouped together with their
158
+ fixture into test cases.
159
+ </p></td>
160
+ </tr>
161
+ <tr>
162
+ <td><p><span class="term">Fixture</span></p></td>
163
+ <td><p>
164
+ A test fixture consists of fixture data and setup and teardown methods
165
+ to establish the environment for the test functions. We use fresh
166
+ fixtures, i.e. fixtures are newly set up and torn down around each test
167
+ invocation to avoid dependencies between tests.
168
+ </p></td>
169
+ </tr>
170
+ <tr>
171
+ <td><p><span class="term">Test suite</span></p></td>
172
+ <td><p>
173
+ Test cases can be grouped into test suites, to allow subsets of the
174
+ available tests to be run. Test suites can be grouped into other test
175
+ suites as well.
176
+ </p></td>
177
+ </tr>
178
+ </tbody>
179
+ </table></div>
180
+ <p>
181
+ The API is designed to handle creation and registration of test suites and
182
+ test cases implicitly. A simple call like
183
+ </p>
184
+ <div class="informalexample">
185
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
186
+ <tbody>
187
+ <tr>
188
+ <td class="listing_lines" align="right"><pre>1</pre></td>
189
+ <td class="listing_code"><pre class="programlisting"><span class="function"><a href="glib-Testing.html#g-test-add-func">g_test_add_func</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"/misc/assertions"</span><span class="symbol">,</span><span class="normal"> test_assertions</span><span class="symbol">);</span></pre></td>
190
+ </tr>
191
+ </tbody>
192
+ </table>
193
+ </div>
194
+
195
+ <p>
196
+ creates a test suite called "misc" with a single test case named "assertions",
197
+ which consists of running the test_assertions function.
198
+ </p>
199
+ <p>
200
+ In addition to the traditional <a class="link" href="glib-Testing.html#g-assert" title="g_assert()"><code class="function">g_assert()</code></a>, the test framework provides
201
+ an extended set of assertions for string and numerical comparisons:
202
+ <a class="link" href="glib-Testing.html#g-assert-cmpfloat" title="g_assert_cmpfloat()"><code class="function">g_assert_cmpfloat()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmpint" title="g_assert_cmpint()"><code class="function">g_assert_cmpint()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()"><code class="function">g_assert_cmpuint()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmphex" title="g_assert_cmphex()"><code class="function">g_assert_cmphex()</code></a>,
203
+ <a class="link" href="glib-Testing.html#g-assert-cmpstr" title="g_assert_cmpstr()"><code class="function">g_assert_cmpstr()</code></a>. The advantage of these variants over plain <a class="link" href="glib-Testing.html#g-assert" title="g_assert()"><code class="function">g_assert()</code></a>
204
+ is that the assertion messages can be more elaborate, and include the
205
+ values of the compared entities.
206
+ </p>
207
+ <p>
208
+ GLib ships with two utilities called gtester and gtester-report to
209
+ facilitate running tests and producing nicely formatted test reports.
210
+ </p>
211
+ </div>
212
+ <div class="refsect1" title="Details">
213
+ <a name="glib-Testing.details"></a><h2>Details</h2>
214
+ <div class="refsect2" title="g_test_minimized_result ()">
215
+ <a name="g-test-minimized-result"></a><h3>g_test_minimized_result ()</h3>
216
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_minimized_result (<em class="parameter"><code><span class="type">double</span> minimized_quantity</code></em>,
217
+ <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
218
+ <em class="parameter"><code>...</code></em>);</pre>
219
+ <p>
220
+ Report the result of a performance or measurement test.
221
+ The test should generally strive to minimize the reported
222
+ quantities (smaller values are better than larger ones),
223
+ this and <em class="parameter"><code>minimized_quantity</code></em> can determine sorting
224
+ order for test result reports.
225
+ </p>
226
+ <div class="variablelist"><table border="0">
227
+ <col align="left" valign="top">
228
+ <tbody>
229
+ <tr>
230
+ <td><p><span class="term"><em class="parameter"><code>minimized_quantity</code></em> :</span></p></td>
231
+ <td>the reported value
232
+ </td>
233
+ </tr>
234
+ <tr>
235
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
236
+ <td>the format string of the report message
237
+ </td>
238
+ </tr>
239
+ <tr>
240
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
241
+ <td>arguments to pass to the <code class="function">printf()</code> function
242
+ </td>
243
+ </tr>
244
+ </tbody>
245
+ </table></div>
246
+ <p class="since">Since 2.16</p>
247
+ </div>
248
+ <hr>
249
+ <div class="refsect2" title="g_test_maximized_result ()">
250
+ <a name="g-test-maximized-result"></a><h3>g_test_maximized_result ()</h3>
251
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_maximized_result (<em class="parameter"><code><span class="type">double</span> maximized_quantity</code></em>,
252
+ <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
253
+ <em class="parameter"><code>...</code></em>);</pre>
254
+ <p>
255
+ Report the result of a performance or measurement test.
256
+ The test should generally strive to maximize the reported
257
+ quantities (larger values are better than smaller ones),
258
+ this and <em class="parameter"><code>maximized_quantity</code></em> can determine sorting
259
+ order for test result reports.
260
+ </p>
261
+ <div class="variablelist"><table border="0">
262
+ <col align="left" valign="top">
263
+ <tbody>
264
+ <tr>
265
+ <td><p><span class="term"><em class="parameter"><code>maximized_quantity</code></em> :</span></p></td>
266
+ <td>the reported value
267
+ </td>
268
+ </tr>
269
+ <tr>
270
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
271
+ <td>the format string of the report message
272
+ </td>
273
+ </tr>
274
+ <tr>
275
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
276
+ <td>arguments to pass to the <code class="function">printf()</code> function
277
+ </td>
278
+ </tr>
279
+ </tbody>
280
+ </table></div>
281
+ <p class="since">Since 2.16</p>
282
+ </div>
283
+ <hr>
284
+ <div class="refsect2" title="g_test_init ()">
285
+ <a name="g-test-init"></a><h3>g_test_init ()</h3>
286
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_init (<em class="parameter"><code><span class="type">int</span> *argc</code></em>,
287
+ <em class="parameter"><code><span class="type">char</span> ***argv</code></em>,
288
+ <em class="parameter"><code>...</code></em>);</pre>
289
+ <p>
290
+ Initialize the GLib testing framework, e.g. by seeding the
291
+ test random number generator, the name for <a class="link" href="glib-Miscellaneous-Utility-Functions.html#g-get-prgname" title="g_get_prgname ()"><code class="function">g_get_prgname()</code></a>
292
+ and parsing test related command line args.
293
+ So far, the following arguments are understood:
294
+ </p>
295
+ <div class="variablelist"><table border="0">
296
+ <col align="left" valign="top">
297
+ <tbody>
298
+ <tr>
299
+ <td><p><span class="term"><code class="option">-l</code></span></p></td>
300
+ <td><p>
301
+ list test cases available in a test executable.
302
+ </p></td>
303
+ </tr>
304
+ <tr>
305
+ <td><p><span class="term"><code class="option">--seed=<em class="replaceable"><code>RANDOMSEED</code></em></code></span></p></td>
306
+ <td><p>
307
+ provide a random seed to reproduce test runs using random numbers.
308
+ </p></td>
309
+ </tr>
310
+ <tr>
311
+ <td><p><span class="term"><code class="option">--verbose</code></span></p></td>
312
+ <td><p>run tests verbosely.</p></td>
313
+ </tr>
314
+ <tr>
315
+ <td><p><span class="term"><code class="option">-q</code>, <code class="option">--quiet</code></span></p></td>
316
+ <td><p>run tests quietly.</p></td>
317
+ </tr>
318
+ <tr>
319
+ <td><p><span class="term"><code class="option">-p <em class="replaceable"><code>TESTPATH</code></em></code></span></p></td>
320
+ <td><p>
321
+ execute all tests matching <em class="replaceable"><code>TESTPATH</code></em>.
322
+ </p></td>
323
+ </tr>
324
+ <tr>
325
+ <td><p><span class="term"><code class="option">-m {perf|slow|thorough|quick}</code></span></p></td>
326
+ <td>
327
+ <p>
328
+ execute tests according to these test modes:
329
+ </p>
330
+ <div class="variablelist"><table border="0">
331
+ <col align="left" valign="top">
332
+ <tbody>
333
+ <tr>
334
+ <td><p><span class="term">perf</span></p></td>
335
+ <td><p>
336
+ performance tests, may take long and report results.
337
+ </p></td>
338
+ </tr>
339
+ <tr>
340
+ <td><p><span class="term">slow, thorough</span></p></td>
341
+ <td><p>
342
+ slow and thorough tests, may take quite long and
343
+ maximize coverage.
344
+ </p></td>
345
+ </tr>
346
+ <tr>
347
+ <td><p><span class="term">quick</span></p></td>
348
+ <td><p>
349
+ quick tests, should run really quickly and give good coverage.
350
+ </p></td>
351
+ </tr>
352
+ </tbody>
353
+ </table></div>
354
+ <p>
355
+ </p>
356
+ </td>
357
+ </tr>
358
+ <tr>
359
+ <td><p><span class="term"><code class="option">--debug-log</code></span></p></td>
360
+ <td><p>debug test logging output.</p></td>
361
+ </tr>
362
+ <tr>
363
+ <td><p><span class="term"><code class="option">-k</code>, <code class="option">--keep-going</code></span></p></td>
364
+ <td><p>gtester-specific argument.</p></td>
365
+ </tr>
366
+ <tr>
367
+ <td><p><span class="term"><code class="option">--GTestLogFD <em class="replaceable"><code>N</code></em></code></span></p></td>
368
+ <td><p>gtester-specific argument.</p></td>
369
+ </tr>
370
+ <tr>
371
+ <td><p><span class="term"><code class="option">--GTestSkipCount <em class="replaceable"><code>N</code></em></code></span></p></td>
372
+ <td><p>gtester-specific argument.</p></td>
373
+ </tr>
374
+ </tbody>
375
+ </table></div>
376
+ <p>
377
+ </p>
378
+ <div class="variablelist"><table border="0">
379
+ <col align="left" valign="top">
380
+ <tbody>
381
+ <tr>
382
+ <td><p><span class="term"><em class="parameter"><code>argc</code></em> :</span></p></td>
383
+ <td>Address of the <em class="parameter"><code>argc</code></em> parameter of the <code class="function">main()</code> function.
384
+ Changed if any arguments were handled.
385
+ </td>
386
+ </tr>
387
+ <tr>
388
+ <td><p><span class="term"><em class="parameter"><code>argv</code></em> :</span></p></td>
389
+ <td>Address of the <em class="parameter"><code>argv</code></em> parameter of <code class="function">main()</code>.
390
+ Any parameters understood by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a> stripped before return.
391
+ </td>
392
+ </tr>
393
+ <tr>
394
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
395
+ <td>Reserved for future extension. Currently, you must pass <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.
396
+ </td>
397
+ </tr>
398
+ </tbody>
399
+ </table></div>
400
+ <p class="since">Since 2.16</p>
401
+ </div>
402
+ <hr>
403
+ <div class="refsect2" title="g_test_quick">
404
+ <a name="g-test-quick"></a><h3>g_test_quick</h3>
405
+ <pre class="programlisting">#define g_test_quick()</pre>
406
+ <p>
407
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in quick mode.
408
+ </p>
409
+ </div>
410
+ <hr>
411
+ <div class="refsect2" title="g_test_slow">
412
+ <a name="g-test-slow"></a><h3>g_test_slow</h3>
413
+ <pre class="programlisting">#define g_test_slow()</pre>
414
+ <p>
415
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in slow mode.
416
+ </p>
417
+ </div>
418
+ <hr>
419
+ <div class="refsect2" title="g_test_thorough">
420
+ <a name="g-test-thorough"></a><h3>g_test_thorough</h3>
421
+ <pre class="programlisting">#define g_test_thorough()</pre>
422
+ <p>
423
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in thorough mode.
424
+ </p>
425
+ </div>
426
+ <hr>
427
+ <div class="refsect2" title="g_test_perf">
428
+ <a name="g-test-perf"></a><h3>g_test_perf</h3>
429
+ <pre class="programlisting">#define g_test_perf()</pre>
430
+ <p>
431
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in performance mode.
432
+ </p>
433
+ </div>
434
+ <hr>
435
+ <div class="refsect2" title="g_test_verbose">
436
+ <a name="g-test-verbose"></a><h3>g_test_verbose</h3>
437
+ <pre class="programlisting">#define g_test_verbose()</pre>
438
+ <p>
439
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in verbose mode.
440
+ </p>
441
+ </div>
442
+ <hr>
443
+ <div class="refsect2" title="g_test_quiet">
444
+ <a name="g-test-quiet"></a><h3>g_test_quiet</h3>
445
+ <pre class="programlisting">#define g_test_quiet()</pre>
446
+ <p>
447
+ Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in quiet mode.
448
+ </p>
449
+ </div>
450
+ <hr>
451
+ <div class="refsect2" title="g_test_run ()">
452
+ <a name="g-test-run"></a><h3>g_test_run ()</h3>
453
+ <pre class="programlisting"><span class="returnvalue">int</span> g_test_run (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
454
+ <p>
455
+ Runs all tests under the toplevel suite which can be retrieved
456
+ with <a class="link" href="glib-Testing.html#g-test-get-root" title="g_test_get_root ()"><code class="function">g_test_get_root()</code></a>. Similar to <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a>, the test
457
+ cases to be run are filtered according to
458
+ test path arguments (-p <em class="replaceable"><code>testpath</code></em>) as
459
+ parsed by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a>.
460
+ <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a> or <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()"><code class="function">g_test_run()</code></a> may only be called once
461
+ in a program.
462
+ </p>
463
+ <div class="variablelist"><table border="0">
464
+ <col align="left" valign="top">
465
+ <tbody><tr>
466
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
467
+ <td> 0 on success
468
+
469
+ </td>
470
+ </tr></tbody>
471
+ </table></div>
472
+ <p class="since">Since 2.16</p>
473
+ </div>
474
+ <hr>
475
+ <div class="refsect2" title="g_test_add_func ()">
476
+ <a name="g-test-add-func"></a><h3>g_test_add_func ()</h3>
477
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_add_func (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
478
+ <em class="parameter"><code><span class="type">void</span> (test_funcvoid) ()</code></em>);</pre>
479
+ <p>
480
+ Create a new test case, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>. However
481
+ the test is assumed to use no fixture, and test suites are automatically
482
+ created on the fly and added to the root fixture, based on the
483
+ slash-separated portions of <em class="parameter"><code>testpath</code></em>.
484
+ </p>
485
+ <div class="variablelist"><table border="0">
486
+ <col align="left" valign="top">
487
+ <tbody><tr>
488
+ <td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
489
+ <td>Slash-separated test case path name for the test.
490
+ </td>
491
+ </tr></tbody>
492
+ </table></div>
493
+ <p class="since">Since 2.16</p>
494
+ </div>
495
+ <hr>
496
+ <div class="refsect2" title="g_test_add_data_func ()">
497
+ <a name="g-test-add-data-func"></a><h3>g_test_add_data_func ()</h3>
498
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_add_data_func (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
499
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
500
+ <em class="parameter"><code><span class="type">void</span> (test_funcgconstpointer) ()</code></em>);</pre>
501
+ <p>
502
+ Create a new test case, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>. However
503
+ the test is assumed to use no fixture, and test suites are automatically
504
+ created on the fly and added to the root fixture, based on the
505
+ slash-separated portions of <em class="parameter"><code>testpath</code></em>. The <em class="parameter"><code>test_data</code></em> argument
506
+ will be passed as first argument to <em class="parameter"><code>test_func</code></em>.
507
+ </p>
508
+ <div class="variablelist"><table border="0">
509
+ <col align="left" valign="top">
510
+ <tbody>
511
+ <tr>
512
+ <td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
513
+ <td>Slash-separated test case path name for the test.
514
+ </td>
515
+ </tr>
516
+ <tr>
517
+ <td><p><span class="term"><em class="parameter"><code>test_data</code></em> :</span></p></td>
518
+ <td>Test data argument for the test function.
519
+ </td>
520
+ </tr>
521
+ <tr>
522
+ <td><p><span class="term"><em class="parameter"><code>gconstpointer</code></em> :</span></p></td>
523
+ <td>
524
+ </td>
525
+ </tr>
526
+ </tbody>
527
+ </table></div>
528
+ <p class="since">Since 2.16</p>
529
+ </div>
530
+ <hr>
531
+ <div class="refsect2" title="g_test_add()">
532
+ <a name="g-test-add"></a><h3>g_test_add()</h3>
533
+ <pre class="programlisting">#define g_test_add(testpath, Fixture, tdata, fsetup, ftest, fteardown)</pre>
534
+ <p>
535
+ Hook up a new test case at <em class="parameter"><code>testpath</code></em>, similar to <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()"><code class="function">g_test_add_func()</code></a>.
536
+ A fixture data structure with setup and teardown function may be provided
537
+ though, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>.
538
+ <a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()"><code class="function">g_test_add()</code></a> is implemented as a macro, so that the <code class="function">fsetup()</code>, <code class="function">ftest()</code> and
539
+ <code class="function">fteardown()</code> callbacks can expect a <em class="parameter"><code>Fixture</code></em> pointer as first argument in
540
+ a type safe manner.
541
+ </p>
542
+ <div class="variablelist"><table border="0">
543
+ <col align="left" valign="top">
544
+ <tbody>
545
+ <tr>
546
+ <td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
547
+ <td>The test path for a new test case.
548
+ </td>
549
+ </tr>
550
+ <tr>
551
+ <td><p><span class="term"><em class="parameter"><code>Fixture</code></em> :</span></p></td>
552
+ <td>The type of a fixture data structure.
553
+ </td>
554
+ </tr>
555
+ <tr>
556
+ <td><p><span class="term"><em class="parameter"><code>tdata</code></em> :</span></p></td>
557
+ <td>Data argument for the test functions.
558
+ </td>
559
+ </tr>
560
+ <tr>
561
+ <td><p><span class="term"><em class="parameter"><code>fsetup</code></em> :</span></p></td>
562
+ <td>The function to set up the fixture data.
563
+ </td>
564
+ </tr>
565
+ <tr>
566
+ <td><p><span class="term"><em class="parameter"><code>ftest</code></em> :</span></p></td>
567
+ <td>The actual test function.
568
+ </td>
569
+ </tr>
570
+ <tr>
571
+ <td><p><span class="term"><em class="parameter"><code>fteardown</code></em> :</span></p></td>
572
+ <td>The function to tear down the fixture data.
573
+ </td>
574
+ </tr>
575
+ </tbody>
576
+ </table></div>
577
+ <p class="since">Since 2.16</p>
578
+ </div>
579
+ <hr>
580
+ <div class="refsect2" title="g_test_message ()">
581
+ <a name="g-test-message"></a><h3>g_test_message ()</h3>
582
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_message (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
583
+ <em class="parameter"><code>...</code></em>);</pre>
584
+ <p>
585
+ Add a message to the test report.
586
+ </p>
587
+ <div class="variablelist"><table border="0">
588
+ <col align="left" valign="top">
589
+ <tbody>
590
+ <tr>
591
+ <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
592
+ <td>the format string
593
+ </td>
594
+ </tr>
595
+ <tr>
596
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
597
+ <td>printf-like arguments to <em class="parameter"><code>format</code></em>
598
+ </td>
599
+ </tr>
600
+ </tbody>
601
+ </table></div>
602
+ <p class="since">Since 2.16</p>
603
+ </div>
604
+ <hr>
605
+ <div class="refsect2" title="g_test_bug_base ()">
606
+ <a name="g-test-bug-base"></a><h3>g_test_bug_base ()</h3>
607
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_bug_base (<em class="parameter"><code>const <span class="type">char</span> *uri_pattern</code></em>);</pre>
608
+ <p>
609
+ Specify the base URI for bug reports.
610
+ </p>
611
+ <p>
612
+ The base URI is used to construct bug report messages for
613
+ <a class="link" href="glib-Testing.html#g-test-message" title="g_test_message ()"><code class="function">g_test_message()</code></a> when <a class="link" href="glib-Testing.html#g-test-bug" title="g_test_bug ()"><code class="function">g_test_bug()</code></a> is called.
614
+ Calling this function outside of a test case sets the
615
+ default base URI for all test cases. Calling it from within
616
+ a test case changes the base URI for the scope of the test
617
+ case only.
618
+ Bug URIs are constructed by appending a bug specific URI
619
+ portion to <em class="parameter"><code>uri_pattern</code></em>, or by replacing the special string
620
+ '<code class="literal">s</code>' within <em class="parameter"><code>uri_pattern</code></em> if that is present.
621
+ </p>
622
+ <div class="variablelist"><table border="0">
623
+ <col align="left" valign="top">
624
+ <tbody><tr>
625
+ <td><p><span class="term"><em class="parameter"><code>uri_pattern</code></em> :</span></p></td>
626
+ <td>the base pattern for bug URIs
627
+ </td>
628
+ </tr></tbody>
629
+ </table></div>
630
+ <p class="since">Since 2.16</p>
631
+ </div>
632
+ <hr>
633
+ <div class="refsect2" title="g_test_bug ()">
634
+ <a name="g-test-bug"></a><h3>g_test_bug ()</h3>
635
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_bug (<em class="parameter"><code>const <span class="type">char</span> *bug_uri_snippet</code></em>);</pre>
636
+ <p>
637
+ This function adds a message to test reports that
638
+ associates a bug URI with a test case.
639
+ Bug URIs are constructed from a base URI set with <a class="link" href="glib-Testing.html#g-test-bug-base" title="g_test_bug_base ()"><code class="function">g_test_bug_base()</code></a>
640
+ and <em class="parameter"><code>bug_uri_snippet</code></em>.
641
+ </p>
642
+ <div class="variablelist"><table border="0">
643
+ <col align="left" valign="top">
644
+ <tbody><tr>
645
+ <td><p><span class="term"><em class="parameter"><code>bug_uri_snippet</code></em> :</span></p></td>
646
+ <td>Bug specific bug tracker URI portion.
647
+ </td>
648
+ </tr></tbody>
649
+ </table></div>
650
+ <p class="since">Since 2.16</p>
651
+ </div>
652
+ <hr>
653
+ <div class="refsect2" title="GTestLogFatalFunc ()">
654
+ <a name="GTestLogFatalFunc"></a><h3>GTestLogFatalFunc ()</h3>
655
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (*GTestLogFatalFunc) (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *log_domain</code></em>,
656
+ <em class="parameter"><code><a class="link" href="glib-Message-Logging.html#GLogLevelFlags" title="enum GLogLevelFlags"><span class="type">GLogLevelFlags</span></a> log_level</code></em>,
657
+ <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *message</code></em>,
658
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
659
+ <p>
660
+ Specifies the prototype of fatal log handler functions.
661
+ </p>
662
+ <div class="variablelist"><table border="0">
663
+ <col align="left" valign="top">
664
+ <tbody>
665
+ <tr>
666
+ <td><p><span class="term"><em class="parameter"><code>log_domain</code></em> :</span></p></td>
667
+ <td>the log domain of the message
668
+ </td>
669
+ </tr>
670
+ <tr>
671
+ <td><p><span class="term"><em class="parameter"><code>log_level</code></em> :</span></p></td>
672
+ <td>the log level of the message (including the fatal and recursion flags)
673
+ </td>
674
+ </tr>
675
+ <tr>
676
+ <td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
677
+ <td>the message to process
678
+ </td>
679
+ </tr>
680
+ <tr>
681
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
682
+ <td>user data, set in <a class="link" href="glib-Testing.html#g-test-log-set-fatal-handler" title="g_test_log_set_fatal_handler ()"><code class="function">g_test_log_set_fatal_handler()</code></a>
683
+ </td>
684
+ </tr>
685
+ <tr>
686
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
687
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the program should abort, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise
688
+
689
+ </td>
690
+ </tr>
691
+ </tbody>
692
+ </table></div>
693
+ <p class="since">Since 2.22</p>
694
+ </div>
695
+ <hr>
696
+ <div class="refsect2" title="g_test_log_set_fatal_handler ()">
697
+ <a name="g-test-log-set-fatal-handler"></a><h3>g_test_log_set_fatal_handler ()</h3>
698
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_log_set_fatal_handler (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()"><span class="type">GTestLogFatalFunc</span></a> log_func</code></em>,
699
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
700
+ <p>
701
+ Installs a non-error fatal log handler which can be
702
+ used to decide whether log messages which are counted
703
+ as fatal abort the program.
704
+ </p>
705
+ <p>
706
+ The use case here is that you are running a test case
707
+ that depends on particular libraries or circumstances
708
+ and cannot prevent certain known critical or warning
709
+ messages. So you install a handler that compares the
710
+ domain and message to precisely not abort in such a case.
711
+ </p>
712
+ <p>
713
+ Note that the handler is reset at the beginning of
714
+ any test case, so you have to set it inside each test
715
+ function which needs the special behavior.
716
+ </p>
717
+ <p>
718
+ This handler has no effect on g_error messages.
719
+ </p>
720
+ <div class="variablelist"><table border="0">
721
+ <col align="left" valign="top">
722
+ <tbody>
723
+ <tr>
724
+ <td><p><span class="term"><em class="parameter"><code>log_func</code></em> :</span></p></td>
725
+ <td>the log handler function.
726
+ </td>
727
+ </tr>
728
+ <tr>
729
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
730
+ <td>data passed to the log handler.
731
+ </td>
732
+ </tr>
733
+ </tbody>
734
+ </table></div>
735
+ <p class="since">Since 2.22</p>
736
+ </div>
737
+ <hr>
738
+ <div class="refsect2" title="g_test_timer_start ()">
739
+ <a name="g-test-timer-start"></a><h3>g_test_timer_start ()</h3>
740
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_timer_start (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
741
+ <p>
742
+ Start a timing test. Call <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a> when the task is supposed
743
+ to be done. Call this function again to restart the timer.
744
+ </p>
745
+ <p class="since">Since 2.16</p>
746
+ </div>
747
+ <hr>
748
+ <div class="refsect2" title="g_test_timer_elapsed ()">
749
+ <a name="g-test-timer-elapsed"></a><h3>g_test_timer_elapsed ()</h3>
750
+ <pre class="programlisting"><span class="returnvalue">double</span> g_test_timer_elapsed (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
751
+ <p>
752
+ Get the time since the last start of the timer with <a class="link" href="glib-Testing.html#g-test-timer-start" title="g_test_timer_start ()"><code class="function">g_test_timer_start()</code></a>.
753
+ </p>
754
+ <div class="variablelist"><table border="0">
755
+ <col align="left" valign="top">
756
+ <tbody><tr>
757
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
758
+ <td> the time since the last start of the timer, as a double
759
+
760
+ </td>
761
+ </tr></tbody>
762
+ </table></div>
763
+ <p class="since">Since 2.16</p>
764
+ </div>
765
+ <hr>
766
+ <div class="refsect2" title="g_test_timer_last ()">
767
+ <a name="g-test-timer-last"></a><h3>g_test_timer_last ()</h3>
768
+ <pre class="programlisting"><span class="returnvalue">double</span> g_test_timer_last (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
769
+ <p>
770
+ Report the last result of <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a>.
771
+ </p>
772
+ <div class="variablelist"><table border="0">
773
+ <col align="left" valign="top">
774
+ <tbody><tr>
775
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
776
+ <td> the last result of <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a>, as a double
777
+
778
+ </td>
779
+ </tr></tbody>
780
+ </table></div>
781
+ <p class="since">Since 2.16</p>
782
+ </div>
783
+ <hr>
784
+ <div class="refsect2" title="g_test_queue_free ()">
785
+ <a name="g-test-queue-free"></a><h3>g_test_queue_free ()</h3>
786
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_queue_free (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> gfree_pointer</code></em>);</pre>
787
+ <p>
788
+ Enqueue a pointer to be released with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> during the next
789
+ teardown phase. This is equivalent to calling <a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a>
790
+ with a destroy callback of <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>.
791
+ </p>
792
+ <div class="variablelist"><table border="0">
793
+ <col align="left" valign="top">
794
+ <tbody><tr>
795
+ <td><p><span class="term"><em class="parameter"><code>gfree_pointer</code></em> :</span></p></td>
796
+ <td>the pointer to be stored.
797
+ </td>
798
+ </tr></tbody>
799
+ </table></div>
800
+ <p class="since">Since 2.16</p>
801
+ </div>
802
+ <hr>
803
+ <div class="refsect2" title="g_test_queue_destroy ()">
804
+ <a name="g-test-queue-destroy"></a><h3>g_test_queue_destroy ()</h3>
805
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_queue_destroy (<em class="parameter"><code><a class="link" href="glib-Datasets.html#GDestroyNotify" title="GDestroyNotify ()"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>,
806
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> destroy_data</code></em>);</pre>
807
+ <p>
808
+ This function enqueus a callback @<code class="function">destroy_func()</code> to be executed
809
+ during the next test case teardown phase. This is most useful
810
+ to auto destruct allocted test resources at the end of a test run.
811
+ Resources are released in reverse queue order, that means enqueueing
812
+ callback A before callback B will cause <code class="function">B()</code> to be called before
813
+ <code class="function">A()</code> during teardown.
814
+ </p>
815
+ <div class="variablelist"><table border="0">
816
+ <col align="left" valign="top">
817
+ <tbody>
818
+ <tr>
819
+ <td><p><span class="term"><em class="parameter"><code>destroy_func</code></em> :</span></p></td>
820
+ <td>Destroy callback for teardown phase.
821
+ </td>
822
+ </tr>
823
+ <tr>
824
+ <td><p><span class="term"><em class="parameter"><code>destroy_data</code></em> :</span></p></td>
825
+ <td>Destroy callback data.
826
+ </td>
827
+ </tr>
828
+ </tbody>
829
+ </table></div>
830
+ <p class="since">Since 2.16</p>
831
+ </div>
832
+ <hr>
833
+ <div class="refsect2" title="g_test_queue_unref()">
834
+ <a name="g-test-queue-unref"></a><h3>g_test_queue_unref()</h3>
835
+ <pre class="programlisting">#define g_test_queue_unref(gobject)</pre>
836
+ <p>
837
+ Enqueue an object to be released with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> during
838
+ the next teardown phase. This is equivalent to calling <a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a>
839
+ with a destroy callback of <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
840
+ </p>
841
+ <div class="variablelist"><table border="0">
842
+ <col align="left" valign="top">
843
+ <tbody><tr>
844
+ <td><p><span class="term"><em class="parameter"><code>gobject</code></em> :</span></p></td>
845
+ <td>the object to unref
846
+ </td>
847
+ </tr></tbody>
848
+ </table></div>
849
+ <p class="since">Since 2.16</p>
850
+ </div>
851
+ <hr>
852
+ <div class="refsect2" title="enum GTestTrapFlags">
853
+ <a name="GTestTrapFlags"></a><h3>enum GTestTrapFlags</h3>
854
+ <pre class="programlisting">typedef enum {
855
+ G_TEST_TRAP_SILENCE_STDOUT = 1 &lt;&lt; 7,
856
+ G_TEST_TRAP_SILENCE_STDERR = 1 &lt;&lt; 8,
857
+ G_TEST_TRAP_INHERIT_STDIN = 1 &lt;&lt; 9
858
+ } GTestTrapFlags;
859
+ </pre>
860
+ <p>
861
+ Test traps are guards around forked tests. These flags
862
+ determine what traps to set.
863
+ </p>
864
+ <div class="variablelist"><table border="0">
865
+ <col align="left" valign="top">
866
+ <tbody>
867
+ <tr>
868
+ <td><p><a name="G-TEST-TRAP-SILENCE-STDOUT:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_SILENCE_STDOUT</code></span></p></td>
869
+ <td>Redirect stdout of the test child to
870
+ <code class="filename">/dev/null</code> so it cannot be observed on the
871
+ console during test runs. The actual output is still captured
872
+ though to allow later tests with <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout" title="g_test_trap_assert_stdout()"><code class="function">g_test_trap_assert_stdout()</code></a>.
873
+ </td>
874
+ </tr>
875
+ <tr>
876
+ <td><p><a name="G-TEST-TRAP-SILENCE-STDERR:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_SILENCE_STDERR</code></span></p></td>
877
+ <td>Redirect stderr of the test child to
878
+ <code class="filename">/dev/null</code> so it cannot be observed on the
879
+ console during test runs. The actual output is still captured
880
+ though to allow later tests with <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr" title="g_test_trap_assert_stderr()"><code class="function">g_test_trap_assert_stderr()</code></a>.
881
+ </td>
882
+ </tr>
883
+ <tr>
884
+ <td><p><a name="G-TEST-TRAP-INHERIT-STDIN:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_INHERIT_STDIN</code></span></p></td>
885
+ <td>If this flag is given, stdin of the forked
886
+ child process is shared with stdin of its parent process. It is
887
+ redirected to <code class="filename">/dev/null</code> otherwise.
888
+ </td>
889
+ </tr>
890
+ </tbody>
891
+ </table></div>
892
+ </div>
893
+ <hr>
894
+ <div class="refsect2" title="g_test_trap_fork ()">
895
+ <a name="g-test-trap-fork"></a><h3>g_test_trap_fork ()</h3>
896
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_fork (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> usec_timeout</code></em>,
897
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> test_trap_flags</code></em>);</pre>
898
+ <p>
899
+ Fork the current test program to execute a test case that might
900
+ not return or that might abort. The forked test case is aborted
901
+ and considered failing if its run time exceeds <em class="parameter"><code>usec_timeout</code></em>.
902
+ </p>
903
+ <p>
904
+ The forking behavior can be configured with the <a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> flags.
905
+ </p>
906
+ <p>
907
+ In the following example, the test code forks, the forked child
908
+ process produces some sample output and exits successfully.
909
+ The forking parent process then asserts successful child program
910
+ termination and validates child program outputs.
911
+ </p>
912
+ <p>
913
+ </p>
914
+ <div class="informalexample">
915
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
916
+ <tbody>
917
+ <tr>
918
+ <td class="listing_lines" align="right"><pre>1
919
+ 2
920
+ 3
921
+ 4
922
+ 5
923
+ 6
924
+ 7
925
+ 8
926
+ 9
927
+ 10
928
+ 11
929
+ 12
930
+ 13</pre></td>
931
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
932
+ <span class="function">test_fork_patterns</span><span class="normal"> </span><span class="symbol">(</span><span class="type">void</span><span class="symbol">)</span>
933
+ <span class="cbracket">{</span>
934
+ <span class="normal"> </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="glib-Testing.html#g-test-trap-fork">g_test_trap_fork</a></span><span class="normal"> </span><span class="symbol">(</span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Testing.html#G-TEST-TRAP-SILENCE-STDOUT:CAPS">G_TEST_TRAP_SILENCE_STDOUT</a> </span><span class="symbol">|</span><span class="normal"> <a href="glib-Testing.html#G-TEST-TRAP-SILENCE-STDERR:CAPS">G_TEST_TRAP_SILENCE_STDERR</a></span><span class="symbol">))</span>
935
+ <span class="normal"> </span><span class="cbracket">{</span>
936
+ <span class="normal"> </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"some stdout text: somagic17</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">);</span>
937
+ <span class="normal"> </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"some stderr text: semagic43</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">);</span>
938
+ <span class="normal"> </span><span class="function">exit</span><span class="normal"> </span><span class="symbol">(</span><span class="number">0</span><span class="symbol">);</span><span class="normal"> </span><span class="comment">/* successful test run */</span>
939
+ <span class="normal"> </span><span class="cbracket">}</span>
940
+ <span class="normal"> </span><span class="function"><a href="glib-Testing.html#g-test-trap-assert-passed">g_test_trap_assert_passed</a></span><span class="symbol">();</span>
941
+ <span class="normal"> </span><span class="function"><a href="glib-Testing.html#g-test-trap-assert-stdout">g_test_trap_assert_stdout</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"*somagic17*"</span><span class="symbol">);</span>
942
+ <span class="normal"> </span><span class="function"><a href="glib-Testing.html#g-test-trap-assert-stderr">g_test_trap_assert_stderr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"*semagic43*"</span><span class="symbol">);</span>
943
+ <span class="cbracket">}</span></pre></td>
944
+ </tr>
945
+ </tbody>
946
+ </table>
947
+ </div>
948
+
949
+ <p>
950
+ </p>
951
+ <p>
952
+ This function is implemented only on Unix platforms.
953
+ </p>
954
+ <div class="variablelist"><table border="0">
955
+ <col align="left" valign="top">
956
+ <tbody>
957
+ <tr>
958
+ <td><p><span class="term"><em class="parameter"><code>usec_timeout</code></em> :</span></p></td>
959
+ <td>Timeout for the forked test in micro seconds.
960
+ </td>
961
+ </tr>
962
+ <tr>
963
+ <td><p><span class="term"><em class="parameter"><code>test_trap_flags</code></em> :</span></p></td>
964
+ <td>Flags to modify forking behaviour.
965
+ </td>
966
+ </tr>
967
+ <tr>
968
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
969
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> for the forked child and <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for the executing parent process.
970
+
971
+ </td>
972
+ </tr>
973
+ </tbody>
974
+ </table></div>
975
+ <p class="since">Since 2.16</p>
976
+ </div>
977
+ <hr>
978
+ <div class="refsect2" title="g_test_trap_has_passed ()">
979
+ <a name="g-test-trap-has-passed"></a><h3>g_test_trap_has_passed ()</h3>
980
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_has_passed (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
981
+ <p>
982
+ Check the result of the last <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a> call.
983
+ </p>
984
+ <div class="variablelist"><table border="0">
985
+ <col align="left" valign="top">
986
+ <tbody><tr>
987
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
988
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the last forked child terminated successfully.
989
+
990
+ </td>
991
+ </tr></tbody>
992
+ </table></div>
993
+ <p class="since">Since 2.16</p>
994
+ </div>
995
+ <hr>
996
+ <div class="refsect2" title="g_test_trap_reached_timeout ()">
997
+ <a name="g-test-trap-reached-timeout"></a><h3>g_test_trap_reached_timeout ()</h3>
998
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_reached_timeout (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
999
+ <p>
1000
+ Check the result of the last <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a> call.
1001
+ </p>
1002
+ <div class="variablelist"><table border="0">
1003
+ <col align="left" valign="top">
1004
+ <tbody><tr>
1005
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1006
+ <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the last forked child got killed due to a fork timeout.
1007
+
1008
+ </td>
1009
+ </tr></tbody>
1010
+ </table></div>
1011
+ <p class="since">Since 2.16</p>
1012
+ </div>
1013
+ <hr>
1014
+ <div class="refsect2" title="g_test_trap_assert_passed">
1015
+ <a name="g-test-trap-assert-passed"></a><h3>g_test_trap_assert_passed</h3>
1016
+ <pre class="programlisting">#define g_test_trap_assert_passed()</pre>
1017
+ <p>
1018
+ Assert that the last forked test passed. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1019
+ </p>
1020
+ <p class="since">Since 2.16</p>
1021
+ </div>
1022
+ <hr>
1023
+ <div class="refsect2" title="g_test_trap_assert_failed">
1024
+ <a name="g-test-trap-assert-failed"></a><h3>g_test_trap_assert_failed</h3>
1025
+ <pre class="programlisting">#define g_test_trap_assert_failed()</pre>
1026
+ <p>
1027
+ Assert that the last forked test failed. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1028
+ </p>
1029
+ <p class="since">Since 2.16</p>
1030
+ </div>
1031
+ <hr>
1032
+ <div class="refsect2" title="g_test_trap_assert_stdout()">
1033
+ <a name="g-test-trap-assert-stdout"></a><h3>g_test_trap_assert_stdout()</h3>
1034
+ <pre class="programlisting">#define g_test_trap_assert_stdout(soutpattern)</pre>
1035
+ <p>
1036
+ Assert that the stdout output of the last forked test matches <em class="parameter"><code>soutpattern</code></em>.
1037
+ See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1038
+ </p>
1039
+ <div class="variablelist"><table border="0">
1040
+ <col align="left" valign="top">
1041
+ <tbody><tr>
1042
+ <td><p><span class="term"><em class="parameter"><code>soutpattern</code></em> :</span></p></td>
1043
+ <td>a glob-style <a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
1044
+ </td>
1045
+ </tr></tbody>
1046
+ </table></div>
1047
+ <p class="since">Since 2.16</p>
1048
+ </div>
1049
+ <hr>
1050
+ <div class="refsect2" title="g_test_trap_assert_stdout_unmatched()">
1051
+ <a name="g-test-trap-assert-stdout-unmatched"></a><h3>g_test_trap_assert_stdout_unmatched()</h3>
1052
+ <pre class="programlisting">#define g_test_trap_assert_stdout_unmatched(soutpattern)</pre>
1053
+ <p>
1054
+ Assert that the stdout output of the last forked test does not match
1055
+ <em class="parameter"><code>soutpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1056
+ </p>
1057
+ <div class="variablelist"><table border="0">
1058
+ <col align="left" valign="top">
1059
+ <tbody><tr>
1060
+ <td><p><span class="term"><em class="parameter"><code>soutpattern</code></em> :</span></p></td>
1061
+ <td>a glob-style <a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
1062
+ </td>
1063
+ </tr></tbody>
1064
+ </table></div>
1065
+ <p class="since">Since 2.16</p>
1066
+ </div>
1067
+ <hr>
1068
+ <div class="refsect2" title="g_test_trap_assert_stderr()">
1069
+ <a name="g-test-trap-assert-stderr"></a><h3>g_test_trap_assert_stderr()</h3>
1070
+ <pre class="programlisting">#define g_test_trap_assert_stderr(serrpattern)</pre>
1071
+ <p>
1072
+ Assert that the stderr output of the last forked test matches <em class="parameter"><code>serrpattern</code></em>.
1073
+ See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1074
+ </p>
1075
+ <div class="variablelist"><table border="0">
1076
+ <col align="left" valign="top">
1077
+ <tbody><tr>
1078
+ <td><p><span class="term"><em class="parameter"><code>serrpattern</code></em> :</span></p></td>
1079
+ <td>a glob-style <a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
1080
+ </td>
1081
+ </tr></tbody>
1082
+ </table></div>
1083
+ <p class="since">Since 2.16</p>
1084
+ </div>
1085
+ <hr>
1086
+ <div class="refsect2" title="g_test_trap_assert_stderr_unmatched()">
1087
+ <a name="g-test-trap-assert-stderr-unmatched"></a><h3>g_test_trap_assert_stderr_unmatched()</h3>
1088
+ <pre class="programlisting">#define g_test_trap_assert_stderr_unmatched(serrpattern)</pre>
1089
+ <p>
1090
+ Assert that the stderr output of the last forked test does not match
1091
+ <em class="parameter"><code>serrpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
1092
+ </p>
1093
+ <div class="variablelist"><table border="0">
1094
+ <col align="left" valign="top">
1095
+ <tbody><tr>
1096
+ <td><p><span class="term"><em class="parameter"><code>serrpattern</code></em> :</span></p></td>
1097
+ <td>a glob-style <a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
1098
+ </td>
1099
+ </tr></tbody>
1100
+ </table></div>
1101
+ <p class="since">Since 2.16</p>
1102
+ </div>
1103
+ <hr>
1104
+ <div class="refsect2" title="g_test_rand_bit">
1105
+ <a name="g-test-rand-bit"></a><h3>g_test_rand_bit</h3>
1106
+ <pre class="programlisting">#define g_test_rand_bit()</pre>
1107
+ <p>
1108
+ Get a reproducible random bit (0 or 1),
1109
+ see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
1110
+ </p>
1111
+ <p class="since">Since 2.16</p>
1112
+ </div>
1113
+ <hr>
1114
+ <div class="refsect2" title="g_test_rand_int ()">
1115
+ <a name="g-test-rand-int"></a><h3>g_test_rand_int ()</h3>
1116
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> g_test_rand_int (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
1117
+ <p>
1118
+ Get a reproducible random integer number.
1119
+ </p>
1120
+ <p>
1121
+ The random numbers generated by the g_test_rand_*() family of functions
1122
+ change with every new test program start, unless the --seed option is
1123
+ given when starting test programs.
1124
+ </p>
1125
+ <p>
1126
+ For individual test cases however, the random number generator is
1127
+ reseeded, to avoid dependencies between tests and to make --seed
1128
+ effective for all test cases.
1129
+ </p>
1130
+ <div class="variablelist"><table border="0">
1131
+ <col align="left" valign="top">
1132
+ <tbody><tr>
1133
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1134
+ <td> a random number from the seeded random number generator.
1135
+
1136
+ </td>
1137
+ </tr></tbody>
1138
+ </table></div>
1139
+ <p class="since">Since 2.16</p>
1140
+ </div>
1141
+ <hr>
1142
+ <div class="refsect2" title="g_test_rand_int_range ()">
1143
+ <a name="g-test-rand-int-range"></a><h3>g_test_rand_int_range ()</h3>
1144
+ <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> g_test_rand_int_range (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> begin</code></em>,
1145
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> end</code></em>);</pre>
1146
+ <p>
1147
+ Get a reproducible random integer number out of a specified range,
1148
+ see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
1149
+ </p>
1150
+ <div class="variablelist"><table border="0">
1151
+ <col align="left" valign="top">
1152
+ <tbody>
1153
+ <tr>
1154
+ <td><p><span class="term"><em class="parameter"><code>begin</code></em> :</span></p></td>
1155
+ <td>the minimum value returned by this function
1156
+ </td>
1157
+ </tr>
1158
+ <tr>
1159
+ <td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
1160
+ <td>the smallest value not to be returned by this function
1161
+ </td>
1162
+ </tr>
1163
+ <tr>
1164
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1165
+ <td> a number with <em class="parameter"><code>begin</code></em> &lt;= number &lt; <em class="parameter"><code>end</code></em>.
1166
+
1167
+ </td>
1168
+ </tr>
1169
+ </tbody>
1170
+ </table></div>
1171
+ <p class="since">Since 2.16</p>
1172
+ </div>
1173
+ <hr>
1174
+ <div class="refsect2" title="g_test_rand_double ()">
1175
+ <a name="g-test-rand-double"></a><h3>g_test_rand_double ()</h3>
1176
+ <pre class="programlisting"><span class="returnvalue">double</span> g_test_rand_double (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
1177
+ <p>
1178
+ Get a reproducible random floating point number,
1179
+ see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
1180
+ </p>
1181
+ <div class="variablelist"><table border="0">
1182
+ <col align="left" valign="top">
1183
+ <tbody><tr>
1184
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1185
+ <td> a random number from the seeded random number generator.
1186
+
1187
+ </td>
1188
+ </tr></tbody>
1189
+ </table></div>
1190
+ <p class="since">Since 2.16</p>
1191
+ </div>
1192
+ <hr>
1193
+ <div class="refsect2" title="g_test_rand_double_range ()">
1194
+ <a name="g-test-rand-double-range"></a><h3>g_test_rand_double_range ()</h3>
1195
+ <pre class="programlisting"><span class="returnvalue">double</span> g_test_rand_double_range (<em class="parameter"><code><span class="type">double</span> range_start</code></em>,
1196
+ <em class="parameter"><code><span class="type">double</span> range_end</code></em>);</pre>
1197
+ <p>
1198
+ Get a reproducible random floating pointer number out of a specified range,
1199
+ see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
1200
+ </p>
1201
+ <div class="variablelist"><table border="0">
1202
+ <col align="left" valign="top">
1203
+ <tbody>
1204
+ <tr>
1205
+ <td><p><span class="term"><em class="parameter"><code>range_start</code></em> :</span></p></td>
1206
+ <td>the minimum value returned by this function
1207
+ </td>
1208
+ </tr>
1209
+ <tr>
1210
+ <td><p><span class="term"><em class="parameter"><code>range_end</code></em> :</span></p></td>
1211
+ <td>the minimum value not returned by this function
1212
+ </td>
1213
+ </tr>
1214
+ <tr>
1215
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1216
+ <td> a number with <em class="parameter"><code>range_start</code></em> &lt;= number &lt; <em class="parameter"><code>range_end</code></em>.
1217
+
1218
+ </td>
1219
+ </tr>
1220
+ </tbody>
1221
+ </table></div>
1222
+ <p class="since">Since 2.16</p>
1223
+ </div>
1224
+ <hr>
1225
+ <div class="refsect2" title="g_assert()">
1226
+ <a name="g-assert"></a><h3>g_assert()</h3>
1227
+ <pre class="programlisting">#define g_assert(expr)</pre>
1228
+ <p>
1229
+ Debugging macro to terminate the application if the assertion fails.
1230
+ If the assertion fails (i.e. the expression is not true), an error message
1231
+ is logged and the application is terminated.
1232
+ </p>
1233
+ <p>
1234
+ The macro can be turned off in final releases of code by defining
1235
+ <span class="type">G_DISABLE_ASSERT</span> when compiling the application.
1236
+ </p>
1237
+ <div class="variablelist"><table border="0">
1238
+ <col align="left" valign="top">
1239
+ <tbody><tr>
1240
+ <td><p><span class="term"><em class="parameter"><code>expr</code></em> :</span></p></td>
1241
+ <td>the expression to check.
1242
+ </td>
1243
+ </tr></tbody>
1244
+ </table></div>
1245
+ </div>
1246
+ <hr>
1247
+ <div class="refsect2" title="g_assert_not_reached">
1248
+ <a name="g-assert-not-reached"></a><h3>g_assert_not_reached</h3>
1249
+ <pre class="programlisting">#define g_assert_not_reached()</pre>
1250
+ <p>
1251
+ Debugging macro to terminate the application if it is ever reached.
1252
+ If it is reached, an error message is logged and the application is terminated.
1253
+ </p>
1254
+ <p>
1255
+ The macro can be turned off in final releases of code by defining
1256
+ <span class="type">G_DISABLE_ASSERT</span> when compiling the application.
1257
+ </p>
1258
+ </div>
1259
+ <hr>
1260
+ <div class="refsect2" title="g_assert_cmpstr()">
1261
+ <a name="g-assert-cmpstr"></a><h3>g_assert_cmpstr()</h3>
1262
+ <pre class="programlisting">#define g_assert_cmpstr(s1, cmp, s2)</pre>
1263
+ <p>
1264
+ Debugging macro to terminate the application with a warning message
1265
+ if a string comparison fails.
1266
+ The strings are compared using <a class="link" href="glib-String-Utility-Functions.html#g-strcmp0" title="g_strcmp0 ()"><code class="function">g_strcmp0()</code></a>.
1267
+ </p>
1268
+ <p>
1269
+ The effect of <code class="literal">g_assert_cmpstr (s1, op, s2)</code> is the same
1270
+ as <code class="literal">g_assert (g_strcmp0 (s1, s2) op 0)</code>. The advantage of this macro
1271
+ is that it can produce a message that includes the actual values of <em class="parameter"><code>s1</code></em>
1272
+ and <em class="parameter"><code>s2</code></em>.
1273
+ </p>
1274
+ <div class="informalexample">
1275
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
1276
+ <tbody>
1277
+ <tr>
1278
+ <td class="listing_lines" align="right"><pre>1</pre></td>
1279
+ <td class="listing_code"><pre class="programlisting"><span class="function"><a href="glib-Testing.html#g-assert-cmpstr">g_assert_cmpstr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">mystring</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">==,</span><span class="normal"> </span><span class="string">"fubar"</span><span class="symbol">);</span></pre></td>
1280
+ </tr>
1281
+ </tbody>
1282
+ </table>
1283
+ </div>
1284
+
1285
+ <div class="variablelist"><table border="0">
1286
+ <col align="left" valign="top">
1287
+ <tbody>
1288
+ <tr>
1289
+ <td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
1290
+ <td>a string (may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>)
1291
+ </td>
1292
+ </tr>
1293
+ <tr>
1294
+ <td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
1295
+ <td>The comparison operator to use. One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
1296
+ </td>
1297
+ </tr>
1298
+ <tr>
1299
+ <td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
1300
+ <td>another string (may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>)
1301
+ </td>
1302
+ </tr>
1303
+ </tbody>
1304
+ </table></div>
1305
+ <p class="since">Since 2.16</p>
1306
+ </div>
1307
+ <hr>
1308
+ <div class="refsect2" title="g_assert_cmpint()">
1309
+ <a name="g-assert-cmpint"></a><h3>g_assert_cmpint()</h3>
1310
+ <pre class="programlisting">#define g_assert_cmpint(n1, cmp, n2)</pre>
1311
+ <p>
1312
+ Debugging macro to terminate the application with a warning message
1313
+ if an integer comparison fails.
1314
+ </p>
1315
+ <p>
1316
+ The effect of <code class="literal">g_assert_cmpint (n1, op, n2)</code> is the same
1317
+ as <code class="literal">g_assert (n1 op n2)</code>. The advantage of this macro
1318
+ is that it can produce a message that includes the actual values of <em class="parameter"><code>n1</code></em>
1319
+ and <em class="parameter"><code>n2</code></em>.
1320
+ </p>
1321
+ <div class="variablelist"><table border="0">
1322
+ <col align="left" valign="top">
1323
+ <tbody>
1324
+ <tr>
1325
+ <td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
1326
+ <td>an integer
1327
+ </td>
1328
+ </tr>
1329
+ <tr>
1330
+ <td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
1331
+ <td>The comparison operator to use. One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
1332
+ </td>
1333
+ </tr>
1334
+ <tr>
1335
+ <td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
1336
+ <td>another integer
1337
+ </td>
1338
+ </tr>
1339
+ </tbody>
1340
+ </table></div>
1341
+ <p class="since">Since 2.16</p>
1342
+ </div>
1343
+ <hr>
1344
+ <div class="refsect2" title="g_assert_cmpuint()">
1345
+ <a name="g-assert-cmpuint"></a><h3>g_assert_cmpuint()</h3>
1346
+ <pre class="programlisting">#define g_assert_cmpuint(n1, cmp, n2)</pre>
1347
+ <p>
1348
+ Debugging macro to terminate the application with a warning message
1349
+ if an unsigned integer comparison fails.
1350
+ </p>
1351
+ <p>
1352
+ The effect of <code class="literal">g_assert_cmpuint (n1, op, n2)</code> is the same
1353
+ as <code class="literal">g_assert (n1 op n2)</code>. The advantage of this macro
1354
+ is that it can produce a message that includes the actual values of <em class="parameter"><code>n1</code></em>
1355
+ and <em class="parameter"><code>n2</code></em>.
1356
+ </p>
1357
+ <div class="variablelist"><table border="0">
1358
+ <col align="left" valign="top">
1359
+ <tbody>
1360
+ <tr>
1361
+ <td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
1362
+ <td>an unsigned integer
1363
+ </td>
1364
+ </tr>
1365
+ <tr>
1366
+ <td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
1367
+ <td>The comparison operator to use. One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
1368
+ </td>
1369
+ </tr>
1370
+ <tr>
1371
+ <td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
1372
+ <td>another unsigned integer
1373
+ </td>
1374
+ </tr>
1375
+ </tbody>
1376
+ </table></div>
1377
+ <p class="since">Since 2.16</p>
1378
+ </div>
1379
+ <hr>
1380
+ <div class="refsect2" title="g_assert_cmphex()">
1381
+ <a name="g-assert-cmphex"></a><h3>g_assert_cmphex()</h3>
1382
+ <pre class="programlisting">#define g_assert_cmphex(n1, cmp, n2)</pre>
1383
+ <p>
1384
+ Debugging macro to terminate the application with a warning message
1385
+ if an unsigned integer comparison fails. This is a variant of
1386
+ <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()"><code class="function">g_assert_cmpuint()</code></a> that displays the numbers in hexadecimal notation
1387
+ in the message.
1388
+ </p>
1389
+ <div class="variablelist"><table border="0">
1390
+ <col align="left" valign="top">
1391
+ <tbody>
1392
+ <tr>
1393
+ <td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
1394
+ <td>an unsigned integer
1395
+ </td>
1396
+ </tr>
1397
+ <tr>
1398
+ <td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
1399
+ <td>The comparison operator to use. One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
1400
+ </td>
1401
+ </tr>
1402
+ <tr>
1403
+ <td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
1404
+ <td>another unsigned integer
1405
+ </td>
1406
+ </tr>
1407
+ </tbody>
1408
+ </table></div>
1409
+ <p class="since">Since 2.16</p>
1410
+ </div>
1411
+ <hr>
1412
+ <div class="refsect2" title="g_assert_cmpfloat()">
1413
+ <a name="g-assert-cmpfloat"></a><h3>g_assert_cmpfloat()</h3>
1414
+ <pre class="programlisting">#define g_assert_cmpfloat(n1,cmp,n2)</pre>
1415
+ <p>
1416
+ Debugging macro to terminate the application with a warning message
1417
+ if a floating point number comparison fails.
1418
+ </p>
1419
+ <p>
1420
+ The effect of <code class="literal">g_assert_cmpfloat (n1, op, n2)</code> is the same
1421
+ as <code class="literal">g_assert (n1 op n2)</code>. The advantage of this function
1422
+ is that it can produce a message that includes the actual values of <em class="parameter"><code>n1</code></em>
1423
+ and <em class="parameter"><code>n2</code></em>.
1424
+ </p>
1425
+ <div class="variablelist"><table border="0">
1426
+ <col align="left" valign="top">
1427
+ <tbody>
1428
+ <tr>
1429
+ <td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
1430
+ <td>an floating point number
1431
+ </td>
1432
+ </tr>
1433
+ <tr>
1434
+ <td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
1435
+ <td>The comparison operator to use. One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
1436
+ </td>
1437
+ </tr>
1438
+ <tr>
1439
+ <td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
1440
+ <td>another floating point number
1441
+ </td>
1442
+ </tr>
1443
+ </tbody>
1444
+ </table></div>
1445
+ <p class="since">Since 2.16</p>
1446
+ </div>
1447
+ <hr>
1448
+ <div class="refsect2" title="g_assert_no_error()">
1449
+ <a name="g-assert-no-error"></a><h3>g_assert_no_error()</h3>
1450
+ <pre class="programlisting">#define g_assert_no_error(err)</pre>
1451
+ <p>
1452
+ Debugging macro to terminate the application with a warning message
1453
+ if a method has returned a <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>.
1454
+ </p>
1455
+ <p>
1456
+ The effect of <code class="literal">g_assert_no_error (err)</code> is the same
1457
+ as <code class="literal">g_assert (err == NULL)</code>. The advantage of this macro
1458
+ is that it can produce a message that includes the error message and code.
1459
+ </p>
1460
+ <div class="variablelist"><table border="0">
1461
+ <col align="left" valign="top">
1462
+ <tbody><tr>
1463
+ <td><p><span class="term"><em class="parameter"><code>err</code></em> :</span></p></td>
1464
+ <td>a <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>, possibly <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
1465
+ </td>
1466
+ </tr></tbody>
1467
+ </table></div>
1468
+ <p class="since">Since 2.20</p>
1469
+ </div>
1470
+ <hr>
1471
+ <div class="refsect2" title="g_assert_error()">
1472
+ <a name="g-assert-error"></a><h3>g_assert_error()</h3>
1473
+ <pre class="programlisting">#define g_assert_error(err, dom, c)</pre>
1474
+ <p>
1475
+ Debugging macro to terminate the application with a warning message
1476
+ if a method has not returned the correct <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>.
1477
+ </p>
1478
+ <p>
1479
+ The effect of <code class="literal">g_assert_error (err, dom, c)</code> is the same
1480
+ as <code class="literal">g_assert (err != NULL &amp;&amp; err-&gt;domain == dom &amp;&amp; err-&gt;code == c)</code>.
1481
+ The advantage of this macro is that it can produce a message that
1482
+ includes the incorrect error message and code.
1483
+ </p>
1484
+ <p>
1485
+ This can only be used to test for a specific error. If you want to
1486
+ test that <em class="parameter"><code>err</code></em> is set, but don't care what it's set to, just use
1487
+ <code class="literal">g_assert (err != NULL)</code>
1488
+ </p>
1489
+ <div class="variablelist"><table border="0">
1490
+ <col align="left" valign="top">
1491
+ <tbody>
1492
+ <tr>
1493
+ <td><p><span class="term"><em class="parameter"><code>err</code></em> :</span></p></td>
1494
+ <td>a <a class="link" href="glib-Error-Reporting.html#GError" title="GError"><span class="type">GError</span></a>, possibly <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
1495
+ </td>
1496
+ </tr>
1497
+ <tr>
1498
+ <td><p><span class="term"><em class="parameter"><code>dom</code></em> :</span></p></td>
1499
+ <td>the expected error domain (a <a class="link" href="glib-Quarks.html#GQuark" title="GQuark"><span class="type">GQuark</span></a>)
1500
+ </td>
1501
+ </tr>
1502
+ <tr>
1503
+ <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
1504
+ <td>the expected error code
1505
+ </td>
1506
+ </tr>
1507
+ </tbody>
1508
+ </table></div>
1509
+ <p class="since">Since 2.20</p>
1510
+ </div>
1511
+ <hr>
1512
+ <div class="refsect2" title="GTestCase">
1513
+ <a name="GTestCase"></a><h3>GTestCase</h3>
1514
+ <pre class="programlisting">typedef struct GTestCase GTestCase;
1515
+ </pre>
1516
+ <p>
1517
+ An opaque structure representing a test case.
1518
+ </p>
1519
+ </div>
1520
+ <hr>
1521
+ <div class="refsect2" title="GTestSuite">
1522
+ <a name="GTestSuite"></a><h3>GTestSuite</h3>
1523
+ <pre class="programlisting">typedef struct GTestSuite GTestSuite;
1524
+ </pre>
1525
+ <p>
1526
+ An opaque structure representing a test suite.
1527
+ </p>
1528
+ </div>
1529
+ <hr>
1530
+ <div class="refsect2" title="g_test_create_case ()">
1531
+ <a name="g-test-create-case"></a><h3>g_test_create_case ()</h3>
1532
+ <pre class="programlisting"><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="returnvalue">GTestCase</span></a>* g_test_create_case (<em class="parameter"><code>const <span class="type">char</span> *test_name</code></em>,
1533
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> data_size</code></em>,
1534
+ <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
1535
+ <em class="parameter"><code><span class="type">void</span> (data_setupvoid) ()</code></em>,
1536
+ <em class="parameter"><code><span class="type">void</span> (data_testvoid) ()</code></em>,
1537
+ <em class="parameter"><code><span class="type">void</span> (data_teardownvoid) ()</code></em>);</pre>
1538
+ <p>
1539
+ Create a new <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>, named <em class="parameter"><code>test_name</code></em>, this API is fairly
1540
+ low level, calling <a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()"><code class="function">g_test_add()</code></a> or <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()"><code class="function">g_test_add_func()</code></a> is preferable.
1541
+ When this test is executed, a fixture structure of size <em class="parameter"><code>data_size</code></em>
1542
+ will be allocated and filled with 0s. Then <code class="function">data_setup()</code> is called
1543
+ to initialize the fixture. After fixture setup, the actual test
1544
+ function <code class="function">data_test()</code> is called. Once the test run completed, the
1545
+ fixture structure is torn down by calling <code class="function">data_teardown()</code> and
1546
+ after that the memory is released.
1547
+ </p>
1548
+ <p>
1549
+ Splitting up a test run into fixture setup, test function and
1550
+ fixture teardown is most usful if the same fixture is used for
1551
+ multiple tests. In this cases, <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a> will be
1552
+ called with the same fixture, but varying <em class="parameter"><code>test_name</code></em> and
1553
+ <em class="parameter"><code>data_test</code></em> arguments.
1554
+ </p>
1555
+ <div class="variablelist"><table border="0">
1556
+ <col align="left" valign="top">
1557
+ <tbody>
1558
+ <tr>
1559
+ <td><p><span class="term"><em class="parameter"><code>test_name</code></em> :</span></p></td>
1560
+ <td>the name for the test case
1561
+ </td>
1562
+ </tr>
1563
+ <tr>
1564
+ <td><p><span class="term"><em class="parameter"><code>data_size</code></em> :</span></p></td>
1565
+ <td>the size of the fixture data structure
1566
+ </td>
1567
+ </tr>
1568
+ <tr>
1569
+ <td><p><span class="term"><em class="parameter"><code>test_data</code></em> :</span></p></td>
1570
+ <td>test data argument for the test functions
1571
+ </td>
1572
+ </tr>
1573
+ <tr>
1574
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1575
+ <td> a newly allocated <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>.
1576
+
1577
+ </td>
1578
+ </tr>
1579
+ </tbody>
1580
+ </table></div>
1581
+ <p class="since">Since 2.16</p>
1582
+ </div>
1583
+ <hr>
1584
+ <div class="refsect2" title="g_test_create_suite ()">
1585
+ <a name="g-test-create-suite"></a><h3>g_test_create_suite ()</h3>
1586
+ <pre class="programlisting"><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a>* g_test_create_suite (<em class="parameter"><code>const <span class="type">char</span> *suite_name</code></em>);</pre>
1587
+ <p>
1588
+ Create a new test suite with the name <em class="parameter"><code>suite_name</code></em>.
1589
+ </p>
1590
+ <div class="variablelist"><table border="0">
1591
+ <col align="left" valign="top">
1592
+ <tbody>
1593
+ <tr>
1594
+ <td><p><span class="term"><em class="parameter"><code>suite_name</code></em> :</span></p></td>
1595
+ <td>a name for the suite
1596
+ </td>
1597
+ </tr>
1598
+ <tr>
1599
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1600
+ <td> A newly allocated <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> instance.
1601
+
1602
+ </td>
1603
+ </tr>
1604
+ </tbody>
1605
+ </table></div>
1606
+ <p class="since">Since 2.16</p>
1607
+ </div>
1608
+ <hr>
1609
+ <div class="refsect2" title="g_test_get_root ()">
1610
+ <a name="g-test-get-root"></a><h3>g_test_get_root ()</h3>
1611
+ <pre class="programlisting"><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a>* g_test_get_root (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
1612
+ <p>
1613
+ Get the toplevel test suite for the test path API.
1614
+ </p>
1615
+ <div class="variablelist"><table border="0">
1616
+ <col align="left" valign="top">
1617
+ <tbody><tr>
1618
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1619
+ <td> the toplevel <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
1620
+
1621
+ </td>
1622
+ </tr></tbody>
1623
+ </table></div>
1624
+ <p class="since">Since 2.16</p>
1625
+ </div>
1626
+ <hr>
1627
+ <div class="refsect2" title="g_test_suite_add ()">
1628
+ <a name="g-test-suite-add"></a><h3>g_test_suite_add ()</h3>
1629
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_suite_add (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
1630
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a> *test_case</code></em>);</pre>
1631
+ <p>
1632
+ Adds <em class="parameter"><code>test_case</code></em> to <em class="parameter"><code>suite</code></em>.
1633
+ </p>
1634
+ <div class="variablelist"><table border="0">
1635
+ <col align="left" valign="top">
1636
+ <tbody>
1637
+ <tr>
1638
+ <td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
1639
+ <td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
1640
+ </td>
1641
+ </tr>
1642
+ <tr>
1643
+ <td><p><span class="term"><em class="parameter"><code>test_case</code></em> :</span></p></td>
1644
+ <td>a <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>
1645
+ </td>
1646
+ </tr>
1647
+ </tbody>
1648
+ </table></div>
1649
+ <p class="since">Since 2.16</p>
1650
+ </div>
1651
+ <hr>
1652
+ <div class="refsect2" title="g_test_suite_add_suite ()">
1653
+ <a name="g-test-suite-add-suite"></a><h3>g_test_suite_add_suite ()</h3>
1654
+ <pre class="programlisting"><span class="returnvalue">void</span> g_test_suite_add_suite (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
1655
+ <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *nestedsuite</code></em>);</pre>
1656
+ <p>
1657
+ Adds <em class="parameter"><code>nestedsuite</code></em> to <em class="parameter"><code>suite</code></em>.
1658
+ </p>
1659
+ <div class="variablelist"><table border="0">
1660
+ <col align="left" valign="top">
1661
+ <tbody>
1662
+ <tr>
1663
+ <td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
1664
+ <td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
1665
+ </td>
1666
+ </tr>
1667
+ <tr>
1668
+ <td><p><span class="term"><em class="parameter"><code>nestedsuite</code></em> :</span></p></td>
1669
+ <td>another <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
1670
+ </td>
1671
+ </tr>
1672
+ </tbody>
1673
+ </table></div>
1674
+ <p class="since">Since 2.16</p>
1675
+ </div>
1676
+ <hr>
1677
+ <div class="refsect2" title="g_test_run_suite ()">
1678
+ <a name="g-test-run-suite"></a><h3>g_test_run_suite ()</h3>
1679
+ <pre class="programlisting"><span class="returnvalue">int</span> g_test_run_suite (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>);</pre>
1680
+ <p>
1681
+ Execute the tests within <em class="parameter"><code>suite</code></em> and all nested <a href="glib-Testing.html#GTestSuite"><span class="type">GTestSuites</span></a>.
1682
+ The test suites to be executed are filtered according to
1683
+ test path arguments (-p <em class="replaceable"><code>testpath</code></em>)
1684
+ as parsed by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a>.
1685
+ <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a> or <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()"><code class="function">g_test_run()</code></a> may only be called once
1686
+ in a program.
1687
+ </p>
1688
+ <div class="variablelist"><table border="0">
1689
+ <col align="left" valign="top">
1690
+ <tbody>
1691
+ <tr>
1692
+ <td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
1693
+ <td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
1694
+ </td>
1695
+ </tr>
1696
+ <tr>
1697
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1698
+ <td> 0 on success
1699
+
1700
+ </td>
1701
+ </tr>
1702
+ </tbody>
1703
+ </table></div>
1704
+ <p class="since">Since 2.16</p>
1705
+ </div>
1706
+ </div>
1707
+ <div class="refsect1" title="See Also">
1708
+ <a name="glib-Testing.see-also"></a><h2>See Also</h2>
1709
+ <p>
1710
+ <a href="gtester.html">gtester</a>,
1711
+ <a href="gtester-report.html">gtester-report</a>
1712
+ </p>
1713
+ </div>
1714
+ </div>
1715
+ <div class="footer">
1716
+ <hr>
1717
+ Generated by GTK-Doc V1.14</div>
1718
+ </body>
1719
+ </html>