本文整理汇总了Golang中github.com/zenoss/serviced/dao.Host类的典型用法代码示例。如果您正苦于以下问题:Golang Host类的具体用法?Golang Host怎么用?Golang Host使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Host类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestDaoGetHostIPsWithIPs
func TestDaoGetHostIPsWithIPs(t *testing.T) {
hostIPs := dao.HostIPs{}
//Add host to test scenario where host exists but no IP resource registered
host := dao.Host{}
host.Id = HOSTID
err = controlPlaneDao.AddHost(host, &id)
defer controlPlaneDao.RemoveHost(HOSTID, &unused)
if err != nil {
t.Errorf("Unexpected error: %v", err)
return
}
//store a HostIPs object
hostIPs.Id = HOSTIPSID
hostIPs.HostId = HOSTID
hostIPs.IPs = []dao.HostIPResource{dao.HostIPResource{"valid", "testip", "ifname", []dao.AssignedPort{}}}
_, err = newHostIPs(hostIPs.Id, hostIPs)
defer deleteHostIPs(HOSTIPSID)
if err != nil {
t.Errorf("Error creating newHostIPs")
return
}
err = controlPlaneDao.GetHostIPs(HOSTID, &hostIPs)
if err != nil {
t.Errorf("Unexpected error: %v", err)
return
}
if hostIPs.Id != HOSTIPSID {
t.Errorf("Expected host ips id %v , got %v", HOSTIPSID, hostIPs.Id)
}
if hostIPs.HostId != HOSTID {
t.Errorf("Expected host id %v, got %v", HOSTID, hostIPs.Id)
}
if hostIPs.PoolId != "" {
t.Errorf("Expected uninitialzed poolid, got %v", hostIPs.PoolId)
}
if hostIPs.PoolId != "" {
t.Errorf("Expected uninitialzed id, got %v", hostIPs.Id)
}
if len(hostIPs.IPs) != 1 {
t.Errorf("Expected %v IPs, got %v", 1, len(hostIPs.IPs))
}
}
示例2: testDaoHostExists
func testDaoHostExists(t *testing.T) {
found, err := hostExists("blam")
if found || err != nil {
t.Errorf("Found %v; error: %v", found, err)
t.FailNow()
}
host := dao.Host{}
host.Id = "existsTest"
err = controlPlaneDao.AddHost(host, &id)
defer controlPlaneDao.RemoveHost("existsTest", &unused)
found, err = hostExists(id)
if !found || err != nil {
t.Errorf("Found %v; error: %v", found, err)
}
}
示例3: TestDao_GetHost
func TestDao_GetHost(t *testing.T) {
controlPlaneDao.RemoveHost("default", &unused)
host := dao.NewHost()
host.Id = "default"
controlPlaneDao.AddHost(*host, &id)
var result = dao.Host{}
err := controlPlaneDao.GetHost("default", &result)
result.CreatedAt = host.CreatedAt
result.UpdatedAt = host.UpdatedAt
if err == nil {
if *host != result {
t.Errorf("Unexpected Host: expected=%+v, actual=%+v", host, result)
}
} else {
t.Errorf("Unexpected Error Retrieving Host: err=%s", err)
}
}
示例4: TestDaoGetHostIPsNotFound
func TestDaoGetHostIPsNotFound(t *testing.T) {
hostIPs := dao.HostIPs{}
//Add host to test scenario where host exists but no IP resource registered
host := dao.Host{}
host.Id = HOSTID
err = controlPlaneDao.AddHost(host, &id)
defer controlPlaneDao.RemoveHost(HOSTID, &unused)
if err != nil {
t.Errorf("Unexpected error: %v", err)
return
}
err = controlPlaneDao.GetHostIPs(HOSTID, &hostIPs)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
if hostIPs.Id != "" {
t.Errorf("Expected uninitialzed id, got %v", hostIPs.Id)
}
}
示例5: TestDaoRegisterHostIPs
func TestDaoRegisterHostIPs(t *testing.T) {
//Add host to test scenario where host exists but no IP resource registered
host := dao.Host{}
host.Id = HOSTID
err = controlPlaneDao.AddHost(host, &id)
defer controlPlaneDao.RemoveHost(HOSTID, &unused)
ips := dao.HostIPs{}
ips.HostId = HOSTID
ips.IPs = []dao.HostIPResource{dao.HostIPResource{"valid", "testip", "ifname", []dao.AssignedPort{}}}
err := controlPlaneDao.RegisterHostIPs(ips, &unused)
//remove any registered
defer removeHostIPs(HOSTID)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
//verify registration
ips = dao.HostIPs{}
controlPlaneDao.GetHostIPs(HOSTID, &ips)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
if len(ips.IPs) != 1 {
t.Errorf("Expected 1 HostIPResource, found: %v", len(ips.IPs))
}
ipResource := ips.IPs[0]
if ipResource.State != "valid" {
t.Errorf("Unexpected state: %v", ipResource.State)
}
if ipResource.IPAddress != "testip" {
t.Errorf("Unexpected IPAddress: %v", ipResource.IPAddress)
}
if ipResource.InterfaceName != "ifname" {
t.Errorf("Unexpected InterfaceName: %v", ipResource.InterfaceName)
}
}
示例6: TestDao_AddHost
func TestDao_AddHost(t *testing.T) {
host := dao.Host{}
controlPlaneDao.RemoveHost("default", &unused)
err := controlPlaneDao.AddHost(host, &id)
if err == nil {
t.Errorf("Expected failure to create host %-v", host)
t.Fail()
}
host.Id = "default"
err = controlPlaneDao.AddHost(host, &id)
if err != nil {
t.Errorf("Failure creating host %-v with error: %s", host, err)
t.Fail()
}
err = controlPlaneDao.AddHost(host, &id)
if err == nil {
t.Errorf("Expected error creating redundant host %-v", host)
t.Fail()
}
}
示例7: RestAddHost
func RestAddHost(w *rest.ResponseWriter, r *rest.Request, client *serviced.ControlClient) {
var payload dao.Host
var hostId string
err := r.DecodeJsonPayload(&payload)
if err != nil {
glog.V(1).Infof("Could not decode host payload: %v", err)
RestBadRequest(w)
return
}
// Save the pool ID and IP address for later. GetInfo wipes these
pool := payload.PoolId
ipAddr := payload.IpAddr
remoteClient, err := serviced.NewAgentClient(payload.IpAddr)
if err != nil {
glog.Errorf("Could not create connection to host %s: %v", payload.IpAddr, err)
RestServerError(w)
return
}
err = remoteClient.GetInfo(0, &payload)
if err != nil {
glog.Errorf("Unable to get remote host info: %v", err)
RestBadRequest(w)
return
}
// Reset the pool ID and IP address
payload.PoolId = pool
parts := strings.Split(ipAddr, ":")
payload.IpAddr = parts[0]
err = client.AddHost(payload, &hostId)
if err != nil {
glog.Errorf("Unable to add host: %v", err)
RestServerError(w)
return
}
glog.V(0).Info("Added host ", hostId)
w.WriteJson(&SimpleResponse{"Added host", hostLinks(hostId)})
}
示例8: TestDao_UpdateHost
func TestDao_UpdateHost(t *testing.T) {
controlPlaneDao.RemoveHost("default", &unused)
host := dao.NewHost()
host.Id = "default"
controlPlaneDao.AddHost(*host, &id)
host.Name = "hostname"
host.IpAddr = "127.0.0.1"
err := controlPlaneDao.UpdateHost(*host, &unused)
if err != nil {
t.Errorf("Failure updating host %-v with error: %s", host, err)
t.Fail()
}
var result = dao.Host{}
controlPlaneDao.GetHost("default", &result)
result.CreatedAt = host.CreatedAt
result.UpdatedAt = host.UpdatedAt
if *host != result {
t.Errorf("%+v != %+v", result, host)
t.Fail()
}
}
示例9: TestDaoRegisterHostIPsMerge
func TestDaoRegisterHostIPsMerge(t *testing.T) {
//Add host to test scenario where host exists but no IP resource registered
host := dao.Host{}
host.Id = HOSTID
err = controlPlaneDao.AddHost(host, &id)
defer controlPlaneDao.RemoveHost(HOSTID, &unused)
ips := dao.HostIPs{}
ips.HostId = HOSTID
ips.IPs = []dao.HostIPResource{
dao.HostIPResource{"valid", "testip", "ifname", []dao.AssignedPort{}},
dao.HostIPResource{"deleted", "testip1", "ifname", []dao.AssignedPort{}},
}
err := controlPlaneDao.RegisterHostIPs(ips, &unused)
//remove any registered
defer removeHostIPs(HOSTID)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
ips.IPs = []dao.HostIPResource{
dao.HostIPResource{"valid", "testip2", "ifname2", []dao.AssignedPort{}},
dao.HostIPResource{"valid", "testip1", "ifname", []dao.AssignedPort{}},
}
err = controlPlaneDao.RegisterHostIPs(ips, &unused)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
//verify registration
ips = dao.HostIPs{}
controlPlaneDao.GetHostIPs(HOSTID, &ips)
if err != nil {
t.Errorf("Unexpected error: %v", err)
}
if len(ips.IPs) != 3 {
t.Errorf("Expected 3 HostIPResources, found: %v", len(ips.IPs))
}
for _, ipResource := range ips.IPs {
addr := ipResource.IPAddress
switch addr {
case "testip":
{
if ipResource.State != "deleted" {
t.Errorf("Unexpected state: %v", ipResource.State)
}
if ipResource.InterfaceName != "ifname" {
t.Errorf("Unexpected InterfaceName: %v", ipResource.InterfaceName)
}
}
case "testip1":
{
if ipResource.State != "valid" {
t.Errorf("Unexpected state: %v", ipResource.State)
}
if ipResource.InterfaceName != "ifname" {
t.Errorf("Unexpected InterfaceName: %v", ipResource.InterfaceName)
}
}
case "testip2":
{
if ipResource.State != "valid" {
t.Errorf("Unexpected state: %v", ipResource.State)
}
if ipResource.InterfaceName != "ifname2" {
t.Errorf("Unexpected InterfaceName: %v", ipResource.InterfaceName)
}
}
default:
{
t.Errorf("Unexpected IP resource %v", ipResource)
}
}
}
}