Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-15256

QTest::ignoreMessage problem

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • 5.3.0
    • 4.7.1
    • Core: I/O
    • None
    • gcc (Debian 4.4.4-8) 4.4.5 20100728 (prerelease)
    • 326e9c8962532f66109f94f224f891c4445ce87f

    Description

      With respect to the streaming qDebug / qWarning / qCritical / qFatal functions, the Qt documentation says:

      qWarning() << "Brush:" << myQBrush << "Other value:" << i;
      

      This syntax inserts a space between each item, and appends a newline at the end.

      In fact, an extra space is printed out before the final newline, so it does not behave exactly as documented.

      One of the notable effects of this is to make the usage of QTest::ignoreMessage quite confusing at times, e.g. consider the example:

      QTest::ignoreMessage(QtWarningMsg, "foo1");
      qWarning("foo1");
      QTest::ignoreMessage(QtWarningMsg, "foo2");
      qWarning() << "foo2";
      

      This test would fail with message:
      Did not receive message: "foo2"

      ...because the actual output message was "foo2 " (note trailing space).

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            kkohne Kai Köhne
            nierob Nierob
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes