def test_ask_confirmation(self):
        """
        DialogHelper.ask_confirmation() behaves properly
        """
        dialog = DialogHelper()

        dialog.set_input_stream(self.get_input_stream('\n\n'))
        self.assertTrue(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?'))
        self.assertFalse(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?', False))

        dialog.set_input_stream(self.get_input_stream('y\nyes\n'))
        self.assertTrue(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?', False))
        self.assertTrue(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?', False))

        dialog.set_input_stream(self.get_input_stream('n\nno\n'))
        self.assertFalse(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?', True))
        self.assertFalse(dialog.ask_confirmation(self.get_output_stream(), 'Do you like French fries?', True))