[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.117.8.84: ~ $
'''Test (selected) IDLE Edit menu items.

Edit modules have their own test files files
'''
from test.support import requires
requires('gui')
import tkinter as tk
import unittest
from idlelib import PyShell

class PasteTest(unittest.TestCase):
    '''Test pasting into widgets that allow pasting.

    On X11, replacing selections requires tk fix.
    '''
    @classmethod
    def setUpClass(cls):
        cls.root = root = tk.Tk()
        root.withdraw()
        PyShell.fix_x11_paste(root)
        cls.text = tk.Text(root)
        cls.entry = tk.Entry(root)
        cls.spin = tk.Spinbox(root)
        root.clipboard_clear()
        root.clipboard_append('two')

    @classmethod
    def tearDownClass(cls):
        del cls.text, cls.entry, cls.spin
        cls.root.clipboard_clear()
        cls.root.update_idletasks()
        cls.root.destroy()
        del cls.root

    def test_paste_text(self):
        "Test pasting into text with and without a selection."
        text = self.text
        for tag, ans in ('', 'onetwo\n'), ('sel', 'two\n'):
            with self.subTest(tag=tag, ans=ans):
                text.delete('1.0', 'end')
                text.insert('1.0', 'one', tag)
                text.event_generate('<<Paste>>')
                self.assertEqual(text.get('1.0', 'end'), ans)

    def test_paste_entry(self):
        "Test pasting into an entry with and without a selection."
        # On 3.6, generated <<Paste>> fails without empty select range
        # for 'no selection'.  Live widget works fine.
        entry = self.entry
        for end, ans in (0, 'onetwo'), ('end', 'two'):
            with self.subTest(entry=entry, end=end, ans=ans):
                entry.delete(0, 'end')
                entry.insert(0, 'one')
                entry.select_range(0, end)  # see note
                entry.event_generate('<<Paste>>')
                self.assertEqual(entry.get(), ans)

    def test_paste_spin(self):
        "Test pasting into a spinbox with and without a selection."
        # See note above for entry.
        spin = self.spin
        for end, ans in (0, 'onetwo'), ('end', 'two'):
            with self.subTest(end=end, ans=ans):
                spin.delete(0, 'end')
                spin.insert(0, 'one')
                spin.selection('range', 0, end)  # see note
                spin.event_generate('<<Paste>>')
                self.assertEqual(spin.get(), ans)


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

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
README.txt File 5.49 KB 0644
__init__.py File 650 B 0644
htest.py File 13.48 KB 0644
mock_idle.py File 1.54 KB 0644
mock_tk.py File 11.35 KB 0644
test_autocomplete.py File 4.8 KB 0644
test_autoexpand.py File 4.02 KB 0644
test_calltips.py File 6.49 KB 0644
test_config_help.py File 3.48 KB 0644
test_config_name.py File 2.34 KB 0644
test_configdialog.py File 834 B 0644
test_delegator.py File 1.5 KB 0644
test_editmenu.py File 2.41 KB 0644
test_editor.py File 586 B 0644
test_formatparagraph.py File 14 KB 0644
test_grep.py File 2.61 KB 0644
test_help_about.py File 1.53 KB 0644
test_hyperparser.py File 8.88 KB 0644
test_idlehistory.py File 5.36 KB 0644
test_io.py File 8.17 KB 0644
test_parenmatch.py File 3.48 KB 0644
test_pathbrowser.py File 882 B 0644
test_percolator.py File 3.96 KB 0644
test_replacedialog.py File 8.11 KB 0644
test_rstrip.py File 1.58 KB 0644
test_searchdialog.py File 2.35 KB 0644
test_searchdialogbase.py File 5.73 KB 0644
test_searchengine.py File 11.25 KB 0644
test_text.py File 6.58 KB 0644
test_textview.py File 2.83 KB 0644
test_undodelegator.py File 4.19 KB 0644
test_warning.py File 2.69 KB 0644
test_widgetredir.py File 4.1 KB 0644