+// Copyright (C) 2014-2015 EDF-R&D
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
#pragma once
class TopoDS_Shape;
class QString;
class QColor;
+class QImage;
+class Handle_AIS_InteractiveContext;
class Handle_AIS_InteractiveObject;
class Handle_Aspect_ColorScale;
static OCCViewer_ViewManager* viewManager();
static OCCViewer_Viewer* viewer();
static OCCViewer_ViewWindow* viewWindow();
+ static Handle_AIS_InteractiveContext context();
+ static void eraseAll( bool isUpdate );
static void show( const Handle_AIS_InteractiveObject& theObject,
- int theMode, int theSelelctionMode, bool isFitAll, const char* theKey );
+ int theMode, int theSelectionMode, bool isFitAll, const char* theKey );
static void show( const TopoDS_Shape& theShape, int theMode, bool isFitAll, const QColor& theColor );
static void show( const TopoDS_Shape& theShape, int theMode, bool isFitAll, const char* theKey );
- static bool AssertImages( QString& theMessage );
+ static bool AssertImages( QString& theMessage, const QImage* = 0, const char* theCase = 0 );
static QColor GetColor(int i);
- static Handle_Aspect_ColorScale showColorScale( bool );
+ static Handle_Aspect_ColorScale colorScale();
+ static void showColorScale( bool );
static void select( int theViewX, int theViewY );
+ static bool areScriptsEqual( const QString& theBaseName,
+ bool isExpectedUtf8,
+ bool isActualUtf8,
+ int theLinesToOmit,
+ QString& theMsg );
+
private:
static OCCViewer_ViewManager* myViewManager;
static OCCViewer_ViewWindow* myViewWindow;
QString aMessage; \
if( !TestViewer::AssertImages( aMessage ) ) \
{ \
+ TestViewer::showColorScale( false ); \
+ std::string aMessageStl = aMessage.toStdString(); \
+ CPPUNIT_FAIL( aMessageStl.c_str() ); \
+ } \
+ } \
+
+#define CPPUNIT_ASSERT_IMAGES2( theImage, theCase ) \
+ { \
+ QString aMessage; \
+ if( !TestViewer::AssertImages( aMessage, theImage, theCase ) ) \
+ { \
+ TestViewer::showColorScale( false ); \
std::string aMessageStl = aMessage.toStdString(); \
CPPUNIT_FAIL( aMessageStl.c_str() ); \
} \
} \
+#define CPPUNIT_ASSERT_SCRIPTS_EQUAL( theBaseName, \
+ isExpectedUtf8, \
+ isActualUtf8, \
+ theLinesToOmit ) \
+ { \
+ QString aMsg; \
+ if( !TestViewer::areScriptsEqual( \
+ theBaseName, isExpectedUtf8, \
+ isActualUtf8, theLinesToOmit, aMsg ) ) \
+ { \
+ std::string aStlMsg = "Scripts are not equal: " + \
+ aMsg.toStdString(); \
+ CPPUNIT_FAIL( aStlMsg ); \
+ } \
+ } \
+ \
+