def testSaveLoadRecipe(self): from pyphant.core.CompositeWorker import CompositeWorker from pyphant.core.WorkerRegistry import WorkerRegistry from itertools import chain recipe = CompositeWorker(annotations={'foo': 42.0, 'bar': u'Hääh?'}) wreg = WorkerRegistry.getInstance() workerInfos = [t.workerInfos for t in wreg.getToolBoxInfoList()] for wInfo in chain(*workerInfos): worker = wInfo.createWorker() recipe.addWorker(worker) with H5FH(self.path, 'w') as handler: handler.saveRecipe(recipe) with H5FH(self.path, 'r') as handler: loadedRecipe = handler.loadRecipe() loadedWorkers = loadedRecipe.getWorkers() workers = recipe.getWorkers() self.assertEqual(len(loadedWorkers), len(workers)) workerNames = [w.name for w in workers] loadedWorkerNames = [w.name for w in loadedWorkers] for name in loadedWorkerNames: self.assertTrue(name in workerNames) self.assertEqual(recipe._annotations, loadedRecipe._annotations)
def setUp(self): self.composite = CompositeWorker() self.worker1 = ThresholdingWorker(self.composite) self.worker1.getParam('name').value = 'worker1' self.worker2 = ThresholdingWorker(self.composite) self.worker2.getParam('name').value = 'worker2'
def setUp(self): self.composite = CompositeWorker() self.worker1 = TestCompositeDummyWorker(self.composite) self.worker1.getParam('name').value = 'worker1' self.worker2 = TestCompositeDummyWorker(self.composite) self.worker2.getParam('name').value = 'worker2'
from pyphant.core.CompositeWorker import CompositeWorker from pyphant.core.H5FileHandler import H5FileHandler # create a recipe recipe = CompositeWorker() # ... fill the recipe (e.g. Listing 1) # save it with H5FileHandler('quicktour_api.h5', 'w') as handler: handler.saveRecipe(recipe, saveResults=True) # load a recipe with H5FileHandler('quicktour_api.h5', 'r') as handler: recipe = handler.loadRecipe()