dubbo.apache.org/dubbo-go/v3@v3.1.1/common/config/environment_test.go (about) 1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 package config 19 20 import ( 21 "testing" 22 ) 23 24 import ( 25 "github.com/stretchr/testify/assert" 26 ) 27 28 func TestGetEnvInstance(t *testing.T) { 29 GetEnvInstance() 30 assert.NotNil(t, instance) 31 } 32 33 func TestEnvironmentUpdateExternalConfigMap(t *testing.T) { 34 GetEnvInstance().UpdateExternalConfigMap(map[string]string{"1": "2"}) 35 v, ok := GetEnvInstance().externalConfigMap.Load("1") 36 assert.True(t, ok) 37 assert.Equal(t, "2", v) 38 39 GetEnvInstance().UpdateExternalConfigMap(map[string]string{"a": "b"}) 40 v, ok = GetEnvInstance().externalConfigMap.Load("a") 41 assert.True(t, ok) 42 assert.Equal(t, "b", v) 43 v, ok = GetEnvInstance().externalConfigMap.Load("1") 44 assert.False(t, ok) 45 assert.Equal(t, nil, v) 46 } 47 48 func TestEnvironmentUpdateAppExternalConfigMap(t *testing.T) { 49 GetEnvInstance().UpdateAppExternalConfigMap(map[string]string{"1": "2"}) 50 v, ok := GetEnvInstance().appExternalConfigMap.Load("1") 51 assert.True(t, ok) 52 assert.Equal(t, "2", v) 53 54 GetEnvInstance().UpdateAppExternalConfigMap(map[string]string{"a": "b"}) 55 v, ok = GetEnvInstance().appExternalConfigMap.Load("a") 56 assert.True(t, ok) 57 assert.Equal(t, "b", v) 58 v, ok = GetEnvInstance().appExternalConfigMap.Load("1") 59 assert.False(t, ok) 60 assert.Equal(t, nil, v) 61 } 62 63 func TestEnvironmentConfigurationAndGetProperty(t *testing.T) { 64 GetEnvInstance().UpdateExternalConfigMap(map[string]string{"1": "2"}) 65 list := GetEnvInstance().Configuration() 66 ok, v := list.Back().Value.(*InmemoryConfiguration).GetProperty("1") 67 assert.True(t, ok) 68 assert.Equal(t, "2", v) 69 } 70 71 func TestInmemoryConfigurationGetSubProperty(t *testing.T) { 72 GetEnvInstance().UpdateExternalConfigMap(map[string]string{"123": "2"}) 73 list := GetEnvInstance().Configuration() 74 m := list.Front().Value.(*InmemoryConfiguration).GetSubProperty("1") 75 76 assert.Equal(t, struct{}{}, m["123"]) 77 }