github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/apiserver/facades/controller/imagemetadata/metadata_test.go (about)

     1  // Copyright 2015 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package imagemetadata_test
     5  
     6  import (
     7  	"github.com/juju/testing"
     8  	jc "github.com/juju/testing/checkers"
     9  	gc "gopkg.in/check.v1"
    10  
    11  	"github.com/juju/juju/apiserver/facade/facadetest"
    12  	"github.com/juju/juju/apiserver/facades/controller/imagemetadata"
    13  	apiservertesting "github.com/juju/juju/apiserver/testing"
    14  )
    15  
    16  type ImageMetadataUpdateSuite struct {
    17  	testing.IsolationSuite
    18  }
    19  
    20  var _ = gc.Suite(&ImageMetadataUpdateSuite{})
    21  
    22  func (s *ImageMetadataUpdateSuite) TestControllerOnly(c *gc.C) {
    23  	var authorizer apiservertesting.FakeAuthorizer
    24  	authorizer.Controller = true
    25  	_, err := imagemetadata.NewAPI(facadetest.Context{
    26  		Auth_: authorizer,
    27  	})
    28  	c.Assert(err, jc.ErrorIsNil)
    29  	authorizer.Controller = false
    30  	_, err = imagemetadata.NewAPI(facadetest.Context{
    31  		Auth_: authorizer,
    32  	})
    33  	c.Assert(err, gc.ErrorMatches, "permission denied")
    34  }