// Test ServiceInfo JSON marshaling func TestJsonServiceInfo(t *testing.T) { info := core.ServerInfo{ Version: "1.2.3", Timestamp: "2015-10-22T14:15:16.999", WebsocketUrl: "ws://devicehive.com"} testCheckJson(t, info, `{"apiVersion":"1.2.3","serverTimestamp":"2015-10-22T14:15:16.999","webSocketServerUrl":"ws://devicehive.com"}`) info.WebsocketUrl = "" info.RestUrl = "https://devicehive.com" testCheckJson(t, info, `{"apiVersion":"1.2.3","serverTimestamp":"2015-10-22T14:15:16.999","restServerUrl":"https://devicehive.com"}`) }
// Process GetServerInfo task func (service *Service) processGetServerInfo(task *Task, info *core.ServerInfo) (err error) { // check response status err = task.CheckStatus() if err != nil { log.Warnf("WS: bad /info status (error: %s)", err) return } // parse response err = info.AssignJSON(task.dataRecved["info"]) if err != nil { log.Warnf("WS: failed to parse /info body (error: %s)", err) return } return }