background/test/portData_test.go

95 lines
1.7 KiB
Go
Raw Normal View History

package test
import (
"background/config"
"background/db"
"background/logs"
"background/model"
2021-02-05 17:46:59 +00:00
"background/utils"
"log"
2021-02-05 17:46:59 +00:00
"reflect"
"testing"
2021-02-05 17:46:59 +00:00
"github.com/olivere/elastic"
)
2020-11-10 16:05:17 +00:00
func InitConfig() {
2021-02-05 17:46:59 +00:00
e := config.Init("../user.yaml")
if nil != e {
log.Println(e.Error())
}
}
func InitMysql() {
c := config.GetMysqlConfig()
if c == nil {
logs.Error("cannnot connect mysql server")
} else {
db.Init()
}
}
func InitRedisConfig() {
e := config.InitRedis()
if nil != e {
logs.Error(e.Error())
return
}
}
2020-11-10 16:05:17 +00:00
func InitElasticSearch() {
e := db.GetElastic().CreateIndex("hardware", model.HardwareTypeMapping())
if nil != e {
}
}
2021-02-05 17:46:59 +00:00
func InitLogs() {
logs.Init(config.GetLogConfig().Dir, config.GetLogConfig().File, config.GetLogConfig().Level, config.GetLogConfig().SaveFile)
}
2020-11-10 16:05:17 +00:00
func TestPortDocToElastic(t *testing.T) {
InitConfig()
InitLogs()
InitRedisConfig()
InitMysql()
db.InitELK()
e := model.PortDocumentToElasticsearch("doc")
2020-11-10 16:05:17 +00:00
if nil != e {
2021-02-05 17:46:59 +00:00
log.Print(e.Error())
}
}
2021-02-07 05:14:01 +00:00
func TestReflect(t *testing.T) {
type XX struct {
A int16 `json:"bb"`
2021-02-06 16:45:59 +00:00
B string `json: "cc" xml:"test"`
}
2021-02-07 05:14:01 +00:00
unmar := map[string]interface{}{
"bb": 2,
2021-02-06 16:45:59 +00:00
"cc": "hello",
}
xx := XX{}
2021-02-07 05:14:01 +00:00
utils.UnmarshalJson2Struct(&xx, unmar)
2021-02-06 16:45:59 +00:00
log.Print(xx)
2020-11-10 16:05:17 +00:00
}
2021-02-05 17:46:59 +00:00
2021-02-07 05:14:01 +00:00
func TestQueryDoc(t *testing.T) {
2021-02-05 17:46:59 +00:00
InitConfig()
InitLogs()
InitRedisConfig()
InitMysql()
db.InitELK()
query := elastic.NewTermQuery("content", "title")
2021-02-07 05:14:01 +00:00
searchResult, titles, e := db.GetElastic().Query("doc", query, reflect.TypeOf(model.Doc{}), 10, 0)
if nil != e {
2021-02-05 17:46:59 +00:00
log.Print(e.Error())
}
log.Print(searchResult)
log.Print(titles)
2021-02-07 05:14:01 +00:00
}
func TestChangeStructFieldThroughStruct(t *testing.T) {
type XX struct {
A int16 `json:"bb"`
B string `json: "cc" xml:"test"`
}
}