-
Notifications
You must be signed in to change notification settings - Fork 0
/
settings_test.go
70 lines (63 loc) · 2.06 KB
/
settings_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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package f8n
import "testing"
// Тестирование перечисление обрабатываемых полей с заменой недопустимых символов в названии полей.
func TestFieldSetGet(t *testing.T) {
var (
dat []string
obj *impl
get []string
)
dat = []string{"i`d`", "'c'r`e`a`te'At", `update"A"t`, "o,r,d,e,r", "normal"}
obj = New().(*impl)
obj.FieldSet(dat...)
if len(obj.FieldOnly) != len(dat) {
t.Errorf("FieldSet() = %v, ожидалаось %v.", obj.FieldOnly, dat)
}
if get = obj.FieldGet(); get[4] != dat[4] ||
get[0] == dat[0] ||
get[1] == dat[1] ||
get[2] == dat[2] ||
get[3] == dat[3] {
t.Errorf("FieldGet() = %v, ожидалаось %v.", get, dat)
}
}
// Тестирование назначения типа данных загружаемым значениям полей.
func TestFieldDatatype(t *testing.T) {
var (
obj *impl
)
obj = New().(*impl)
if obj.Datatype == nil {
t.Errorf("Datatype map = nil, ожидалась инициализация map[string]Datatype.")
}
if len(obj.Datatype) != 0 {
t.Errorf("Datatype map не пустой, ожидалась пустая карта.")
}
obj.
FieldDatatype("id", TypeUint64).
FieldDatatype("createAt", TypeTime).
FieldDatatype("deleteAt", TypeTimeNil).
FieldDatatype("order", TypeFloat64).
FieldDatatype("normal", TypeBool).
FieldDatatype("mId", TypeInt64)
if len(obj.Datatype) != 6 {
t.Errorf("Datatype map = %d, ожидалось %d.", len(obj.Datatype), 6)
}
}
// Тестирование переопределения названий полей.
func TestRedefinition(t *testing.T) {
var (
obj *impl
)
obj = New().(*impl)
if obj.Remap == nil {
t.Errorf("Remap map = nil, ожидалась инициализация map[string]string.")
}
if len(obj.Remap) != 0 {
t.Errorf("Remap map не пустой, ожидалась пустая карта.")
}
obj.Redefinition("mId", "`method`.`mId`")
if len(obj.Remap) != 1 {
t.Errorf("Remap map = %d, ожидалось %d.", len(obj.Remap), 1)
}
}