dockerfiles/anylink/server/dbdata/group_test.go

76 lines
2.0 KiB
Go
Raw Normal View History

2021-06-08 20:45:26 +08:00
package dbdata
import (
"testing"
"github.com/bjdgyc/anylink/pkg/utils"
"github.com/stretchr/testify/assert"
)
func TestGetGroupNames(t *testing.T) {
ast := assert.New(t)
preIpData()
defer closeIpdata()
// 添加 group
g1 := Group{Name: "g1", ClientDns: []ValData{{Val: "114.114.114.114"}}}
err := SetGroup(&g1)
ast.Nil(err)
g2 := Group{Name: "g2", ClientDns: []ValData{{Val: "114.114.114.114"}}}
err = SetGroup(&g2)
ast.Nil(err)
g3 := Group{Name: "g3", ClientDns: []ValData{{Val: "114.114.114.114"}}}
err = SetGroup(&g3)
ast.Nil(err)
2022-07-04 15:03:22 +08:00
authData := map[string]interface{}{
"type": "radius",
"radius": map[string]string{
"addr": "192.168.8.12:1044",
"secret": "43214132",
},
}
g4 := Group{Name: "g4", ClientDns: []ValData{{Val: "114.114.114.114"}}, Auth: authData}
err = SetGroup(&g4)
ast.Nil(err)
g5 := Group{Name: "g5", ClientDns: []ValData{{Val: "114.114.114.114"}}, DsIncludeDomains: "baidu.com,163.com"}
err = SetGroup(&g5)
2022-11-10 15:53:48 +08:00
if ast.NotNil(err) {
ast.Equal("默认路由, 不允许设置\"包含域名\", 请重新配置", err.Error())
}
2022-07-04 15:03:22 +08:00
g6 := Group{Name: "g6", ClientDns: []ValData{{Val: "114.114.114.114"}}, DsExcludeDomains: "com.cn,qq.com"}
err = SetGroup(&g6)
ast.Nil(err)
2022-11-10 15:53:48 +08:00
authData = map[string]interface{}{
"type": "ldap",
"ldap": map[string]interface{}{
2023-04-26 22:17:10 +08:00
"addr": "192.168.8.12:389",
"tls": true,
"bind_name": "userfind@abc.com",
"bind_pwd": "afdbfdsafds",
"base_dn": "dc=abc,dc=com",
"object_class": "person",
"search_attr": "sAMAccountName",
"member_of": "cn=vpn,cn=user,dc=abc,dc=com",
2022-11-10 15:53:48 +08:00
},
}
g7 := Group{Name: "g7", ClientDns: []ValData{{Val: "114.114.114.114"}}, Auth: authData}
err = SetGroup(&g7)
ast.Nil(err)
2021-06-08 20:45:26 +08:00
// 判断所有数据
2022-11-10 15:53:48 +08:00
gAll := []string{"g1", "g2", "g3", "g4", "g5", "g6", "g7"}
2021-06-08 20:45:26 +08:00
gs := GetGroupNames()
for _, v := range gs {
ast.Equal(true, utils.InArrStr(gAll, v))
}
2022-11-10 15:53:48 +08:00
gni := GetGroupNamesIds()
for _, v := range gni {
ast.NotEqual(0, v.Id)
ast.Equal(true, utils.InArrStr(gAll, v.Name))
}
2021-06-08 20:45:26 +08:00
}