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

Expose QImage of TestCase::grabImage



    • Suggestion
    • Resolution: Unresolved
    • Not Evaluated
    • None
    • 5.10.0
    • Testing: QuickTest
    • None


      The result from grabImage has a very restricted interface where you can only access it from QML and only save, compare to other grabImage results and fetch pixel values.

      For our tests we would like to be able to

      • compare to an arbitrary QImage (e.g. loaded from files)
      • do fuzzy comparisons on the C++ side to speed up the process

      Getting read access to the internal QImage of QuickTestImageObject would fully suffice. To that end there needs to be a getter and the class must be part of the public interface.

      As a workaround we currently crack open (via UB!) the class ourselves:
      1. We redeclared this class for our tests and simply made the image public.
      2. To allow passing the QuickTestImageObject result from QML to C++ we use a QObject* interface and do an unconditional `static_cast<QuickTestImageObject*>` to avoid problems with `dynamic_cast` having different typeids for our and Qt's version of QuickTestImageObject.


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



            qt.team.quick.subscriptions Qt Quick and Widgets Team
            spynacker Martin Schulze
            3 Vote for this issue
            5 Start watching this issue



              Gerrit Reviews

                There are no open Gerrit changes