blob: 50a22c1a941abb53c058a5664944756713aa1454 [file] [log] [blame]
package config
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestReadAndWriteToConfig(t *testing.T) {
v := GetConfig()
currentDbUrl := v.GetString("DB_URL")
newDbUrl := "ThisIsATest"
assert.Equal(t, currentDbUrl != newDbUrl, true)
v.Set("DB_URL", newDbUrl)
err := v.WriteConfig()
assert.Equal(t, err == nil, true)
nowDbUrl := v.GetString("DB_URL")
assert.Equal(t, nowDbUrl == newDbUrl, true)
// Reset back to current
v.Set("DB_URL", currentDbUrl)
err = v.WriteConfig()
assert.Equal(t, err == nil, true)
}
func TestReplaceNewEnvItemInOldContent(t *testing.T) {
v := GetConfig()
v.Set(`aa`, `aaaa`)
v.Set(`bb`, `1#1`)
v.Set(`cc`, `1"'1`)
v.Set(`dd`, `1\"1`)
v.Set(`ee`, `=`)
v.Set(`ff`, 1.01)
v.Set(`gGg`, `gggg`)
v.Set(`h.278`, 278)
err, s := replaceNewEnvItemInOldContent(v, `
some unuseful message
# comment
a blank
AA =123
bB=
cc =
dd =
# some comment
eE=
ff="some content" and some comment
Ggg=132
h.278=1
`)
if err != nil {
panic(err)
}
assert.Equal(t, `
some unuseful message
# comment
a blank
AA="aaaa"
BB="1#1"
CC="1\"\'1"
DD="1\\\"1"
# some comment
EE="\="
FF="1.01"
GGG="gggg"
H.278="278"
`, s)
}