add clifmt/colors minimal test
This commit is contained in:
parent
d4daa435e5
commit
b4d6b8d8ff
|
@ -0,0 +1,54 @@
|
|||
package clifmt
|
||||
|
||||
import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func escape(in string) string {
|
||||
|
||||
out := make([]rune, 0)
|
||||
|
||||
for _, char := range in {
|
||||
if char == '\n' {
|
||||
out = append(out, []rune("\\n")...)
|
||||
} else if char == '\r' {
|
||||
out = append(out, []rune("\\r")...)
|
||||
} else if char == '\t' {
|
||||
out = append(out, []rune("\\t")...)
|
||||
} else if char == '\033' {
|
||||
out = append(out, []rune("\\033")...)
|
||||
} else {
|
||||
out = append(out, char)
|
||||
}
|
||||
}
|
||||
|
||||
return string(out)
|
||||
}
|
||||
|
||||
func TestColoring(t *testing.T) {
|
||||
|
||||
tests := []struct {
|
||||
Text string
|
||||
Color byte
|
||||
Bold bool
|
||||
Expect string
|
||||
}{
|
||||
{"any text", 0, false, "\033[0;0many text\033[0m"},
|
||||
{"any text", 1, false, "\033[0;1many text\033[0m"},
|
||||
{"any text", 32, false, "\033[0;32many text\033[0m"},
|
||||
|
||||
{"any text", 0, true, "\033[1;0many text\033[0m"},
|
||||
{"any text", 1, true, "\033[1;1many text\033[0m"},
|
||||
{"any text", 32, true, "\033[1;32many text\033[0m"},
|
||||
}
|
||||
|
||||
for i, test := range tests {
|
||||
|
||||
colored := Color(test.Color, test.Text, test.Bold)
|
||||
if colored != test.Expect {
|
||||
t.Errorf("[%d] expected '%s', got '%s'", i, escape(test.Expect), escape(colored))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -92,24 +92,3 @@ func displaySize(s string) int {
|
|||
|
||||
return size
|
||||
}
|
||||
|
||||
func escape(in string) string {
|
||||
|
||||
out := make([]rune, 0)
|
||||
|
||||
for _, char := range in {
|
||||
if char == '\n' {
|
||||
out = append(out, []rune("\\n")...)
|
||||
} else if char == '\r' {
|
||||
out = append(out, []rune("\\r")...)
|
||||
} else if char == '\t' {
|
||||
out = append(out, []rune("\\t")...)
|
||||
} else if char == '\033' {
|
||||
out = append(out, []rune("\\033")...)
|
||||
} else {
|
||||
out = append(out, char)
|
||||
}
|
||||
}
|
||||
|
||||
return string(out)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue