mirror of
https://gitee.com/willfree/mlsr.git
synced 2026-10-04 19:42:02 +08:00
测试hello协议初始化
This commit is contained in:
1 parent
93577874cd
commit
abaab69b8a
2 files changed
+49
-7
No files matched your search
@@ -70,19 +70,13 @@ func (hp *HelloProtocol) Init(face *logicface.LogicFaceICN,
|
||||
hp.m_adjacencyList = mlsrConfig.GetAdjacencys()
|
||||
|
||||
// logicface相关
|
||||
// 构造接收hello兴趣包的前缀
|
||||
// 构造接收hello兴趣包的监听前缀
|
||||
name, err := component.CreateIdentifierByString(
|
||||
hp.mlsrConfig.GetRouterPrefix().ToUri() + "/" + MLSR_COMPONENT + "/" + INFO_COMPONENT)
|
||||
if err != nil {
|
||||
common2.LogFatal("HelloProtocol Setting interest filter for Hello interest error, interest generate wrong.", err)
|
||||
return
|
||||
}
|
||||
// 设置监听前缀
|
||||
err = hp.m_face.RegisterPullIdentifier(name, 3000)
|
||||
if err != nil {
|
||||
common2.LogFatal("HelloProtocol Setting interest filter for Hello interest error, identifier register wrong.", err)
|
||||
return
|
||||
}
|
||||
// 协议状态
|
||||
hp.state = true
|
||||
// 直接使用registerPrefix来进行前缀监听
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
// Package hello
|
||||
// @Author: Wang Feng
|
||||
// @Description:
|
||||
// @Version: 0.1.0
|
||||
// @Date: 2022/7/29 21:14
|
||||
// @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
|
||||
//
|
||||
|
||||
package hello
|
||||
|
||||
import (
|
||||
common2 "minlib/common"
|
||||
"minlib/logicface"
|
||||
"minlib/security"
|
||||
"mlsr/common"
|
||||
"mlsr/lsdb"
|
||||
"mlsr/route"
|
||||
"testing"
|
||||
)
|
||||
|
||||
const testConfigPath = "D:\\" + common.DefaultConfFileName
|
||||
|
||||
func TestHelloProtocol_Init(t *testing.T) {
|
||||
// 1. 建立前置结构体(lsdb等)
|
||||
// 配置文件初始化
|
||||
mlsrConfig, err := common.ParseConfig(testConfigPath)
|
||||
if err != nil {
|
||||
common2.LogInfo("配置文件解析错误")
|
||||
}
|
||||
// 调度器初始化
|
||||
sche := new(lsdb.MlsrScheduler)
|
||||
sche.Init()
|
||||
// LogicFace初始化(假设初始化,暂时用不到)
|
||||
face := new(logicface.LogicFaceICN)
|
||||
keychain := new(security.KeyChain)
|
||||
// LSDB初始化
|
||||
mlsdb := new(lsdb.Lsdb)
|
||||
mlsdb.Init(mlsrConfig, sche, face)
|
||||
rt := new(route.RoutingTable)
|
||||
rt.Init(mlsrConfig, sche, mlsdb)
|
||||
// 名称前缀表初始化
|
||||
npt := new(route.NamePrefixTable)
|
||||
npt.Init(mlsrConfig.GetRouterPrefix(), rt, rt.AfterRoutingChange, mlsdb.OnLsdbModified)
|
||||
|
||||
// 2. 初始化hello协议
|
||||
hp := new(HelloProtocol)
|
||||
hp.Init(face, sche, keychain, mlsrConfig, rt, mlsdb)
|
||||
}
|
||||
Reference in new issue
Block a user