github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/internal/subshell/sscommon/sscommon_lin_mac_test.go (about)

     1  // +build !windows
     2  
     3  package sscommon
     4  
     5  import (
     6  	"fmt"
     7  	"reflect"
     8  	"testing"
     9  )
    10  
    11  func TestEscapeEnv(t *testing.T) {
    12  	tests := []struct {
    13  		name  string
    14  		input map[string]string
    15  		want  map[string]string
    16  	}{
    17  		{
    18  			"Escapes Env",
    19  			map[string]string{
    20  				"k1": fmt.Sprintf("v1\"%sv1", lineBreak),
    21  				"k2": "v2",
    22  			},
    23  			map[string]string{
    24  				"k1": fmt.Sprintf(`v1\"%sv1`, lineBreakChar),
    25  				"k2": `v2`,
    26  			},
    27  		},
    28  	}
    29  	for _, tt := range tests {
    30  		t.Run(tt.name, func(t *testing.T) {
    31  			if got := EscapeEnv(tt.input); !reflect.DeepEqual(got, tt.want) {
    32  				t.Errorf("EscapeEnv() = %v, want %v", got, tt.want)
    33  			}
    34  		})
    35  	}
    36  }