Bladeren bron

Add ctkDICOMAppWidgetTest1 to test ctkDICOMAppWidget

Julien Finet 14 jaren geleden
bovenliggende
commit
dc3a4119be

+ 6 - 6
Libs/DICOM/Widgets/Resources/UI/ctkDICOMAppWidget.ui

@@ -210,7 +210,7 @@
    <sender>actionImport</sender>
    <signal>triggered(bool)</signal>
    <receiver>ctkDICOMAppWidget</receiver>
-   <slot>onImport()</slot>
+   <slot>openImportDialog()</slot>
    <hints>
     <hint type="sourcelabel">
      <x>-1</x>
@@ -226,7 +226,7 @@
    <sender>actionExport</sender>
    <signal>triggered(bool)</signal>
    <receiver>ctkDICOMAppWidget</receiver>
-   <slot>onExport()</slot>
+   <slot>openExportDialog()</slot>
    <hints>
     <hint type="sourcelabel">
      <x>-1</x>
@@ -242,7 +242,7 @@
    <sender>actionQuery</sender>
    <signal>triggered(bool)</signal>
    <receiver>ctkDICOMAppWidget</receiver>
-   <slot>onQuery()</slot>
+   <slot>openQueryDialog()</slot>
    <hints>
     <hint type="sourcelabel">
      <x>-1</x>
@@ -257,9 +257,9 @@
  </connections>
  <slots>
   <signal>signal1()</signal>
-  <slot>onImport()</slot>
-  <slot>onExport()</slot>
-  <slot>onQuery()</slot>
+  <slot>openImportDialog()</slot>
+  <slot>openExportDialog()</slot>
+  <slot>openQueryDialog()</slot>
   <slot>onDatabaseDirectoryChaged(QString)</slot>
  </slots>
 </ui>

+ 2 - 0
Libs/DICOM/Widgets/Testing/Cpp/CMakeLists.txt

@@ -1,6 +1,7 @@
 SET(KIT ${PROJECT_NAME})
 
 CREATE_TEST_SOURCELIST(Tests ${KIT}CppTests.cpp
+  ctkDICOMAppWidgetTest1.cpp
   ctkDICOMModelTest2.cpp
   ctkDICOMQueryRetrieveWidgetTest1.cpp
   )
@@ -24,6 +25,7 @@ ENDMACRO( SIMPLE_TEST  )
 # Add Tests
 #
 
+SIMPLE_TEST(ctkDICOMAppWidgetTest1)
 ADD_TEST( ctkDICOMModelTest2 ${KIT_TESTS}
           ctkDICOMModelTest2 ${CMAKE_CURRENT_BINARY_DIR}/dicom.db
                              ${CMAKE_CURRENT_SOURCE_DIR}/../../../Core/Resources/dicom-sample.sql)

+ 36 - 0
Libs/DICOM/Widgets/Testing/Cpp/ctkDICOMAppWidgetTest1.cpp

@@ -0,0 +1,36 @@
+
+// Qt includes
+#include <QApplication>
+#include <QDebug>
+#include <QDir>
+#include <QTimer>
+
+// ctkDICOMCore includes
+#include "ctkDICOMAppWidget.h"
+
+// STD includes
+#include <iostream>
+
+/* Test from build directory:
+ ./CTK-build/bin/CTKDICOMWidgetsCxxTests ctkDICOMAppWidgetTest1 test.db ../CTK/Libs/DICOM/Core/Resources/dicom-sample.sql
+*/
+
+int ctkDICOMAppWidgetTest1( int argc, char * argv [] )
+{
+  QApplication app(argc, argv);
+  
+  ctkDICOMAppWidget appWidget;
+  appWidget.setDatabaseDirectory(QDir::currentPath());
+  appWidget.onAddToDatabase();
+  appWidget.openImportDialog();
+  appWidget.openExportDialog();
+  appWidget.openQueryDialog();
+  
+  appWidget.show();
+
+  if (argc <= 1 || QString(argv[1]) != "-I")
+    {
+    QTimer::singleShot(200, &app, SLOT(quit()));
+    }
+  return app.exec();
+}

+ 13 - 4
Libs/DICOM/Widgets/ctkDICOMAppWidget.cpp

@@ -146,24 +146,30 @@ void ctkDICOMAppWidget::onAddToDatabase()
 }
 
 //----------------------------------------------------------------------------
-void ctkDICOMAppWidget::onImport(){
+void ctkDICOMAppWidget::openImportDialog()
+{
   Q_D(ctkDICOMAppWidget);
   
   d->ImportDialog->show();
   d->ImportDialog->raise();
 }
 
-void ctkDICOMAppWidget::onExport(){
+//----------------------------------------------------------------------------
+void ctkDICOMAppWidget::openExportDialog()
+{
 
 }
 
-void ctkDICOMAppWidget::onQuery(){
+//----------------------------------------------------------------------------
+void ctkDICOMAppWidget::openQueryDialog()
+{
   Q_D(ctkDICOMAppWidget);
 
   d->QueryRetrieveWidget->show();
   d->QueryRetrieveWidget->raise();
 }
 
+//----------------------------------------------------------------------------
 void ctkDICOMAppWidget::onDICOMModelSelected(const QModelIndex& index)
 {
   Q_D(ctkDICOMAppWidget);
@@ -222,10 +228,13 @@ void ctkDICOMAppWidget::onDICOMModelSelected(const QModelIndex& index)
 
 }
 
-void ctkDICOMAppWidget::onThumbnailSelected(const ctkDICOMThumbnailWidget& widget){
+//----------------------------------------------------------------------------
+void ctkDICOMAppWidget::onThumbnailSelected(const ctkDICOMThumbnailWidget& widget)
+{
   //TODO: update previewer
 }
 
+//----------------------------------------------------------------------------
 void ctkDICOMAppWidget::onImportDirectory(QString directory)
 {
   Q_D(ctkDICOMAppWidget);

+ 3 - 3
Libs/DICOM/Widgets/ctkDICOMAppWidget.h

@@ -45,9 +45,9 @@ public slots:
     void onDICOMModelSelected(const QModelIndex& index);
     void onThumbnailSelected(const ctkDICOMThumbnailWidget& widget);
 
-    void onImport();
-    void onExport();
-    void onQuery();
+    void openImportDialog();
+    void openExportDialog();
+    void openQueryDialog();
 
 protected:
     QScopedPointer<ctkDICOMAppWidgetPrivate> d_ptr;