2020-03-23 22:56:41 +00:00
|
|
|
package config
|
|
|
|
|
|
|
|
import (
|
|
|
|
"os"
|
|
|
|
"path/filepath"
|
|
|
|
"testing"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestLoadConfigNonExistent(t *testing.T) {
|
|
|
|
err := LoadConfig(filepath.Join("..", "..", "test", "data", "doesnotexist.toml"))
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("Cannot write defaults, error: %+v", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestWriteConfig(t *testing.T) {
|
|
|
|
C.Twitter.AccessKey = "§OneNiceKey"
|
|
|
|
C.Twitter.AccessSecret = "SuperNiceSecret"
|
|
|
|
C.Twitter.ConsumerKey = "ConsumeMe"
|
|
|
|
C.Twitter.ConsumerSecret = "EatASecret"
|
2020-03-24 14:50:49 +00:00
|
|
|
C.Twitter.MagicHashtag = "#notsomagic"
|
|
|
|
C.Database.Dialect = "somedia"
|
|
|
|
C.Database.Connection = "conn"
|
2020-03-23 22:56:41 +00:00
|
|
|
err := WriteConfig(filepath.Join("..", "..", "test", "data", "doesnotexist.toml"))
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("Could not write config, got error: %+v", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestLoadConfig(t *testing.T) {
|
|
|
|
C = Config{}
|
|
|
|
err := LoadConfig(filepath.Join("..", "..", "test", "data", "doesnotexist.toml"))
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("Cannot read config, error: %+v", err)
|
|
|
|
}
|
2020-03-24 14:50:49 +00:00
|
|
|
if C.Twitter.AccessKey != "§OneNiceKey" ||
|
|
|
|
C.Twitter.AccessSecret != "SuperNiceSecret" ||
|
|
|
|
C.Twitter.ConsumerKey != "ConsumeMe" ||
|
|
|
|
C.Twitter.ConsumerSecret != "EatASecret" ||
|
|
|
|
C.Twitter.MagicHashtag != "#notsomagic" ||
|
|
|
|
C.Database.Dialect != "somedia" ||
|
|
|
|
C.Database.Connection != "conn" {
|
2020-03-23 22:56:41 +00:00
|
|
|
t.Errorf("Could not read config, entries wrong")
|
|
|
|
}
|
|
|
|
t.Cleanup(CleanupConfigTest)
|
|
|
|
}
|
|
|
|
|
|
|
|
func CleanupConfigTest() {
|
|
|
|
os.Remove(filepath.Join("..", "..", "test", "data", "doesnotexist.toml"))
|
|
|
|
}
|