Show
Ignore:
Timestamp:
06/10/06 06:57:16 (2 years ago)
Author:
jordi
Message:

Added checks for the Save and Zoom widgets in the MainPterTest? class' members. Also added a test for the Zoom entry on the tool bar.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/tests/MainPterTest.cxx

    r141 r207  
    7474{ 
    7575    CPPUNIT_ASSERT ( m_View->isShown () ); 
    76     CPPUNIT_ASSERT_EQUAL (0,  
     76    CPPUNIT_ASSERT_EQUAL (0, 
    7777            g_ascii_strcasecmp ("PDF Viewer", m_View->getTitle ())); 
    7878    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    8484    CPPUNIT_ASSERT (!m_View->isSensitiveRotateLeft ()); 
    8585    CPPUNIT_ASSERT (!m_View->isSensitiveRotateRight ()); 
     86    CPPUNIT_ASSERT (!m_View->isSensitiveSave ()); 
     87    CPPUNIT_ASSERT (!m_View->isSensitiveZoom ()); 
    8688    CPPUNIT_ASSERT (!m_View->isSensitiveZoomIn ()); 
    8789    CPPUNIT_ASSERT (!m_View->isSensitiveZoomOut ()); 
     
    108110    m_MainPter->openFileActivated (); 
    109111    m_MainPter->waitForFileLoaded (); 
    110     CPPUNIT_ASSERT_EQUAL (0,  
     112    CPPUNIT_ASSERT_EQUAL (0, 
    111113            g_ascii_strcasecmp ("/tmp/test.pdf", m_View->getTitle ())); 
    112114    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    118120    CPPUNIT_ASSERT (m_View->isSensitiveRotateLeft ()); 
    119121    CPPUNIT_ASSERT (m_View->isSensitiveRotateRight ()); 
     122    CPPUNIT_ASSERT (m_View->isSensitiveSave ()); 
     123    CPPUNIT_ASSERT (m_View->isSensitiveZoom ()); 
    120124    CPPUNIT_ASSERT (m_View->isSensitiveZoomIn ()); 
    121125    CPPUNIT_ASSERT (m_View->isSensitiveZoomOut ()); 
     
    138142    CPPUNIT_ASSERT (m_View->isSensitiveRotateLeft ()); 
    139143    CPPUNIT_ASSERT (m_View->isSensitiveRotateRight ()); 
     144    CPPUNIT_ASSERT (m_View->isSensitiveSave ()); 
     145    CPPUNIT_ASSERT (m_View->isSensitiveZoom ()); 
    140146    CPPUNIT_ASSERT (m_View->isSensitiveZoomIn ()); 
    141147    CPPUNIT_ASSERT (m_View->isSensitiveZoomOut ()); 
     
    156162    m_View->setOpenFileName (NULL); 
    157163    m_MainPter->openFileActivated (); 
    158     CPPUNIT_ASSERT_EQUAL (0,  
     164    CPPUNIT_ASSERT_EQUAL (0, 
    159165            g_ascii_strcasecmp ("PDF Viewer", m_View->getTitle ())); 
    160166    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    166172    CPPUNIT_ASSERT (!m_View->isSensitiveRotateLeft ()); 
    167173    CPPUNIT_ASSERT (!m_View->isSensitiveRotateRight ()); 
     174    CPPUNIT_ASSERT (!m_View->isSensitiveSave ()); 
     175    CPPUNIT_ASSERT (!m_View->isSensitiveZoom ()); 
    168176    CPPUNIT_ASSERT (!m_View->isSensitiveZoomIn ()); 
    169177    CPPUNIT_ASSERT (!m_View->isSensitiveZoomOut ()); 
     
    188196    m_MainPter->openFileActivated (); 
    189197    m_MainPter->waitForFileLoaded (); 
    190     CPPUNIT_ASSERT_EQUAL (0,  
     198    CPPUNIT_ASSERT_EQUAL (0, 
    191199            g_ascii_strcasecmp ("PDF Viewer", m_View->getTitle ())); 
    192200    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    198206    CPPUNIT_ASSERT (!m_View->isSensitiveRotateLeft ()); 
    199207    CPPUNIT_ASSERT (!m_View->isSensitiveRotateRight ()); 
     208    CPPUNIT_ASSERT (!m_View->isSensitiveSave ()); 
     209    CPPUNIT_ASSERT (!m_View->isSensitiveZoom ()); 
    200210    CPPUNIT_ASSERT (!m_View->isSensitiveZoomIn ()); 
    201211    CPPUNIT_ASSERT (!m_View->isSensitiveZoomOut ()); 
     
    231241    CPPUNIT_ASSERT (!m_View->isSensitiveRotateLeft ()); 
    232242    CPPUNIT_ASSERT (!m_View->isSensitiveRotateRight ()); 
     243    CPPUNIT_ASSERT (!m_View->isSensitiveSave ()); 
     244    CPPUNIT_ASSERT (!m_View->isSensitiveZoom ()); 
    233245    CPPUNIT_ASSERT (!m_View->isSensitiveZoomIn ()); 
    234246    CPPUNIT_ASSERT (!m_View->isSensitiveZoomOut ()); 
     
    254266    m_MainPter->openFileActivated (); 
    255267    m_MainPter->waitForFileLoaded (); 
    256     CPPUNIT_ASSERT_EQUAL (0,  
     268    CPPUNIT_ASSERT_EQUAL (0, 
    257269            g_ascii_strcasecmp ("PDF Viewer", m_View->getTitle ())); 
    258270    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    264276    CPPUNIT_ASSERT (!m_View->isSensitiveRotateLeft ()); 
    265277    CPPUNIT_ASSERT (!m_View->isSensitiveRotateRight ()); 
     278    CPPUNIT_ASSERT (!m_View->isSensitiveSave ()); 
     279    CPPUNIT_ASSERT (!m_View->isSensitiveZoom ()); 
    266280    CPPUNIT_ASSERT (!m_View->isSensitiveZoomIn ()); 
    267281    CPPUNIT_ASSERT (!m_View->isSensitiveZoomOut ()); 
     
    287301    m_MainPter->openFileActivated (); 
    288302    m_MainPter->waitForFileLoaded (); 
    289     CPPUNIT_ASSERT_EQUAL (0,  
     303    CPPUNIT_ASSERT_EQUAL (0, 
    290304            g_ascii_strcasecmp ("/tmp/test.pdf", m_View->getTitle ())); 
    291305    CPPUNIT_ASSERT (!m_View->isSensitiveGoToFirstPage ()); 
     
    297311    CPPUNIT_ASSERT (m_View->isSensitiveRotateLeft ()); 
    298312    CPPUNIT_ASSERT (m_View->isSensitiveRotateRight ()); 
     313    CPPUNIT_ASSERT (m_View->isSensitiveSave ()); 
     314    CPPUNIT_ASSERT (m_View->isSensitiveZoom ()); 
    299315    CPPUNIT_ASSERT (m_View->isSensitiveZoomIn ()); 
    300316    CPPUNIT_ASSERT (m_View->isSensitiveZoomOut ()); 
     
    326342    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("/tmp",  
    327343                                             m_View->getLastOpenFileFolder ())); 
    328      
     344 
    329345    m_MainPter->openFileActivated (); 
    330346    m_MainPter->waitForFileLoaded (); 
     
    518534    m_MainPter->zoomOutActivated (); 
    519535    CPPUNIT_ASSERT_DOUBLES_EQUAL (1.0, m_Document->getZoom (), 0.0001); 
    520     
     536 
    521537    CPPUNIT_ASSERT (m_View->isSensitiveZoomIn ()); 
    522538    CPPUNIT_ASSERT (m_View->isSensitiveZoomOut ()); 
     
    545561    m_MainPter->openFileActivated (); 
    546562    m_MainPter->waitForFileLoaded (); 
    547      
     563 
    548564    m_MainPter->zoomWidthActivated (TRUE); 
    549565    CPPUNIT_ASSERT (m_View->isZoomToWidthActive ()); 
     
    570586    m_MainPter->openFileActivated (); 
    571587    m_MainPter->waitForFileLoaded (); 
    572      
     588 
    573589    m_MainPter->zoomFitActivated (TRUE); 
    574590    CPPUNIT_ASSERT (m_View->isZoomToFitActive ()); 
     
    607623    m_MainPter->rotateLeftActivated (); 
    608624    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.3, m_Document->getZoom (), 0.0001); 
    609     m_MainPter->rotateRightActivated ();     
     625    m_MainPter->rotateRightActivated (); 
    610626    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.75, m_Document->getZoom (), 0.0001); 
    611     m_MainPter->rotateRightActivated ();     
     627    m_MainPter->rotateRightActivated (); 
    612628    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.3, m_Document->getZoom (), 0.0001); 
    613629    m_MainPter->rotateLeftActivated (); 
     
    621637    m_MainPter->rotateLeftActivated (); 
    622638    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.3, m_Document->getZoom (), 0.0001); 
    623     m_MainPter->rotateRightActivated ();     
     639    m_MainPter->rotateRightActivated (); 
    624640    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.2, m_Document->getZoom (), 0.0001); 
    625     m_MainPter->rotateRightActivated ();     
     641    m_MainPter->rotateRightActivated (); 
    626642    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.3, m_Document->getZoom (), 0.0001); 
    627643    m_MainPter->rotateLeftActivated (); 
    628644    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.2, m_Document->getZoom (), 0.0001); 
     645} 
     646 
     647/// 
     648/// @brief Test the current zoom level indicator. 
     649/// 
     650/// The main view has an entry in the tool bar that tells the user 
     651/// which is the current document's zoom level. Also, when the user 
     652/// enter a new zoom level and presses ENTER, the new zoom level is 
     653/// used. 
     654/// 
     655void 
     656MainPterTest::pageZoomIndicator () 
     657{ 
     658    // When the open is first opened, the zoom is 100%. 
     659    m_View->setOpenFileName ("/tmp/test.pdf"); 
     660    m_MainPter->openFileActivated (); 
     661    m_MainPter->waitForFileLoaded (); 
     662    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("100%", m_View->getZoomText ())); 
     663 
     664    // Try changing a little the zoom level. 
     665    m_MainPter->zoomInActivated (); 
     666    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("120%", m_View->getZoomText ())); 
     667    m_MainPter->zoomInActivated (); 
     668    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("144%", m_View->getZoomText ())); 
     669    m_MainPter->zoomOutActivated (); 
     670    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("120%", m_View->getZoomText ())); 
     671    m_MainPter->zoomOutActivated (); 
     672    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("100%", m_View->getZoomText ())); 
     673    m_MainPter->zoomOutActivated (); 
     674    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("83.3%", m_View->getZoomText ())); 
     675 
     676    // Now try to set the zoom level by hand. If the zoom level is  
     677    // clamped 400% and 5.41%. 
     678    m_View->setZoomText ("50%"); 
     679    m_MainPter->zoomActivated (); 
     680    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.5, m_Document->getZoom (), 0.0001); 
     681    m_View->setZoomText ("1000%"); 
     682    m_MainPter->zoomActivated (); 
     683    CPPUNIT_ASSERT_DOUBLES_EQUAL (4.0, m_Document->getZoom (), 0.0001); 
     684    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("400%", m_View->getZoomText ())); 
     685    m_View->setZoomText ("1"); 
     686    m_MainPter->zoomActivated (); 
     687    CPPUNIT_ASSERT_DOUBLES_EQUAL (0.0541, m_Document->getZoom (), 0.0001); 
     688    CPPUNIT_ASSERT (0 == g_ascii_strcasecmp ("5.41%", m_View->getZoomText ())); 
    629689} 
    630690