Skip to content

Commit 7568496

Browse files
committed
tests for wizard quit support
1 parent 5b99df0 commit 7568496

2 files changed

Lines changed: 29 additions & 1 deletion

File tree

‎paths_cli/tests/wizard/test_wizard.py‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,3 +368,31 @@ def test_run_wizard(self, toy_engine):
368368
assert len(storage.networks) == len(storage.schemes) == 0
369369
assert len(storage.engines) == 1
370370
assert storage.engines[toy_engine.name] == toy_engine
371+
372+
def test_run_wizard_quit(self):
373+
console = MockConsole()
374+
self.wizard.console = console
375+
self.wizard._patched = True
376+
step = mock.Mock(
377+
func=mock.Mock(side_effect=QuitWizard()),
378+
display_name='Engine',
379+
store_name='engines',
380+
minimum=1,
381+
maximum=1
382+
)
383+
self.wizard.steps = [step]
384+
mock_ask_save = mock.Mock(return_value=False)
385+
with mock.patch.object(Wizard, '_ask_save', mock_ask_save):
386+
self.wizard.run_wizard()
387+
assert "Goodbye!" in self.wizard.console.log_text
388+
389+
@pytest.mark.parametrize('inputs', ['y', 'n'])
390+
def test_ask_save(self, inputs):
391+
expected = {'y': True, 'n': False}[inputs]
392+
console = MockConsole(['foo', inputs])
393+
self.wizard.console = console
394+
result = self.wizard._ask_save()
395+
assert result is expected
396+
assert "Before quitting" in self.wizard.console.log_text
397+
assert "Sorry" in self.wizard.console.log_text
398+

‎paths_cli/wizard/wizard.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,7 @@ def run_wizard(self):
332332

333333
@get_object
334334
def _ask_save(self):
335-
do_save_char = self.ask("Before quitting, would you like to "
335+
do_save_char = self.ask("Before quitting, would you like to save "
336336
"the objects you've created so far?")
337337
try:
338338
do_save = yes_no(do_save_char)

0 commit comments

Comments
 (0)