Ejemplo n.º 1
0
 def testUpdateMessageInvalidMessage(self):
   stream = io.StringIO()
   ssco = multiline.SimpleSuffixConsoleOutput(stream)
   stray_message = multiline.SuffixConsoleMessage('asdf', stream)
   with self.assertRaisesRegex(
       ValueError,
       'The given message does not belong to this output object.'):
     ssco.UpdateMessage(stray_message, 'fdsa')
Ejemplo n.º 2
0
 def testUpdateMessageUpdatingOldMessage(self):
     stream = io.StringIO()
     ssco = multiline.SimpleSuffixConsoleOutput(stream)
     msg1 = ssco.AddMessage('Im a little ')
     ssco.AddMessage('I make soup in the ')
     with self.assertRaisesRegex(
             ValueError, 'Only the last added message can be updated.'):
         ssco.UpdateMessage(msg1, 'teapot')
Ejemplo n.º 3
0
 def testAddAndUpdateConsole(self):
     stream = io.StringIO()
     ssco = multiline.SimpleSuffixConsoleOutput(stream)
     ssco.AddMessage('message')
     self.assertEqual('', stream.getvalue())
     ssco.UpdateConsole()
     self.assertEqual(
         # Update 1
         '\r' + ' ' * self.console_size + '\r' + 'message',
         stream.getvalue())
Ejemplo n.º 4
0
  def _SetupOutput(self):
    def _FormattedCallback():
      if self._detail_message_callback:
        detail_message = self._detail_message_callback()
        if detail_message:
          return ' ' + detail_message + '...'
      return None

    self._console_output = multiline.SimpleSuffixConsoleOutput(self._stream)
    self._console_message = self._console_output.AddMessage(
        self._prefix, detail_message_callback=_FormattedCallback)
Ejemplo n.º 5
0
 def testUpdateMessageAddMessageUpdateConsole(self):
     stream = io.StringIO()
     ssco = multiline.SimpleSuffixConsoleOutput(stream)
     message = ssco.AddMessage('message')
     ssco.UpdateConsole()
     ssco.UpdateMessage(message, 'suffix')
     ssco.AddMessage('new message')
     ssco.UpdateConsole()
     self.assertEqual(
         # Update 1
         '\r' + ' ' * self.console_size + '\r' + 'message' +
         # Update 2
         '\r' + ' ' * self.console_size + '\r' + 'messagesuffix' + '\n' +
         '\r' + ' ' * self.console_size + '\r' + 'new message',
         stream.getvalue())
Ejemplo n.º 6
0
 def testMultipleAddsAndUpdateConsoles(self):
     stream = io.StringIO()
     ssco = multiline.SimpleSuffixConsoleOutput(stream)
     ssco.AddMessage('message')
     ssco.UpdateConsole()
     ssco.AddMessage('egassem')
     ssco.UpdateConsole()
     ssco.UpdateConsole()
     self.assertEqual(
         # Update 1
         '\r' + ' ' * self.console_size + '\r' + 'message' +
         # Update 2
         '\r' + ' ' * self.console_size + '\r' + 'message' + '\n' + '\r' +
         ' ' * self.console_size + '\r' + 'egassem' +
         # Update 2
         '\r' + ' ' * self.console_size + '\r' + 'egassem',
         stream.getvalue())
Ejemplo n.º 7
0
 def _SetupOutput(self):
   # Console outputting objects
   self._console_output = multiline.SimpleSuffixConsoleOutput(self._stream)
   self._header_message = self._console_output.AddMessage(self._message)
   self._current_stage_message = self._header_message
Ejemplo n.º 8
0
 def testUpdateNoMessages(self):
   stream = io.StringIO()
   ssco = multiline.SimpleSuffixConsoleOutput(stream)
   ssco.UpdateConsole()
   self.assertEqual('', stream.getvalue())
Ejemplo n.º 9
0
 def testUpdateMessageNoMessage(self):
   stream = io.StringIO()
   ssco = multiline.SimpleSuffixConsoleOutput(stream)
   with self.assertRaisesRegex(ValueError, 'A message must be passed.'):
     ssco.UpdateMessage(None, 'fdsa')