Exemplo n.º 1
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = PercentageWidget()
     widget.init(progressbar, writer.get_width())
     for i in xrange(5, 96, 5):
         progressbar.step += 1
         result = widget.update(progressbar, writer.get_width())
         Assert(result) == '%i%%' % i
Exemplo n.º 2
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = PercentageWidget()
     widget.init(progressbar, writer.get_width())
     for i in xrange(5, 96, 5):
         progressbar.step += 1
         result = widget.update(progressbar, writer.get_width())
         Assert(result) == '%i%%' % i
Exemplo n.º 3
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = StepWidget()
     widget.init(progressbar, writer.get_width())
     for i in xrange(1, 21):
         progressbar.step += 1
         result = widget.update(progressbar, writer.get_width())
         Assert(len(result)) == widget.size_hint(progressbar)
         Assert(result) == '%i of 20' % i
Exemplo n.º 4
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = StepWidget()
     widget.init(progressbar, writer.get_width())
     for i in xrange(1, 21):
         progressbar.step += 1
         result = widget.update(progressbar, writer.get_width())
         Assert(len(result)) == widget.size_hint(progressbar)
         Assert(result) == '%i of 20' % i
Exemplo n.º 5
0
def test_text_widget():
    writer = TerminalWriter(StringIO())
    progressbar = ProgressBar([], writer)
    widget = TextWidget('foobar')
    assert widget.provides_size_hint
    Assert(widget.size_hint(progressbar)) == len('foobar')
    Assert(widget.init(progressbar, writer.get_width())) == 'foobar'
    Assert(widget.update(progressbar, writer.get_width())) == 'foobar'
    Assert(widget.finish(progressbar, writer.get_width())) == 'foobar'

    Assert(repr(widget)) == "TextWidget('foobar')"
Exemplo n.º 6
0
def test_text_widget():
    writer = TerminalWriter(StringIO())
    progressbar = ProgressBar([], writer)
    widget = TextWidget('foobar')
    assert widget.provides_size_hint
    Assert(widget.size_hint(progressbar)) == len('foobar')
    Assert(widget.init(progressbar, writer.get_width())) == 'foobar'
    Assert(widget.update(progressbar, writer.get_width())) == 'foobar'
    Assert(widget.finish(progressbar, writer.get_width())) == 'foobar'

    Assert(repr(widget)) == "TextWidget('foobar')"
Exemplo n.º 7
0
def test_hint_widget():
    writer = TerminalWriter(StringIO())
    progressbar = ProgressBar([], writer)
    widget = HintWidget('foo')
    assert not widget.provides_size_hint
    Assert(widget.init(progressbar, writer.get_width())) == 'foo'
    Assert(widget.update(progressbar, writer.get_width(), hint='bar')) == 'bar'
    Assert(widget.update(progressbar, writer.get_width(), hint='baz')) == 'baz'
    Assert(widget.finish(progressbar, writer.get_width(), hint='spam')) == 'spam'

    Assert(repr(widget)) == "HintWidget('foo')"

    widget.finish(progressbar, writer.get_width()) == u''
Exemplo n.º 8
0
    def get_width(self):
        with Assert.not_raising(Exception):
            self.writer.get_width()
        writer = TerminalWriter(sys.__stdout__)
        Assert(writer.get_width()) == writer.get_dimensions()[1]

        writer = TerminalWriter(StringIO())
        os.environ['COLUMNS'] = '50'
        Assert(writer.get_width()) == 50
        del os.environ['COLUMNS']
        Assert(writer.get_width()) == TerminalWriter.default_width
        default_width = TerminalWriter.default_width
        Assert(writer.get_width(default_width + 1)) == default_width + 1
Exemplo n.º 9
0
    def get_width(self):
        with Assert.not_raising(Exception):
            self.writer.get_width()
        writer = TerminalWriter(sys.__stdout__)
        Assert(writer.get_width()) == writer.get_dimensions()[1]

        writer = TerminalWriter(StringIO())
        os.environ['COLUMNS'] = '50'
        Assert(writer.get_width()) == 50
        del os.environ['COLUMNS']
        Assert(writer.get_width()) == TerminalWriter.default_width
        default_width = TerminalWriter.default_width
        Assert(writer.get_width(default_width + 1)) == default_width + 1
Exemplo n.º 10
0
def test_hint_widget():
    writer = TerminalWriter(StringIO())
    progressbar = ProgressBar([], writer)
    widget = HintWidget('foo')
    assert not widget.provides_size_hint
    Assert(widget.init(progressbar, writer.get_width())) == 'foo'
    Assert(widget.update(progressbar, writer.get_width(), hint='bar')) == 'bar'
    Assert(widget.update(progressbar, writer.get_width(), hint='baz')) == 'baz'
    Assert(widget.finish(progressbar, writer.get_width(),
                         hint='spam')) == 'spam'

    Assert(repr(widget)) == "HintWidget('foo')"

    widget.finish(progressbar, writer.get_width()) == u''
Exemplo n.º 11
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer)
     widget = Widget()
     with Assert.raises(NotImplementedError) as exc:
         widget.update(progressbar, writer.get_width())
     Assert(exc.args[0]) == 'Widget.update'
Exemplo n.º 12
0
 def update(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer)
     widget = Widget()
     with Assert.raises(NotImplementedError) as exc:
         widget.update(progressbar, writer.get_width())
     Assert(exc.args[0]) == 'Widget.update'
Exemplo n.º 13
0
    def finish(self):
        class MyWidget(Widget):
            update_called = False

            def update(self, writer, remaining_width, **kwargs):
                self.update_called = True

        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)
        widget = MyWidget()
        widget.finish(progressbar, writer.get_width())
        assert widget.update_called
Exemplo n.º 14
0
    def init(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer, maxsteps=20)
        widget = StepWidget()
        Assert(widget.init(progressbar, writer.get_width())) == '0 of 20'
        Assert(widget.size_hint(progressbar)) == 7

        with Assert.raises(ValueError):
            StepWidget('foo')

        with Assert.not_raising(ValueError):
            StepWidget('bytes')
Exemplo n.º 15
0
    def init(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer, maxsteps=20)
        widget = StepWidget()
        Assert(widget.init(progressbar, writer.get_width())) == '0 of 20'
        Assert(widget.size_hint(progressbar)) == 7

        with Assert.raises(ValueError):
            StepWidget('foo')

        with Assert.not_raising(ValueError):
            StepWidget('bytes')
Exemplo n.º 16
0
    def finish(self):
        class MyWidget(Widget):
            update_called = False

            def update(self, writer, remaining_width, **kwargs):
                self.update_called = True

        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)
        widget = MyWidget()
        widget.finish(progressbar, writer.get_width())
        assert widget.update_called
Exemplo n.º 17
0
 def get_usable_width(self):
     writer = TerminalWriter(StringIO(), prefix='spam')
     Assert(writer.get_usable_width()) == writer.get_width() - len('spam')
     writer.indent()
     Assert(writer.get_usable_width()) == writer.get_width() - 8
Exemplo n.º 18
0
 def finish(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = StepWidget()
     progressbar.step = progressbar.maxsteps
     Assert(widget.finish(progressbar, writer.get_width())) == '20 of 20'
Exemplo n.º 19
0
 def finish(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=100)
     widget = PercentageWidget()
     widget.init(progressbar, writer.get_width())
     Assert(widget.finish(progressbar, writer.get_width())) == '100%'
Exemplo n.º 20
0
 def finish(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=100)
     widget = PercentageWidget()
     widget.init(progressbar, writer.get_width())
     Assert(widget.finish(progressbar, writer.get_width())) == '100%'
Exemplo n.º 21
0
 def get_usable_width(self):
     writer = TerminalWriter(StringIO(), prefix='spam')
     Assert(writer.get_usable_width()) == writer.get_width() - len('spam')
     writer.indent()
     Assert(writer.get_usable_width()) == writer.get_width() - 8
Exemplo n.º 22
0
 def finish(self):
     writer = TerminalWriter(StringIO())
     progressbar = ProgressBar([], writer, maxsteps=20)
     widget = StepWidget()
     progressbar.step = progressbar.maxsteps
     Assert(widget.finish(progressbar, writer.get_width())) == '20 of 20'