forked from docker/cli
-
Notifications
You must be signed in to change notification settings - Fork 0
/
quotedstring_test.go
40 lines (33 loc) · 984 Bytes
/
quotedstring_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package opts
import (
"testing"
"gotest.tools/v3/assert"
is "gotest.tools/v3/assert/cmp"
)
func TestQuotedStringSetWithQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
assert.NilError(t, qs.Set(`"something"`))
assert.Check(t, is.Equal("something", qs.String()))
assert.Check(t, is.Equal("something", value))
}
func TestQuotedStringSetWithMismatchedQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
assert.NilError(t, qs.Set(`"something'`))
assert.Check(t, is.Equal(`"something'`, qs.String()))
}
func TestQuotedStringSetWithNoQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
assert.NilError(t, qs.Set("something"))
assert.Check(t, is.Equal("something", qs.String()))
}
func TestQuotedStringShort(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
assert.NilError(t, qs.Set(`"`))
assert.Check(t, is.Equal(`"`, qs.String()))
assert.NilError(t, qs.Set(`'`))
assert.Check(t, is.Equal(`'`, qs.String()))
}