| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package console
- import (
- "fmt"
- "testing"
- "gotest.tools/v3/assert"
- )
- func TestProgressWriter(t *testing.T) {
- c := &bufferConsole{}
- p := progress{
- console: c,
- }
- p.ResourceEvent("resource1", "CREATE_IN_PROGRESS", "")
- assert.Equal(t, c.lines[0], "resource1 ... CREATE_IN_PROGRESS ")
- p.ResourceEvent("resource2_long_name", "CREATE_IN_PROGRESS", "ok")
- assert.Equal(t, c.lines[0], "resource1 ... CREATE_IN_PROGRESS ")
- assert.Equal(t, c.lines[1], "resource2_long_name ... CREATE_IN_PROGRESS ok")
- p.ResourceEvent("resource2_long_name", "CREATE_COMPLETE", "done")
- assert.Equal(t, c.lines[0], "resource1 ... CREATE_IN_PROGRESS ")
- assert.Equal(t, c.lines[1], "resource2_long_name ... CREATE_COMPLETE done")
- p.ResourceEvent("resource1", "CREATE_FAILED", "oups")
- assert.Equal(t, c.lines[0], "resource1 ... CREATE_FAILED oups")
- assert.Equal(t, c.lines[1], "resource2_long_name ... CREATE_COMPLETE done")
- }
- type bufferConsole struct {
- pos int
- lines []string
- }
- func (b *bufferConsole) Printf(format string, a ...interface{}) {
- b.lines[b.pos] = fmt.Sprintf(format, a...)
- }
- func (b *bufferConsole) MoveUp(i int) {
- b.pos -= i
- }
- func (b *bufferConsole) MoveDown(i int) {
- b.pos += i
- }
- func (b *bufferConsole) ClearLine() {
- if len(b.lines) <= b.pos {
- b.lines = append(b.lines, "")
- }
- b.lines[b.pos] = ""
- }
- func (b *bufferConsole) OK(s string) string {
- return s
- }
- func (b *bufferConsole) KO(s string) string {
- return s
- }
- func (b *bufferConsole) WiP(s string) string {
- return s
- }
|