def openTrees(self): with Tree('pytree',self.shot+1,'new'): pass filepath = ('%s/pytree_%03d.tree'%(self.tmpdir,self.shot+1)).replace(os.sep,'/') self.assertEqual(Tree.getFileName('pytree',self.shot+1), filepath) pytree = Tree('pytree',self.shot+1) self.assertEqual(pytree.getFileName(), filepath) self.assertEqual(str(pytree),'Tree("PYTREE",%d,"Normal")'%(self.shot+1,)) pytree.createPulse(self.shot+2) self.assertEqual(pytree.number_opened,1) if not Tests.inThread: Tree.setCurrent('pytree',self.shot+2) pytree2=Tree('pytree',0) self.assertEqual(str(pytree2),'Tree("PYTREE",%d,"Normal")'%(self.shot+2,)) self.assertEqual(pytree2.incrementCurrent(1000),self.shot+1002) self.assertEqual(pytree2.getCurrent(),self.shot+1002) pytree2.setCurrent() self.assertEqual(Tree.getCurrent('pytree'),self.shot+2) else: pytree2=Tree('pytree',self.shot+2) self.assertEqual(pytree2.number_opened,1) self.assertEqual(pytree.shotid,pytree.shot) self.assertEqual(pytree.tree,pytree.expt) self.assertEqual(pytree.max_open,8) try: pytree.versions_in_model = True except TreeNOEDIT: pass else: self.assertEqual("TreeSUCCESS","TreeNOEDIT") try: pytree.versions_in_pulse = True except TreeNOEDIT: pass else: self.assertEqual("TreeSUCCESS","TreeNOEDIT")
def open(self): shot1 = self.shot + 1 shot2 = shot1 + 1 with Tree('pytree', shot1, 'new') as pytree: a = pytree.addNode('A', 'TEXT') pytree.write() pytree.open() a.record = 'a' * 64 self.assertEqual(pytree.getDatafileSize(), 84) pytree.close() with Tree('pytree', shot1, 'new') as pytree: # new should clear datafile (O_TRUNC) self.assertEqual(pytree.getDatafileSize(), 0) filepath = ('%s/pytree_%03d.tree' % (self.tmpdir, shot1)).replace( os.sep, '/') self.assertEqual(Tree.getFileName('pytree', shot1), filepath) pytree = Tree('pytree', shot1) self.assertEqual(pytree.getFileName(), filepath) self.assertEqual(str(pytree), 'Tree("PYTREE",%d,"Normal")' % (shot1, )) pytree.createPulse(shot2) self.assertEqual(pytree.number_opened, 1) if not Tests.inThread: Tree.setCurrent('pytree', shot2) pytree2 = Tree('pytree', 0) self.assertEqual(str(pytree2), 'Tree("PYTREE",%d,"Normal")' % (shot2, )) self.assertEqual(pytree2.incrementCurrent(1000), shot2 + 1000) self.assertEqual(pytree2.getCurrent(), shot2 + 1000) pytree2.setCurrent() self.assertEqual(Tree.getCurrent('pytree'), shot2) else: pytree2 = Tree('pytree', shot2) self.assertEqual(pytree2.number_opened, 1) self.assertEqual(pytree.shotid, pytree.shot) self.assertEqual(pytree.tree, pytree.expt) self.assertEqual(pytree.max_open, 8) try: pytree.versions_in_model = True except TreeNOEDIT: pass else: self.assertEqual("TreeSUCCESS", "TreeNOEDIT") try: pytree.versions_in_pulse = True except TreeNOEDIT: pass else: self.assertEqual("TreeSUCCESS", "TreeNOEDIT")