New submission from Terry J. Reedy:

The askyesno messagebox wrappers, added in #31287, returned None, which is 
interpreted as 'No', instead of the user entry.  With 'Yes' not seen, nothing 
was saved.

The manual tests, once the problem was understood, is to save a new 
theme/keyset and click the delete button twice, clicking No the first time and 
Yes the second time, and see what happens.

Unit testing the current version of askyesno would be difficult since it calls 
messagebox.askyesno(), which returns an answer, and there is no obvious way to 
get a reference to the actual widget, in order to generate simulated key or 
click events.

A long term solution might be to add a new subclass to query.Query, after 
reviewing *it* for ease of testing.

----------
assignee: terry.reedy
components: IDLE
messages: 302392
nosy: terry.reedy
priority: high
severity: normal
stage: needs patch
status: open
title: IDLE: Config dialog again deletes custom themes and keysets.
type: behavior
versions: Python 3.6, Python 3.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue31502>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to