mirror of
https://github.com/datarhei/core.git
synced 2025-09-26 20:11:29 +08:00
59 lines
1.0 KiB
Go
59 lines
1.0 KiB
Go
package value
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestIntValue(t *testing.T) {
|
|
var i int
|
|
|
|
ivar := NewInt(&i, 11)
|
|
|
|
assert.Equal(t, "11", ivar.String())
|
|
assert.Equal(t, nil, ivar.Validate())
|
|
assert.Equal(t, false, ivar.IsEmpty())
|
|
|
|
i = 42
|
|
|
|
assert.Equal(t, "42", ivar.String())
|
|
assert.Equal(t, nil, ivar.Validate())
|
|
assert.Equal(t, false, ivar.IsEmpty())
|
|
|
|
ivar.Set("77")
|
|
|
|
assert.Equal(t, int(77), i)
|
|
}
|
|
|
|
type testdata struct {
|
|
value1 int
|
|
value2 int
|
|
}
|
|
|
|
func TestCopyStruct(t *testing.T) {
|
|
data1 := testdata{}
|
|
|
|
NewInt(&data1.value1, 1)
|
|
NewInt(&data1.value2, 2)
|
|
|
|
assert.Equal(t, int(1), data1.value1)
|
|
assert.Equal(t, int(2), data1.value2)
|
|
|
|
data2 := testdata{}
|
|
|
|
val21 := NewInt(&data2.value1, 3)
|
|
val22 := NewInt(&data2.value2, 4)
|
|
|
|
assert.Equal(t, int(3), data2.value1)
|
|
assert.Equal(t, int(4), data2.value2)
|
|
|
|
data2 = data1
|
|
|
|
assert.Equal(t, int(1), data2.value1)
|
|
assert.Equal(t, int(2), data2.value2)
|
|
|
|
assert.Equal(t, "1", val21.String())
|
|
assert.Equal(t, "2", val22.String())
|
|
}
|