func (t *localServerSuite) TestStartInstanceDistribution(c *gc.C) { env := t.Prepare(c) envtesting.UploadFakeTools(c, env.Storage()) err := bootstrap.Bootstrap(coretesting.Context(c), env, environs.BootstrapParams{}) c.Assert(err, gc.IsNil) // test-available is the only available AZ, so AvailabilityZoneAllocations // is guaranteed to return that. inst, _ := testing.AssertStartInstance(c, env, "1") c.Assert(openstack.InstanceServerDetail(inst).AvailabilityZone, gc.Equals, "test-available") }
func (t *localServerSuite) TestStartInstanceDistributionAZNotImplemented(c *gc.C) { env := t.Prepare(c) envtesting.UploadFakeTools(c, env.Storage()) err := bootstrap.Bootstrap(coretesting.Context(c), env, environs.BootstrapParams{}) c.Assert(err, gc.IsNil) mock := mockAvailabilityZoneAllocations{ err: jujuerrors.NotImplementedf("availability zones"), } t.PatchValue(openstack.AvailabilityZoneAllocations, mock.AvailabilityZoneAllocations) // Instance will be created without an availability zone specified. inst, _ := testing.AssertStartInstance(c, env, "1") c.Assert(openstack.InstanceServerDetail(inst).AvailabilityZone, gc.Equals, "") }
func (t *localServerSuite) TestStartInstanceAvailZone(c *gc.C) { inst, err := t.testStartInstanceAvailZone(c, "test-available") c.Assert(err, gc.IsNil) c.Assert(openstack.InstanceServerDetail(inst).AvailabilityZone, gc.Equals, "test-available") }