package tests import ( "encoding/xml" "lux/rpc" "testing" ) func TestRequestDecoding(t *testing.T) { var request rpc.LuxRpcRequest err := xml.Unmarshal([]byte(``), &request) if err != nil { t.Fatal(err) } t.Log(request) err = xml.Unmarshal([]byte(``), &request) if err != nil { t.Fatal(err) } t.Log(request) err = xml.Unmarshal([]byte(` `), &request) if err != nil { t.Fatal(err) } t.Log(request) err = xml.Unmarshal([]byte(` `), &request) if err != nil { t.Fatal(err) } t.Log(request) } func TestResponseEncoding(t *testing.T) { xmlBytes, err := xml.Marshal(rpc.LuxRpcResponse{ RequestID: 1, Keystore: rpc.LuxRpcKeyStore{ Nodes: []rpc.LuxRpcKeyNode{ {ID: "1111", KeyBlob: "base64 key", IVBlob: "base64 iv"}, }, Hosts: []rpc.LuxRpcKeyHost{ {ID: "0002", KeyBlob: "base64 key", IVBlob: "base64 iv"}, }, }, }) if err != nil { t.Fatal(err) } t.Log(string(xmlBytes)) xmlBytes, err = xml.Marshal(rpc.LuxRpcResponse{ RequestID: 2, Routes: []rpc.LuxRpcRoute{ {Type: 1, Target: "1111", Source: "0001", Destination: "127.0.0.1:1234"}, {Type: 2, Target: "1112", Source: "0001", Destination: "127.0.0.1:4321"}, }, }) if err != nil { t.Fatal(err) } t.Log(string(xmlBytes)) xmlBytes, err = xml.Marshal(rpc.LuxRpcResponse{ RequestID: 3, Hosts: []rpc.LuxRpcHost{ {HostID: "0001", Hostname: "test-host1"}, {HostID: "0002", Hostname: "test-host2"}, }, }) if err != nil { t.Fatal(err) } t.Log(string(xmlBytes)) }