github.com/polarismesh/polaris@v1.17.8/common/conn/limit/config_test.go (about) 1 /** 2 * Tencent is pleased to support the open source community by making Polaris available. 3 * 4 * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved. 5 * 6 * Licensed under the BSD 3-Clause License (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at 9 * 10 * https://opensource.org/licenses/BSD-3-Clause 11 * 12 * Unless required by applicable law or agreed to in writing, software distributed 13 * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 14 * CONDITIONS OF ANY KIND, either express or implied. See the License for the 15 * specific language governing permissions and limitations under the License. 16 */ 17 18 package connlimit 19 20 import ( 21 "testing" 22 "time" 23 24 . "github.com/smartystreets/goconvey/convey" 25 ) 26 27 // TestParseConnLimitConfig 可以正常解析配置测试 28 func TestParseConnLimitConfig(t *testing.T) { 29 Convey("可以正常解析配置", t, func() { 30 options := map[interface{}]interface{}{ 31 "openConnLimit": true, 32 "maxConnPerHost": 16, 33 "maxConnLimit": 128, 34 "whiteList": "127.0.0.1,127.0.0.2,127.0.0.3", 35 "readTimeout": "120s", 36 } 37 config, err := ParseConnLimitConfig(options) 38 So(err, ShouldBeNil) 39 So(config.OpenConnLimit, ShouldBeTrue) 40 So(config.MaxConnPerHost, ShouldEqual, 16) 41 So(config.MaxConnLimit, ShouldEqual, 128) 42 So(config.WhiteList, ShouldEqual, "127.0.0.1,127.0.0.2,127.0.0.3") 43 So(config.ReadTimeout, ShouldEqual, time.Second*120) 44 }) 45 }