Example #1
0
func (s *connSuite) TestConnectionSimpleAddInstance(c *gc.C) {
	s.FakeConn.Instance = &s.RawInstanceFull

	inst := &s.RawInstance
	zones := []string{"a-zone"}
	err := google.ConnAddInstance(s.Conn, inst, "mtype", zones)
	c.Assert(err, jc.ErrorIsNil)

	c.Check(inst, jc.DeepEquals, &s.RawInstanceFull)
}
Example #2
0
func (s *connSuite) TestConnectionAddInstanceWaitFailed(c *gc.C) {
	s.FakeConn.Instance = &s.RawInstanceFull

	failure := s.NewWaitError(nil, errors.New("unknown"))
	s.FakeConn.Err = failure

	zones := []string{"a-zone"}
	err := google.ConnAddInstance(s.Conn, &s.RawInstance, "mtype", zones)

	c.Check(errors.Cause(err), gc.Equals, failure)
}
Example #3
0
func (s *connSuite) TestConnectionAddInstanceGetFailed(c *gc.C) {
	s.FakeConn.Instance = &s.RawInstanceFull

	failure := errors.New("unknown")
	s.FakeConn.Err = failure
	s.FakeConn.FailOnCall = 1

	zones := []string{"a-zone"}
	err := google.ConnAddInstance(s.Conn, &s.RawInstance, "mtype", zones)

	c.Check(errors.Cause(err), gc.Equals, failure)
	c.Check(s.FakeConn.Calls, gc.HasLen, 2)
}
Example #4
0
func (s *connSuite) TestConnectionSimpleAddInstanceAPI(c *gc.C) {
	s.FakeConn.Instance = &s.RawInstanceFull
	expected := s.RawInstance
	expected.MachineType = "zones/a-zone/machineTypes/mtype"

	inst := &s.RawInstance
	zones := []string{"a-zone"}
	err := google.ConnAddInstance(s.Conn, inst, "mtype", zones)
	c.Assert(err, jc.ErrorIsNil)

	c.Check(s.FakeConn.Calls, gc.HasLen, 2)
	c.Check(s.FakeConn.Calls[0].FuncName, gc.Equals, "AddInstance")
	c.Check(s.FakeConn.Calls[0].ProjectID, gc.Equals, "spam")
	c.Check(s.FakeConn.Calls[0].ZoneName, gc.Equals, "a-zone")
	c.Check(s.FakeConn.Calls[0].InstValue, gc.DeepEquals, expected)
	c.Check(s.FakeConn.Calls[1].FuncName, gc.Equals, "GetInstance")
	c.Check(s.FakeConn.Calls[1].ProjectID, gc.Equals, "spam")
	c.Check(s.FakeConn.Calls[1].ZoneName, gc.Equals, "a-zone")
	c.Check(s.FakeConn.Calls[1].ID, gc.Equals, "spam")
}