func (s *networkerSuite) SetUpTest(c *gc.C) { s.JujuConnSuite.SetUpTest(c) s.setUpNetworks(c) s.setUpMachine(c) s.setUpContainers(c) // Create a FakeAuthorizer so we can check permissions, // set up assuming we logged in as a machine agent. s.authorizer = apiservertesting.FakeAuthorizer{ Tag: s.machine.Tag(), } // Create the resource registry separately to track invocations to // Register. s.resources = common.NewResources() // Create a networker API for the machine. var err error s.networker, err = networker.NewNetworkerAPI( s.State, s.resources, s.authorizer, ) c.Assert(err, jc.ErrorIsNil) }
func (s *networkerSuite) TestNetworkerNonMachineAgent(c *gc.C) { // Fails with not a machine agent anAuthorizer := s.authorizer anAuthorizer.Tag = names.NewUnitTag("ubuntu/1") aNetworker, err := networker.NewNetworkerAPI(s.State, s.resources, anAuthorizer) c.Assert(err, gc.ErrorMatches, "permission denied") c.Assert(aNetworker, gc.IsNil) }