github.com/turbot/steampipe@v1.7.0-rc.0.0.20240517123944-7cef272d4458/pkg/control/controldisplay/spacer_test.go (about)

     1  package controldisplay
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  )
     7  
     8  type spacerTest struct {
     9  	width    int
    10  	expected string
    11  }
    12  
    13  func testCasesSpacer() map[string]spacerTest {
    14  	return map[string]spacerTest{
    15  
    16  		"2": {
    17  			2, fmt.Sprintf("%s", ControlColors.Spacer(". ")),
    18  		},
    19  		"3": {
    20  			3, fmt.Sprintf("%s", ControlColors.Spacer(".. ")),
    21  		},
    22  		"10": {
    23  			10, fmt.Sprintf("%s", ControlColors.Spacer("......... ")),
    24  		},
    25  	}
    26  }
    27  
    28  func TestSpacer(t *testing.T) {
    29  	themeDef := ColorSchemes["plain"]
    30  	scheme, _ := NewControlColorScheme(themeDef)
    31  	ControlColors = scheme
    32  
    33  	for name, test := range testCasesSpacer() {
    34  		output := NewSpacerRenderer(test.width).Render()
    35  		if output != test.expected {
    36  			t.Errorf("Test: '%s'' FAILED : \nexpected:\n %v \ngot:\n %v\n", name, test.expected, output)
    37  		}
    38  	}
    39  }