10
"gopkg.in/goose.v1/identity"
13
// imageDetails specify parameters used to start a test machine for the live tests.
14
type imageDetails struct {
20
// Out-of-the-box, we support live testing using Canonistack or HP Cloud.
21
var testConstraints = map[string]imageDetails{
23
flavor: "m1.tiny", imageId: "f2ca48ce-30d5-4f1f-9075-12e64510368d"},
25
flavor: "standard.xsmall", imageId: "81078"},
28
var live = flag.Bool("live", false, "Include live OpenStack tests")
29
var vendor = flag.String("vendor", "", "The Openstack vendor to test against")
30
var imageId = flag.String("image", "", "The image id for which a test service is to be started")
31
var flavor = flag.String("flavor", "", "The flavor of the test service")
33
func Test(t *testing.T) {
35
// We can either specify a vendor, or imageId and flavor separately.
36
var testImageDetails imageDetails
39
if testImageDetails, ok = testConstraints[*vendor]; !ok {
40
keys := reflect.ValueOf(testConstraints).MapKeys()
41
t.Fatalf("Unknown vendor %s. Must be one of %s", *vendor, keys)
43
testImageDetails.vendor = *vendor
46
t.Fatalf("Must specify image id to use for test instance, "+
47
"eg %s for Canonistack", "-image c876e5fe-abb0-41f0-8f29-f0b47481f523")
50
t.Fatalf("Must specify flavor to use for test instance, "+
51
"eg %s for Canonistack", "-flavor m1.tiny")
53
testImageDetails = imageDetails{*flavor, *imageId, ""}
55
cred, err := identity.CompleteCredentialsFromEnv()
57
t.Fatalf("Error setting up test suite: %s", err.Error())
59
registerOpenStackTests(cred, testImageDetails)