$29 GRAYBYTE WORDPRESS FILE MANAGER $78

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 172.67.217.254 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/opt/alt/python34/lib64/python3.4/idlelib/idle_test/

HOME
Current File : /opt/alt/python34/lib64/python3.4/idlelib/idle_test//test_textview.py
'''Test the functions and main class method of textView.py.

Since all methods and functions create (or destroy) a TextViewer, which
is a widget containing multiple widgets, all tests must be gui tests.
Using mock Text would not change this.  Other mocks are used to retrieve
information about calls.

The coverage is essentially 100%.
'''
from test.support import requires
requires('gui')

import unittest
import os
from tkinter import Tk
from idlelib import textView as tv
from idlelib.idle_test.mock_idle import Func
from idlelib.idle_test.mock_tk import Mbox

def setUpModule():
    global root
    root = Tk()

def tearDownModule():
    global root
    root.destroy()  # pyflakes falsely sees root as undefined
    del root


class TV(tv.TextViewer):  # used by TextViewTest
    transient = Func()
    grab_set = Func()
    wait_window = Func()

class TextViewTest(unittest.TestCase):

    def setUp(self):
        TV.transient.__init__()
        TV.grab_set.__init__()
        TV.wait_window.__init__()

    def test_init_modal(self):
        view = TV(root, 'Title', 'test text')
        self.assertTrue(TV.transient.called)
        self.assertTrue(TV.grab_set.called)
        self.assertTrue(TV.wait_window.called)
        view.Ok()

    def test_init_nonmodal(self):
        view = TV(root, 'Title', 'test text', modal=False)
        self.assertFalse(TV.transient.called)
        self.assertFalse(TV.grab_set.called)
        self.assertFalse(TV.wait_window.called)
        view.Ok()

    def test_ok(self):
        view = TV(root, 'Title', 'test text', modal=False)
        view.destroy = Func()
        view.Ok()
        self.assertTrue(view.destroy.called)
        del view.destroy  # unmask real function
        view.destroy


class textviewTest(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.orig_mbox = tv.tkMessageBox
        tv.tkMessageBox = Mbox

    @classmethod
    def tearDownClass(cls):
        tv.tkMessageBox = cls.orig_mbox
        del cls.orig_mbox

    def test_view_text(self):
        # If modal True, tkinter will error with 'can't invoke "event" command'
        view = tv.view_text(root, 'Title', 'test text', modal=False)
        self.assertIsInstance(view, tv.TextViewer)

    def test_view_file(self):
        test_dir = os.path.dirname(__file__)
        testfile = os.path.join(test_dir, 'test_textview.py')
        view = tv.view_file(root, 'Title', testfile, modal=False)
        self.assertIsInstance(view, tv.TextViewer)
        self.assertIn('Test', view.textView.get('1.0', '1.end'))
        view.Ok()

        # Mock messagebox will be used and view_file will not return anything
        testfile = os.path.join(test_dir, '../notthere.py')
        view = tv.view_file(root, 'Title', testfile, modal=False)
        self.assertIsNone(view)


if __name__ == '__main__':
    unittest.main(verbosity=2)


Current_dir [ NOT WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
24 May 2024 8.33 AM
root / linksafe
0755
__pycache__
--
24 May 2024 8.33 AM
root / linksafe
0755
README.txt
5.052 KB
18 Mar 2019 4.51 PM
root / linksafe
0644
__init__.py
0.348 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
htest.py
13.331 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
mock_idle.py
1.536 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
mock_tk.py
11.273 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_autocomplete.py
4.884 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_autoexpand.py
4.021 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_calltips.py
6.487 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_config_name.py
2.343 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_configdialog.py
0.717 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_delegator.py
1.264 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_editor.py
0.572 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_formatparagraph.py
14.005 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_grep.py
2.608 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_hyperparser.py
8.849 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_idlehistory.py
5.337 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_io.py
8.17 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_parenmatch.py
3.455 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_pathbrowser.py
0.861 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_rstrip.py
1.575 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_searchdialogbase.py
5.734 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_searchengine.py
11.235 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_text.py
6.581 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_textview.py
2.804 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_warning.py
3.057 KB
17 Apr 2024 5.09 PM
root / linksafe
0644
test_widgetredir.py
4.031 KB
17 Apr 2024 5.09 PM
root / linksafe
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF