示例#1
0
    def get_widgets_by_priority(self):
        class ComparableWidget(Widget):
            def __eq__(self, other):
                return self.__class__ is other.__class__

            def __ne__(self, other):
                return not self.__eq__(other)

            __hash__ = None

        class FooWidget(ComparableWidget):
            priority = 1

        class BarWidget(ComparableWidget):
            priority = 2

        class BazWidget(ComparableWidget):
            priority = 3

        widgets = [BarWidget(), FooWidget(), BazWidget()]

        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar(widgets, writer)
        Assert(progressbar.get_widgets_by_priority()) == [(2, BazWidget()),
                                                          (0, BarWidget()),
                                                          (1, FooWidget())]
示例#2
0
    def update(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)
        states = [
            '[.###..]',
            '[..###.]',
            '[...###]',
            '[..###.]',
            '[.###..]',
            '[###...]',
            '[.###..]'
        ]

        widget = BarWidget()
        for state in states:
            Assert(widget.update(progressbar, 8)) == state

        widget = BarWidget()
        widget.position = 10
        Assert(widget.update(progressbar, 8)) == '[..###.]'
        Assert(widget.update(progressbar, 8)) == '[.###..]'
示例#3
0
    def update(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)
        states = [
            '[.###..]', '[..###.]', '[...###]', '[..###.]', '[.###..]',
            '[###...]', '[.###..]'
        ]

        widget = BarWidget()
        for state in states:
            Assert(widget.update(progressbar, 8)) == state

        widget = BarWidget()
        widget.position = 10
        Assert(widget.update(progressbar, 8)) == '[..###.]'
        Assert(widget.update(progressbar, 8)) == '[.###..]'
示例#4
0
    def init(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)

        widget = BarWidget()
        Assert(widget.init(progressbar, 8)) == '[###...]'
示例#5
0
    def init(self):
        writer = TerminalWriter(StringIO())
        progressbar = ProgressBar([], writer)

        widget = BarWidget()
        Assert(widget.init(progressbar, 8)) == '[###...]'