广汽安道拓Acura项目MES后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

53 lines
1.4 KiB

package container
import (
"testing"
)
func TestSessionManager_New(t *testing.T) {
informationManager := NewInformationManager()
sessionManager := NewSessionManager(informationManager, transactionHandlerFactoryMock)
if sessionManager == nil {
t.Fatalf("创建失败!")
}
defaultSessionManager, ok := sessionManager.(*DefaultSessionManager)
if !ok {
t.Fatalf("会话管理器类型不正确!")
}
if defaultSessionManager.informationManager == nil {
t.Fatalf("组件信息管理器不能为空!")
}
if defaultSessionManager.transactionHandlerFactory == nil {
t.Fatalf("事务句柄工厂不能为空!")
}
if len(defaultSessionManager.user2SessionMapping) != 0 {
t.Fatalf("用户会话映射量错误!")
}
if len(defaultSessionManager.sessionMapping) != 0 {
t.Fatalf("会话映射数量错误!")
}
}
func TestSessionManager_New_NullInformationManager(t *testing.T) {
defer func() {
if err := recover(); err != "组件信息管理器不能为空!" {
t.Fatalf("意外错误:%s", err)
}
}()
_ = NewSessionManager(nil, transactionHandlerFactoryMock)
t.Fatalf("意外的没有错误!")
}
func TestSessionManager_New_NullTransactionHandlerFactoryMock(t *testing.T) {
defer func() {
if err := recover(); err != "事务句柄工厂不能为空!" {
t.Fatalf("意外错误:%s", err)
}
}()
informationManager := NewInformationManager()
_ = NewSessionManager(informationManager, nil)
t.Fatalf("意外的没有错误!")
}