github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/apiserver/migrationmaster/export_test.go (about)

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package migrationmaster
     5  
     6  import (
     7  	"github.com/juju/juju/migration"
     8  	"github.com/juju/juju/state"
     9  )
    10  
    11  func PatchState(p Patcher, st Backend) {
    12  	p.PatchValue(&getBackend, func(*state.State) Backend {
    13  		return st
    14  	})
    15  }
    16  
    17  func PatchExportModel(p Patcher, f func(migration.StateExporter) ([]byte, error)) {
    18  	p.PatchValue(&exportModel, f)
    19  }
    20  
    21  type Patcher interface {
    22  	PatchValue(ptr, value interface{})
    23  }