GLib.test_expect_message

function test_expect_message(log_domain: String, log_level: GLib.LogLevelFlags, pattern: String): void {
    // Gjs wrapper for g_test_expect_message()
}
  

Indicates that a message with the given log_domain and log_level, with text matching pattern, is expected to be logged. When this message is logged, it will not be printed, and the test case will not abort.

Use g_test_assert_expected_messages() to assert that all previously-expected messages have been seen and suppressed.

You can call this multiple times in a row, if multiple messages are expected as a result of a single call. (The messages must appear in the same order as the calls to GLib.test_expect_message.)

For example:

|[<!-- language="C" --> // GLib.MainContext.prototype.push_thread_default should fail if the // context is already owned by another thread. g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL, "assertion*acquired_context*failed"); g_main_context_push_thread_default (bad_context); g_test_assert_expected_messages (); ]|

Note that you cannot use this to test g_error() messages, since g_error() intentionally never returns even if the program doesn't abort; use GLib.test_trap_subprocess in this case.

If messages at GLib.LogLevelFlags.level_debug are emitted, but not explicitly expected via GLib.test_expect_message then they will be ignored.

Since 2.34

log_domain

the log domain of the message

log_level

the log level of the message

pattern

a glob-style [pattern][glib-Glob-style-pattern-matching]