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 )