2014-12-15 23:45:24 +09:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"encoding/json"
|
|
|
|
"testing"
|
|
|
|
)
|
|
|
|
|
|
|
|
func Test_ConfigUnmarshalJSON(t *testing.T) {
|
|
|
|
c := Config{}
|
|
|
|
|
|
|
|
j := `{"host": "h", "port": 1883}`
|
|
|
|
err := json.Unmarshal([]byte(j), &c)
|
|
|
|
if err != nil {
|
|
|
|
t.Error(err)
|
|
|
|
}
|
|
|
|
if c.Port != 1883 {
|
|
|
|
t.Error("port(int) is not correctly read")
|
|
|
|
}
|
|
|
|
if c.Host != "h" || c.UserName != "" || c.Password != "" {
|
|
|
|
t.Error("parse failed")
|
|
|
|
}
|
|
|
|
|
|
|
|
j = `{"host": "h", "port": "1883", "username": "u"}`
|
|
|
|
err = json.Unmarshal([]byte(j), &c)
|
|
|
|
if err != nil {
|
|
|
|
t.Error(err)
|
|
|
|
}
|
|
|
|
if c.Port != 1883 {
|
|
|
|
t.Error("port(string) is not correctly read")
|
|
|
|
}
|
|
|
|
if c.Host != "h" || c.UserName != "u" || c.Password != "" {
|
|
|
|
t.Error("parse failed with username set")
|
|
|
|
}
|
|
|
|
}
|
2015-10-09 14:11:18 +09:00
|
|
|
|
|
|
|
func Test_ConfigCert(t *testing.T) {
|
|
|
|
c := Config{}
|
|
|
|
|
|
|
|
j := `{"caCert": "ca", "clientCert": "client", "privateKey": "key"}`
|
|
|
|
err := json.Unmarshal([]byte(j), &c)
|
|
|
|
if err != nil {
|
|
|
|
t.Error(err)
|
|
|
|
}
|
|
|
|
if c.CaCert != "ca" || c.ClientCert != "client" || c.PrivateKey != "key" {
|
2018-07-08 09:27:44 -07:00
|
|
|
t.Errorf("parse failed, %+v", c)
|
2015-10-09 14:11:18 +09:00
|
|
|
}
|
|
|
|
}
|