Exemple #1
0
func TestStrings_differentSeparator(t *testing.T) {
	eqStrings := func(a, b []string) bool {
		if len(a) != len(b) {
			return false
		}

		for i := range a {
			if a[i] != b[i] {
				return false
			}
		}

		return true
	}

	tests := []struct {
		env      string
		sep      string
		fallback []string
		want     []string
	}{
		{"foo-bar-baz", "-", []string{}, []string{"foo", "bar", "baz"}},
		{"foo/bar/baz", "/", []string{}, []string{"foo", "bar", "baz"}},
		{"", "/", []string{"sit", "amet"}, []string{"sit", "amet"}},
	}

	for _, tt := range tests {
		os.Setenv("STRINGS", tt.env)

		if got := env.Strings("STRINGS", tt.fallback, tt.sep); !eqStrings(got, tt.want) {
			t.Errorf(`String("STRINGS", %q, %q) = %q, want %q`, tt.fallback, tt.sep, got, tt.want)
		}
	}
}
Exemple #2
0
func ExampleStrings() {
	os.Setenv("STRINGS", "foo,bar,baz")

	fmt.Println(env.Strings("STRINGS", []string{}))
	// Output: [foo bar baz]
}