github.com/Pankov404/juju@v0.0.0-20150703034450-be266991dceb/apiserver/common/export_test.go (about)

     1  // Copyright 2014 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package common
     5  
     6  import "github.com/juju/juju/state"
     7  
     8  var (
     9  	MachineJobFromParams = machineJobFromParams
    10  	ValidateNewFacade    = validateNewFacade
    11  	WrapNewFacade        = wrapNewFacade
    12  	NilFacadeRecord      = facadeRecord{}
    13  	EnvtoolsFindTools    = &envtoolsFindTools
    14  )
    15  
    16  type Patcher interface {
    17  	PatchValue(dest, value interface{})
    18  }
    19  
    20  // SanitizeFacades patches Facades so that for the lifetime of the test we get
    21  // a clean slate to work from, and will not accidentally overrite/mutate the
    22  // real facade registry.
    23  func SanitizeFacades(patcher Patcher) {
    24  	emptyFacades := &FacadeRegistry{}
    25  	patcher.PatchValue(&Facades, emptyFacades)
    26  }
    27  
    28  type Versions versions
    29  
    30  func DescriptionFromVersions(name string, vers Versions) FacadeDescription {
    31  	return descriptionFromVersions(name, versions(vers))
    32  }
    33  
    34  func NewMultiNotifyWatcher(w ...state.NotifyWatcher) state.NotifyWatcher {
    35  	mw := newMultiNotifyWatcher(w...)
    36  	return mw
    37  }
    38  
    39  var (
    40  	ServiceStatus    = serviceStatus
    41  	ServiceSetStatus = serviceSetStatus
    42  )