github.com/altoros/juju-vmware@v0.0.0-20150312064031-f19ae857ccca/worker/networker/utils_test.go (about)

     1  // Copyright 2014 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package networker_test
     5  
     6  import (
     7  	gc "gopkg.in/check.v1"
     8  
     9  	"github.com/juju/juju/testing"
    10  	"github.com/juju/juju/worker/networker"
    11  )
    12  
    13  type utilsSuite struct {
    14  	testing.BaseSuite
    15  }
    16  
    17  var _ = gc.Suite(&utilsSuite{})
    18  
    19  func (s *utilsSuite) TestExecuteCommands(c *gc.C) {
    20  	commands := []string{
    21  		"echo start",
    22  		"sh -c 'echo STDOUT; echo STDERR >&2; exit 123'",
    23  		"echo end",
    24  		"exit 111",
    25  	}
    26  	err := networker.ExecuteCommands(commands)
    27  	expected := "command \"sh -c 'echo STDOUT; echo STDERR >&2; exit 123'\" failed " +
    28  		"(code: 123, stdout: STDOUT\n, stderr: STDERR\n)"
    29  	c.Assert(err, gc.NotNil)
    30  	c.Assert(err.Error(), gc.Equals, expected)
    31  }