package vardump import ( "strings" "testing" "github.com/stretchr/testify/assert" ) func TestDumpVariables(t *testing.T) { // Enable var dump for testing EnableVarDump = true // Test case testVars := variables{ "string": "test", "int": 42, "bool": true, "slice": []string{"a", "b", "c"}, } result := DumpVariables(testVars) // Assertions assert.NotEmpty(t, result) assert.Contains(t, result, "string") assert.Contains(t, result, "test") assert.Contains(t, result, "int") assert.Contains(t, result, "42") assert.Contains(t, result, "bool") assert.Contains(t, result, "true") assert.Contains(t, result, "slice") assert.Contains(t, result, "a") assert.Contains(t, result, "b") assert.Contains(t, result, "c") // Test with EnableVarDump set to false EnableVarDump = false result = DumpVariables(testVars) assert.Empty(t, result) } func TestProcess(t *testing.T) { testVars := variables{ "short": "short string", "long": strings.Repeat("a", 300), "number": 42, } processed := process(testVars, 255) assert.Equal(t, "short string", processed["short"]) assert.Equal(t, strings.Repeat("a", 255)+" [...]", processed["long"]) assert.Equal(t, "42", processed["number"]) }