229 lines
4.1 KiB
Go
229 lines
4.1 KiB
Go
// Copyright 2021 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
|
|
//go:build plus
|
|
|
|
package dbs
|
|
|
|
import (
|
|
"github.com/TeaOSLab/EdgeCommon/pkg/dnsconfigs"
|
|
"github.com/iwind/TeaGo/Tea"
|
|
_ "github.com/iwind/TeaGo/bootstrap"
|
|
"testing"
|
|
)
|
|
|
|
func TestDB_Init(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_InsertDomain(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
err = db.InsertDomain(1, 1, 1, "examples.com", nil, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
err = db.InsertDomain(2, 2, 1, "examples2.com", nil, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_UpdateDomain(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
err = db.UpdateDomain(1, 1, 1, "examples2.com", nil, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_DeleteDomain(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
err = db.DeleteDomain(1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_ExistsDomain(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
b, err := db.ExistsDomain(1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("exists:", b)
|
|
}
|
|
|
|
func TestDB_FindAllDomains(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
limit := 2
|
|
offset := 0
|
|
for {
|
|
t.Log("===", offset, "===")
|
|
domains, err := db.ListDomains(2, offset, limit)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if len(domains) == 0 {
|
|
break
|
|
}
|
|
for _, domain := range domains {
|
|
t.Log(domain.Name)
|
|
}
|
|
offset += limit
|
|
}
|
|
}
|
|
|
|
func TestDB_InsertRecord(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.InsertRecord(1, 1, "a", dnsconfigs.RecordTypeA, "192.168.1.100", 0, 3600, 10, 8080, 1, "", 3600, 10, []string{"id:100", "id:1"}, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_UpdateRecord(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.UpdateRecord(1, 1, "a1", dnsconfigs.RecordTypeA, "192.168.1.101", 0, 3600, 10, 8080, 1, "", 3600, 10, []string{"id:100", "id:1"}, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_InsertRoute(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.InsertRoute(1, 1, []byte("[]"), 1, 0, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_UpdateRoute(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.UpdateRoute(1, 1, []byte("[{}, {}]"), 2, 0, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_InsertKey(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.InsertKey(1, 2, 3, "md5", "secret123", dnsconfigs.NSKeySecretTypeClear, 4)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_UpdateKey(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.UpdateKey(1, 22, 33, "sha1", "secret456", dnsconfigs.NSKeySecretTypeBase64, 5)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_DeleteKey(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
err = db.DeleteKey(1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log("ok")
|
|
}
|
|
|
|
func TestDB_ExistsKey(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
for _, id := range []int64{1, 2, 3} {
|
|
b, err := db.ExistsKey(id)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
t.Log(id, b)
|
|
}
|
|
}
|
|
|
|
func TestDB_ListKeys(t *testing.T) {
|
|
db := NewDB(Tea.Root + "/data/data.db")
|
|
err := db.Init()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
keys, err := db.ListKeys(0, 10)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
for _, key := range keys {
|
|
t.Log(key)
|
|
}
|
|
}
|