github.com/wallyworld/juju@v0.0.0-20161013125918-6cf1bc9d917a/instance/container_test.go (about)

     1  // Copyright 2013 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package instance_test
     5  
     6  import (
     7  	"testing"
     8  
     9  	jc "github.com/juju/testing/checkers"
    10  	gc "gopkg.in/check.v1"
    11  
    12  	"github.com/juju/juju/instance"
    13  )
    14  
    15  func TestPackage(t *testing.T) {
    16  	gc.TestingT(t)
    17  }
    18  
    19  type InstanceSuite struct{}
    20  
    21  var _ = gc.Suite(&InstanceSuite{})
    22  
    23  func (s *InstanceSuite) TestParseContainerType(c *gc.C) {
    24  	ctype, err := instance.ParseContainerType("lxd")
    25  	c.Assert(err, jc.ErrorIsNil)
    26  	c.Assert(ctype, gc.Equals, instance.LXD)
    27  
    28  	ctype, err = instance.ParseContainerType("lxd")
    29  	c.Assert(err, jc.ErrorIsNil)
    30  	c.Assert(ctype, gc.Equals, instance.LXD)
    31  
    32  	ctype, err = instance.ParseContainerType("kvm")
    33  	c.Assert(err, jc.ErrorIsNil)
    34  	c.Assert(ctype, gc.Equals, instance.KVM)
    35  
    36  	_, err = instance.ParseContainerType("none")
    37  	c.Assert(err, gc.ErrorMatches, `invalid container type "none"`)
    38  
    39  	_, err = instance.ParseContainerType("omg")
    40  	c.Assert(err, gc.ErrorMatches, `invalid container type "omg"`)
    41  }
    42  
    43  func (s *InstanceSuite) TestParseContainerTypeOrNone(c *gc.C) {
    44  	ctype, err := instance.ParseContainerTypeOrNone("lxd")
    45  	c.Assert(err, jc.ErrorIsNil)
    46  	c.Assert(ctype, gc.Equals, instance.LXD)
    47  
    48  	ctype, err = instance.ParseContainerTypeOrNone("lxd")
    49  	c.Assert(err, jc.ErrorIsNil)
    50  	c.Assert(ctype, gc.Equals, instance.LXD)
    51  
    52  	ctype, err = instance.ParseContainerTypeOrNone("kvm")
    53  	c.Assert(err, jc.ErrorIsNil)
    54  	c.Assert(ctype, gc.Equals, instance.KVM)
    55  
    56  	ctype, err = instance.ParseContainerTypeOrNone("none")
    57  	c.Assert(err, jc.ErrorIsNil)
    58  	c.Assert(ctype, gc.Equals, instance.NONE)
    59  
    60  	_, err = instance.ParseContainerTypeOrNone("omg")
    61  	c.Assert(err, gc.ErrorMatches, `invalid container type "omg"`)
    62  }