github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/worker/caasfirewallersidecar/package_test.go (about)

     1  // Copyright 2020 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package caasfirewallersidecar
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/juju/errors"
    10  	"github.com/juju/worker/v3"
    11  	"github.com/juju/worker/v3/catacomb"
    12  	gc "gopkg.in/check.v1"
    13  )
    14  
    15  //go:generate go run go.uber.org/mock/mockgen -package mocks -destination mocks/broker_mock.go github.com/juju/juju/worker/caasfirewallersidecar CAASBroker,PortMutator,ServiceUpdater
    16  
    17  func TestAll(t *testing.T) {
    18  	gc.TestingT(t)
    19  }
    20  
    21  type (
    22  	ApplicationWorkerCreator = applicationWorkerCreator
    23  )
    24  
    25  var (
    26  	NewApplicationWorker = newApplicationWorker
    27  )
    28  
    29  func NewWorkerForTest(config Config, f ApplicationWorkerCreator) (worker.Worker, error) {
    30  	if err := config.Validate(); err != nil {
    31  		return nil, errors.Trace(err)
    32  	}
    33  	p := newFirewaller(config, f)
    34  	err := catacomb.Invoke(catacomb.Plan{
    35  		Site: &p.catacomb,
    36  		Work: p.loop,
    37  	})
    38  	return p, err
    39  }