github.com/vmware/govmomi@v0.51.0/vmdk/import_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 vmdk_test
     6  
     7  import (
     8  	"io"
     9  	"os"
    10  	"testing"
    11  
    12  	"github.com/vmware/govmomi/units"
    13  	"github.com/vmware/govmomi/vmdk"
    14  )
    15  
    16  func TestDiskInfo(t *testing.T) {
    17  	di, err := vmdk.Stat("../govc/test/images/ttylinux-pc_i486-16.1-disk1.vmdk")
    18  	if err != nil {
    19  		if os.IsNotExist(err) {
    20  			t.SkipNow()
    21  		}
    22  		t.Fatal(err)
    23  	}
    24  
    25  	w := io.Discard
    26  	if testing.Verbose() {
    27  		w = os.Stderr
    28  	}
    29  
    30  	if err := di.Descriptor.Write(w); err != nil {
    31  		t.Error(err)
    32  	}
    33  
    34  	cap := di.Descriptor.Capacity()
    35  	hdr := di.Capacity
    36  	if cap != hdr {
    37  		t.Errorf("descriptor capacity %d != header capacity %d", cap, hdr)
    38  	}
    39  
    40  	scap := units.ByteSize(di.Capacity).String()
    41  	if scap != "30.0MB" {
    42  		t.Errorf("capacity=%s", scap)
    43  	}
    44  
    45  	_, err = di.OVF()
    46  	if err != nil {
    47  		t.Fatal(err)
    48  	}
    49  
    50  	di, err = vmdk.Stat("../govc/test/images/ttylinux-pc_i486-16.1.ovf")
    51  	if err != vmdk.ErrInvalidFormat {
    52  		t.Fatalf("error=%s", err)
    53  	}
    54  }
    55  
    56  func TestDiskInvalid(t *testing.T) {
    57  	_, err := vmdk.Stat("import_test.go")
    58  	if err != vmdk.ErrInvalidFormat {
    59  		t.Errorf("expected ErrInvalidFormat: %s", err)
    60  	}
    61  }