| Ash Wilson | fd56648 | 2014-09-23 15:47:35 -0400 | [diff] [blame] | 1 | // +build acceptance | 
|  | 2 |  | 
|  | 3 | package v2 | 
|  | 4 |  | 
|  | 5 | import ( | 
|  | 6 | "testing" | 
|  | 7 |  | 
|  | 8 | "github.com/rackspace/gophercloud/openstack/compute/v2/flavors" | 
|  | 9 | "github.com/rackspace/gophercloud/pagination" | 
|  | 10 | ) | 
|  | 11 |  | 
|  | 12 | func TestListFlavors(t *testing.T) { | 
|  | 13 | client, err := newClient() | 
|  | 14 | if err != nil { | 
|  | 15 | t.Fatalf("Unable to create a compute client: %v", err) | 
|  | 16 | } | 
|  | 17 |  | 
|  | 18 | t.Logf("ID\tRegion\tName\tStatus\tCreated") | 
|  | 19 |  | 
|  | 20 | pager := flavors.List(client, flavors.ListFilterOptions{}) | 
|  | 21 | count, pages := 0, 0 | 
|  | 22 | pager.EachPage(func(page pagination.Page) (bool, error) { | 
|  | 23 | t.Logf("---") | 
|  | 24 | pages++ | 
|  | 25 | flavors, err := flavors.ExtractFlavors(page) | 
|  | 26 | if err != nil { | 
|  | 27 | return false, err | 
|  | 28 | } | 
|  | 29 |  | 
|  | 30 | for _, f := range flavors { | 
|  | 31 | t.Logf("%s\t%s\t%d\t%d\t%d", f.ID, f.Name, f.RAM, f.Disk, f.VCPUs) | 
|  | 32 | } | 
|  | 33 |  | 
|  | 34 | return true, nil | 
|  | 35 | }) | 
|  | 36 |  | 
|  | 37 | t.Logf("--------\n%d flavors listed on %d pages.", count, pages) | 
|  | 38 | } | 
|  | 39 |  | 
|  | 40 | func TestGetFlavor(t *testing.T) { | 
|  | 41 | client, err := newClient() | 
|  | 42 | if err != nil { | 
|  | 43 | t.Fatalf("Unable to create a compute client: %v", err) | 
|  | 44 | } | 
|  | 45 |  | 
|  | 46 | choices, err := ComputeChoicesFromEnv() | 
|  | 47 | if err != nil { | 
|  | 48 | t.Fatal(err) | 
|  | 49 | } | 
|  | 50 |  | 
|  | 51 | result, err := flavors.Get(client, choices.FlavorID) | 
|  | 52 | if err != nil { | 
|  | 53 | t.Fatalf("Unable to get flavor information: %v", err) | 
|  | 54 | } | 
|  | 55 | flavor, err := flavors.ExtractFlavor(result) | 
|  | 56 | if err != nil { | 
|  | 57 | t.Fatalf("Unable to extract flavor from GET result: %v", err) | 
|  | 58 | } | 
|  | 59 |  | 
|  | 60 | t.Logf("Flavor: %#v", flavor) | 
|  | 61 | } |