1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-09 17:37:12 +00:00
kyverno/cmd/cli/kubectl-kyverno/test/output.go
Charles-Edouard Brétéché 7ffb049b7f
refactor: restructure cli test command (#6942)
* refactor: restructure cli test command

Signed-off-by: Charles-Edouard Brétéché <charles.edouard@nirmata.com>

* fix

Signed-off-by: Charles-Edouard Brétéché <charles.edouard@nirmata.com>

---------

Signed-off-by: Charles-Edouard Brétéché <charles.edouard@nirmata.com>
2023-04-18 12:08:17 +00:00

50 lines
1.3 KiB
Go

package test
import (
"os"
"github.com/fatih/color"
"github.com/kataras/tablewriter"
"github.com/lensesio/tableprinter"
)
var (
boldGreen *color.Color
boldRed *color.Color
boldYellow *color.Color
boldFgCyan *color.Color
headerBgColor int
headerFgColor int
)
func initColors(noColor bool) {
toggleColor := func(c *color.Color) *color.Color {
if noColor {
c.DisableColor()
}
return c
}
boldGreen = toggleColor(color.New(color.FgGreen).Add(color.Bold))
boldRed = toggleColor(color.New(color.FgRed).Add(color.Bold))
boldYellow = toggleColor(color.New(color.FgYellow).Add(color.Bold))
boldFgCyan = toggleColor(color.New(color.FgCyan).Add(color.Bold))
if !noColor {
headerBgColor = tablewriter.BgBlackColor
headerFgColor = tablewriter.FgGreenColor
}
}
func newTablePrinter() *tableprinter.Printer {
printer := tableprinter.New(os.Stdout)
printer.BorderTop, printer.BorderBottom, printer.BorderLeft, printer.BorderRight = true, true, true, true
printer.CenterSeparator = "│"
printer.ColumnSeparator = "│"
printer.RowSeparator = "─"
printer.RowCharLimit = 300
printer.HeaderBgColor = headerBgColor
printer.HeaderFgColor = headerFgColor
printer.RowLengthTitle = func(rowsLength int) bool {
return rowsLength > 10
}
return printer
}