github.com/vmware/govmomi@v0.51.0/object/distributed_virtual_portgroup_test.go (about)

     1  // © Broadcom. All Rights Reserved.
     2  // The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.
     3  // SPDX-License-Identifier: Apache-2.0
     4  
     5  package object_test
     6  
     7  import (
     8  	"context"
     9  	"testing"
    10  
    11  	"github.com/vmware/govmomi/object"
    12  	"github.com/vmware/govmomi/simulator"
    13  	"github.com/vmware/govmomi/vim25"
    14  )
    15  
    16  // DistributedVirtualPortgroup should implement the Reference interface.
    17  var _ object.Reference = object.DistributedVirtualPortgroup{}
    18  
    19  // DistributedVirtualPortgroup should implement the NetworkReference interface.
    20  var _ object.NetworkReference = object.DistributedVirtualPortgroup{}
    21  
    22  func TestDistributedVirtualPortgroupEthernetCardBackingInfo(t *testing.T) {
    23  	simulator.Test(func(ctx context.Context, c *vim25.Client) {
    24  		obj := simulator.Map(ctx).Any("DistributedVirtualPortgroup").(*simulator.DistributedVirtualPortgroup)
    25  
    26  		pg := object.NewDistributedVirtualPortgroup(c, obj.Self)
    27  		_, err := pg.EthernetCardBackingInfo(ctx)
    28  		if err != nil {
    29  			t.Fatal(err)
    30  		}
    31  
    32  		obj.Config.DistributedVirtualSwitch = nil // expect to fail if switch can't be read
    33  		_, err = pg.EthernetCardBackingInfo(ctx)
    34  		if err == nil {
    35  			t.Fatal("expected error")
    36  		}
    37  	})
    38  }