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

     1  // Copyright 2015 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package storageprovisioner
     5  
     6  import (
     7  	"github.com/juju/names/v5"
     8  	jc "github.com/juju/testing/checkers"
     9  	"github.com/juju/worker/v3"
    10  	gc "gopkg.in/check.v1"
    11  )
    12  
    13  var (
    14  	NewManagedFilesystemSource     = &newManagedFilesystemSource
    15  	DefaultDependentChangesTimeout = &defaultDependentChangesTimeout
    16  )
    17  
    18  func StorageWorker(parent worker.Worker, appName string) (worker.Worker, bool) {
    19  	p := parent.(*provisioner)
    20  	return p.getApplicationWorker(appName)
    21  }
    22  
    23  func NewStorageWorker(c *gc.C, parent worker.Worker, appName string) {
    24  	p := parent.(*provisioner)
    25  	cfg := p.config
    26  	cfg.Scope = names.NewApplicationTag(appName)
    27  	w, err := NewStorageProvisioner(cfg)
    28  	c.Assert(err, jc.ErrorIsNil)
    29  	p.saveApplicationWorker(appName, w)
    30  	_ = p.catacomb.Add(w)
    31  }