Skip to content

Commit 7b62416

Browse files
miss-islingtonterryjreedy
authored andcommitted
[3.6] bpo-31480: IDLE - fix tests to pass with zzdummy extension disabled. (GH-3590) (#3591)
Enabled by default was a temporary expedient. The fix is to add a user override to enable. (cherry picked from commit d384a81)
1 parent 49caab4 commit 7b62416

File tree

4 files changed

+41
-45
lines changed

4 files changed

+41
-45
lines changed

Lib/idlelib/config-extensions.def

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ bell= True
5555
# A fake extension for testing and example purposes. When enabled and
5656
# invoked, inserts or deletes z-text at beginning of every line.
5757
[ZzDummy]
58-
enable= True
58+
enable= False
5959
enable_shell = False
6060
enable_editor = True
6161
z-text= Z

Lib/idlelib/idle_test/test_config.py

Lines changed: 38 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
usermain = testcfg['main'] = config.IdleUserConfParser('')
2727
userhigh = testcfg['highlight'] = config.IdleUserConfParser('')
2828
userkeys = testcfg['keys'] = config.IdleUserConfParser('')
29+
userextn = testcfg['extensions'] = config.IdleUserConfParser('')
2930

3031
def setUpModule():
3132
idleConf.userCfg = testcfg
@@ -430,29 +431,22 @@ def test_default_keys(self):
430431
sys.platform = current_platform
431432

432433
def test_get_extensions(self):
433-
conf = self.mock_config()
434-
435-
# Add disable extensions
436-
conf.SetOption('extensions', 'DISABLE', 'enable', 'False')
437-
434+
userextn.read_string('''
435+
[ZzDummy]
436+
enable = True
437+
[DISABLE]
438+
enable = False
439+
''')
438440
eq = self.assertEqual
439-
eq(conf.GetExtensions(),
440-
['ZzDummy'])
441-
eq(conf.GetExtensions(active_only=False),
442-
['ZzDummy', 'DISABLE'])
443-
eq(conf.GetExtensions(editor_only=True),
444-
['ZzDummy'])
445-
eq(conf.GetExtensions(shell_only=True),
446-
[])
447-
eq(conf.GetExtensions(active_only=False, editor_only=True),
448-
['ZzDummy', 'DISABLE'])
449-
450-
# Add user extensions
451-
conf.SetOption('extensions', 'Foobar', 'enable', 'True')
452-
eq(conf.GetExtensions(),
453-
['ZzDummy', 'Foobar']) # User extensions didn't sort
454-
eq(conf.GetExtensions(active_only=False),
455-
['ZzDummy', 'DISABLE', 'Foobar'])
441+
iGE = idleConf.GetExtensions
442+
eq(iGE(shell_only=True), [])
443+
eq(iGE(), ['ZzDummy'])
444+
eq(iGE(editor_only=True), ['ZzDummy'])
445+
eq(iGE(active_only=False), ['ZzDummy', 'DISABLE'])
446+
eq(iGE(active_only=False, editor_only=True), ['ZzDummy', 'DISABLE'])
447+
userextn.remove_section('ZzDummy')
448+
userextn.remove_section('DISABLE')
449+
456450

457451
def test_remove_key_bind_names(self):
458452
conf = self.mock_config()
@@ -462,39 +456,39 @@ def test_remove_key_bind_names(self):
462456
['AutoComplete', 'CodeContext', 'FormatParagraph', 'ParenMatch','ZzDummy'])
463457

464458
def test_get_extn_name_for_event(self):
465-
conf = self.mock_config()
466-
459+
userextn.read_string('''
460+
[ZzDummy]
461+
enable = True
462+
''')
467463
eq = self.assertEqual
468-
eq(conf.GetExtnNameForEvent('z-in'), 'ZzDummy')
469-
eq(conf.GetExtnNameForEvent('z-out'), None)
464+
eq(idleConf.GetExtnNameForEvent('z-in'), 'ZzDummy')
465+
eq(idleConf.GetExtnNameForEvent('z-out'), None)
466+
userextn.remove_section('ZzDummy')
470467

471468
def test_get_extension_keys(self):
472-
conf = self.mock_config()
473-
474-
eq = self.assertEqual
475-
eq(conf.GetExtensionKeys('ZzDummy'),
469+
userextn.read_string('''
470+
[ZzDummy]
471+
enable = True
472+
''')
473+
self.assertEqual(idleConf.GetExtensionKeys('ZzDummy'),
476474
{'<<z-in>>': ['<Control-Shift-KeyRelease-Insert>']})
475+
userextn.remove_section('ZzDummy')
477476
# need option key test
478477
## key = ['<Option-Key-2>'] if sys.platform == 'darwin' else ['<Alt-Key-2>']
479478
## eq(conf.GetExtensionKeys('ZoomHeight'), {'<<zoom-height>>': key})
480479

481480
def test_get_extension_bindings(self):
482-
conf = self.mock_config()
483-
484-
self.assertEqual(conf.GetExtensionBindings('NotExists'), {})
485-
486-
#key = ['<Option-Key-2>'] if sys.platform == 'darwin' else ['<Alt-Key-2>']
481+
userextn.read_string('''
482+
[ZzDummy]
483+
enable = True
484+
''')
485+
eq = self.assertEqual
486+
iGEB = idleConf.GetExtensionBindings
487+
eq(iGEB('NotExists'), {})
487488
expect = {'<<z-in>>': ['<Control-Shift-KeyRelease-Insert>'],
488489
'<<z-out>>': ['<Control-Shift-KeyRelease-Delete>']}
489-
self.assertEqual(
490-
conf.GetExtensionBindings('ZzDummy'), expect)
491-
492-
# Add non-configuarable bindings
493-
conf.defaultCfg['extensions'].add_section('Foobar')
494-
conf.defaultCfg['extensions'].add_section('Foobar_bindings')
495-
conf.defaultCfg['extensions'].set('Foobar', 'enable', 'True')
496-
conf.defaultCfg['extensions'].set('Foobar_bindings', 'foobar', '<Key-F>')
497-
self.assertEqual(conf.GetExtensionBindings('Foobar'), {'<<foobar>>': ['<Key-F>']})
490+
eq(iGEB('ZzDummy'), expect)
491+
userextn.remove_section('ZzDummy')
498492

499493
def test_get_keybinding(self):
500494
conf = self.mock_config()

Lib/idlelib/idle_test/test_configdialog.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -820,6 +820,7 @@ def test_custom_name(self):
820820
self.assertEqual(d.load_keys_list.called, 1)
821821

822822
def test_keybinding(self):
823+
idleConf.SetOption('extensions', 'ZzDummy', 'enable', 'True')
823824
d = self.page
824825
d.custom_name.set('my custom keys')
825826
d.bindingslist.delete(0, 'end')
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
IDLE - make tests pass with zzdummy extension disabled by default.

0 commit comments

Comments
 (0)