mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2025-07-21 12:41:10 +02:00
56 lines
2.1 KiB
Python
56 lines
2.1 KiB
Python
import unittest
|
|
from unittests import wtc
|
|
import wx
|
|
import os
|
|
|
|
import wx.lib.sized_controls as sc
|
|
try:
|
|
from wx.lib.pdfviewer import pdfViewer, pdfButtonPanel
|
|
havePyPDF = True
|
|
except ImportError:
|
|
havePyPDF = False # Assume neither PyMuPDF nor PyPDF2 found
|
|
|
|
dataDir = os.path.join(os.path.dirname(__file__), "data")
|
|
samplePdf = os.path.join(dataDir, "sample.pdf")
|
|
|
|
#---------------------------------------------------------------------------
|
|
|
|
@unittest.skipIf('wxMac' in wx.PlatformInfo or 'wxGTK' in wx.PlatformInfo,
|
|
'test is crashing on Mac and GTK...')
|
|
class lib_pdfviewer_pdfviewer_Tests(wtc.WidgetTestCase):
|
|
|
|
@unittest.skipIf(not havePyPDF, "PyMuPDF or PyPDF2 required")
|
|
def test_lib_pdfviewer_pdfviewerButtonPanelCtor(self):
|
|
bp = pdfButtonPanel(self.frame, wx.ID_ANY,
|
|
wx.DefaultPosition, wx.DefaultSize, 0)
|
|
|
|
@unittest.skipIf(not havePyPDF, "PyMuPDF or PyPDF2 required")
|
|
def test_lib_pdfviewer_pdfviewerPdfViewerCtor(self):
|
|
pv = pdfViewer(self.frame, wx.ID_ANY, wx.DefaultPosition,
|
|
wx.DefaultSize,
|
|
wx.HSCROLL|wx.VSCROLL|wx.SUNKEN_BORDER)
|
|
|
|
@unittest.skipIf(not havePyPDF, "PyMuPDF or PyPDF2 required")
|
|
def test_lib_pdfviewer_loadFile(self):
|
|
paneCont = sc.SizedPanel(self.frame)
|
|
|
|
self.buttonpanel = pdfButtonPanel(paneCont, wx.ID_ANY,
|
|
wx.DefaultPosition, wx.DefaultSize, 0)
|
|
self.buttonpanel.SetSizerProps(expand=True)
|
|
self.viewer = pdfViewer(paneCont, wx.ID_ANY, wx.DefaultPosition,
|
|
wx.DefaultSize,
|
|
wx.HSCROLL|wx.VSCROLL|wx.SUNKEN_BORDER)
|
|
self.viewer.SetSizerProps(expand=True, proportion=1)
|
|
|
|
# introduce buttonpanel and viewer to each other
|
|
self.buttonpanel.viewer = self.viewer
|
|
self.viewer.buttonpanel = self.buttonpanel
|
|
|
|
self.viewer.LoadFile(samplePdf)
|
|
self.waitFor(500)
|
|
|
|
#---------------------------------------------------------------------------
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|