def setDefault(self): with Tree('pytree',self.shot+5,'new') as pytree: pytree.default.addNode('pytreesub','subtree').include_in_pulse=True pytree.write() with Tree('pytreesub',self.shot+5,'new') as pytreesub: pytreesub.default.addNode('mynode','numeric').addTag("mytag") pytreesub.write() pytree.readonly() pytree2 = Tree('pytree',self.shot+5,"ReadOnly") pytree.setDefault(pytree._MYTAG) self.assertEqual(str(pytree.getDefault()),'\\PYTREESUB::MYTAG') self.assertEqual(str(pytree2.getDefault()),'\\PYTREE::TOP') pytree.getNode("\\PYTREESUB::TOP").setDefault() self.assertEqual(str(pytree.getDefault()),'\\PYTREESUB::TOP')
def test(): pytree = Tree('pytree', self.shot, 'ReadOnly') pytree2 = Tree('pytree', self.shot, 'ReadOnly') pytree.setDefault(pytree._IP) self.assertEqual(str(pytree.getDefault()), '\\PYTREESUB::IP') self.assertEqual(str(pytree2.getDefault()), '\\PYTREE::TOP')
def thick(self): def testnci(thick, local, con, nci): l = local.S.__getattribute__(nci) t = thick.S.__getattribute__(nci) if nci.endswith("_nids"): l, t = str(l), str(t) try: c = str(con.get("getnci(getnci(S,$),'nid_number')", nci)) except TreeNNF: c = '[]' else: c = con.get("getnci(S,$)", nci) try: self.assertEqual(t, c) self.assertEqual(t, l) except: print(nci, t, l, c) raise server, server_port = self._setup_mdsip('ACTION_SERVER', 'ACTION_PORT', 7000 + self.index, True) svr, svr_log = self._start_mdsip(server, server_port, 'thick') try: con = Connection(server) self.assertEqual( con.get("zero([1,1,1,1,1,1,1,1],1)").tolist(), [[[[[[[[0]]]]]]]]) with Tree(self.tree, -1, "new") as local: local.addNode(self.treesub, "SUBTREE") s = local.addNode("S", "SIGNAL") s.addTag("tagS") s.record = ADD(Float32(1), Float32(2)) t = local.addNode("T", "TEXT") t.addNode("TT", "TEXT").addTag("tagTT") t.record = t.TT t.TT = "recTT" local.write() with Tree(self.treesub, -1, "new") as sub: sub.addNode("OK") sub.write() local.normal() Tree.setCurrent(self.tree, 7) setenv("%s_path" % self.tree, "%s::" % server) print(con.get("getenv($//'_path')", self.tree)) con.get("TreeShr->TreeOpen(ref($),val($),val(1))", self.tree, -1) thick = Tree(self.tree, -1) thick.createPulse(1) thick1 = Tree(self.tree, 1) self.assertEqual( getattr(local, self.treesub.upper()).OK.nid, getattr(thick1, self.treesub.upper()).OK.nid) local_filename = local.getFileName() thick_filename = thick.getFileName() self.assertTrue("::" in thick_filename, thick_filename) self.assertTrue(local_filename, thick_filename.split("::", 1)[1]) """ TreeTurnOff / TreeTurnOn """ thick.S.on = False self.assertEqual(local.S.on, False) thick.S.on = True self.assertEqual(local.S.on, True) """ TreeSetCurrentShotId / TreeGetCurrentShotId """ Tree.setCurrent(self.tree, 1) self.assertEqual(Tree.getCurrent(self.tree), 1) """ TreeGetRecord / TreeSetRecord """ self.assertEqual(str(local.S.record), "1. + 2.") self.assertEqual(str(thick.S.record), "1. + 2.") thick.S.record = ADD(Float32(2), Float32(4)) self.assertEqual(str(local.S.record), "2. + 4.") self.assertEqual(str(thick.S.record), "2. + 4.") self.assertEqual(str(local.T.record), str(thick.T.record)) """ GetDefaultNid / SetDefaultNid """ self.assertEqual(thick.getDefault(), thick.top) thick.setDefault(thick.S) self.assertEqual(thick.getDefault(), thick.top.S) thick.setDefault(thick.top) """ FindNodeWildRemote """ self.assertEqual(str(thick.getNodeWild("T*")), str(local.getNodeWild("T*"))) """ FindTagWildRemote """ self.assertEqual(thick.findTags("*"), local.findTags("*")) """ nci """ thick.S.write_once = True self.assertEqual(thick.S.write_once, True) for nci in ( 'on', 'depth', 'usage_str', 'dtype', 'length', 'rlength', 'fullpath', 'minpath', 'member_nids', 'children_nids', 'rfa', 'write_once', ): testnci(thick, local, con, nci) """ new stuff """ self.assertEqual(local.getFileName(), con.get("treefilename($,-1)", self.tree)) finally: if svr_log: svr_log.close() self._stop_mdsip((svr, server))
from MDSplus import Tree t = Tree('my_tree', -1) # ----------------------- Instance Methods ----------------------- dfs = t.getDatafileSize() # t.cleanDatafile() # t.compressDatafile() fn = t.getFileName() t2 = t.copy() # t.close() # top = t.top() # ad = t.addDevice('SUB3') # an = t.addNode('SUB4') # createPulse(1) dir = t.dir() # gc = t.getCurrent('SUB1') gd = t.getDefault() gn = t.getNode("SUB1") gnwi_iterator = t.getNodeWildIter('***') gnw_array = t.getNodeWild('***') gtc_tuple = t.getTimeContext() im_bool = t.isModified() # sd_tn = t.setDefault("SUB1") # ----------------------- Static Methods ----------------------- # gvd_str = t.getVersionDate() # --------------------------- TreeNode Methods --------------------------- # from MDSplus import TreeNode tn = t.getNode("SUB1") c_tn = tn.copy() opn_str = tn.ORIGINAL_PART_NAME() pn_str = tn.PART_NAME()