Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_test",
"go_library",
)
go_test(
name = "go_default_test",
srcs = ["example_test.go"],
embed = [":go_default_library"],
rundir = ".",
tags = ["automanaged"],
deps = [
"//app/tool/gengo/cmd/deepcopy-gen/examples/api/v1:go_default_library",
"//app/tool/gengo/cmd/deepcopy-gen/examples/model:go_default_library",
"//library/time:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
],
)
go_library(
name = "go_default_library",
srcs = ["example.go"],
importpath = "go-common/app/tool/gengo/cmd/deepcopy-gen/examples/tests",
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1 @@
package tests

View File

@@ -0,0 +1,77 @@
package tests
import (
"testing"
"time"
"unsafe"
"github.com/stretchr/testify/assert"
"go-common/app/tool/gengo/cmd/deepcopy-gen/examples/api/v1"
"go-common/app/tool/gengo/cmd/deepcopy-gen/examples/model"
xtime "go-common/library/time"
)
func TestCopyFromAllBuitin(t *testing.T) {
base := &model.MemberBase{
Mid: 1,
Name: "name",
Sex: 1,
Face: "aaa.jpg",
Sign: "sign",
Rank: 10000,
Birthday: xtime.Time(time.Now().Unix()),
}
reply := new(v1.BaseInfoReply)
reply.DeepCopyFromMemberBase(base)
assert.Equal(t, base.Mid, reply.Mid)
assert.Equal(t, base.Name, reply.Name)
assert.Equal(t, base.Sex, reply.Sex)
assert.Equal(t, base.Face, reply.Face)
assert.Equal(t, base.Sign, reply.Sign)
assert.Equal(t, base.Rank, reply.Rank)
assert.Equal(t, base.Birthday, reply.Birthday)
copied := reply.DeepCopyAsMemberBase()
assert.Equal(t, base, copied)
}
func TestCopyFromMap(t *testing.T) {
names := &model.Names{
Names: map[int64]string{
1: "1",
2: "2",
},
}
reply := new(v1.NamesReply)
reply.DeepCopyFromNames(names)
assert.Equal(t, names.Names[1], reply.Names[1])
assert.Equal(t, names.Names[2], reply.Names[2])
assert.Equal(t, unsafe.Pointer(&names.Names), unsafe.Pointer(&names.Names))
assert.Equal(t, unsafe.Pointer(&reply.Names), unsafe.Pointer(&reply.Names))
assert.NotEqual(t, unsafe.Pointer(&names.Names), unsafe.Pointer(&reply.Names))
names.Names[3] = "3"
assert.Contains(t, names.Names, int64(3))
assert.NotContains(t, reply.Names, int64(3))
}
func TestCopyFromSlice(t *testing.T) {
mids := &model.Mids{
Mids: []int64{1, 2},
}
reply := new(v1.MidsReply)
reply.DeepCopyFromMids(mids)
assert.Equal(t, mids.Mids[0], reply.Mids[0])
assert.Equal(t, mids.Mids[1], reply.Mids[1])
assert.Equal(t, unsafe.Pointer(&mids.Mids), unsafe.Pointer(&mids.Mids))
assert.Equal(t, unsafe.Pointer(&reply.Mids), unsafe.Pointer(&reply.Mids))
assert.NotEqual(t, unsafe.Pointer(&mids.Mids), unsafe.Pointer(&reply.Mids))
mids.Mids = append(mids.Mids, 3)
assert.Equal(t, mids.Mids[2], int64(3))
assert.NotContains(t, reply.Mids, int64(3))
}