github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/blockstorage/extensions/backups_test.go (about)

     1  //go:build acceptance || blockstorage
     2  // +build acceptance blockstorage
     3  
     4  package extensions
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/gophercloud/gophercloud/internal/acceptance/clients"
    10  	"github.com/gophercloud/gophercloud/openstack/blockstorage/extensions/backups"
    11  
    12  	blockstorage "github.com/gophercloud/gophercloud/internal/acceptance/openstack/blockstorage/v3"
    13  	th "github.com/gophercloud/gophercloud/testhelper"
    14  )
    15  
    16  func TestBackupsCRUD(t *testing.T) {
    17  	blockClient, err := clients.NewBlockStorageV3Client()
    18  	th.AssertNoErr(t, err)
    19  
    20  	volume, err := blockstorage.CreateVolume(t, blockClient)
    21  	th.AssertNoErr(t, err)
    22  	defer blockstorage.DeleteVolume(t, blockClient, volume)
    23  
    24  	backup, err := CreateBackup(t, blockClient, volume.ID)
    25  	th.AssertNoErr(t, err)
    26  	defer DeleteBackup(t, blockClient, backup.ID)
    27  
    28  	allPages, err := backups.List(blockClient, nil).AllPages()
    29  	th.AssertNoErr(t, err)
    30  
    31  	allBackups, err := backups.ExtractBackups(allPages)
    32  	th.AssertNoErr(t, err)
    33  
    34  	var found bool
    35  	for _, v := range allBackups {
    36  		if backup.Name == v.Name {
    37  			found = true
    38  		}
    39  	}
    40  
    41  	th.AssertEquals(t, found, true)
    42  }