def test_sess_current(self): core = s_cortex.openurl('ram:///') # Since sessions may store wildcard props in syn:sess nodes we # have to ensure enforce is disabled in our session cortex core.setConfOpt('enforce', 0) cura = s_session.Curator(core=core) sess = cura.new() iden = sess.iden sess.put('woot', 10) with sess: woot = s_session.current() self.eq(sess.iden, woot.iden) self.eq(woot.get('woot'), 10) sess.put('haha', 30, save=False) self.eq(woot.get('haha'), 30) cura.fini() cura = s_session.Curator(core=core) sess = cura.get(iden) self.eq(sess.get('woot'), 10) self.eq(sess.get('haha'), None) core.fini()
def test_sess_current(self): core = s_cortex.openurl('ram:///') cura = s_session.Curator(core=core) sess = cura.new() iden = sess.iden sess.put('woot', 10) with sess: woot = s_session.current() self.eq(sess.iden, woot.iden) self.eq(woot.get('woot'), 10) sess.put('haha', 30, save=False) self.eq(woot.get('haha'), 30) cura.fini() cura = s_session.Curator(core=core) sess = cura.get(iden) self.eq(sess.get('woot'), 10) self.eq(sess.get('haha'), None) core.fini()
def test_lib_session_cura(self): with s_session.Curator() as cura: sess = cura.get() sess.set('foo', 'bar') self.eq(sess.get('foo'), 'bar') self.none(sess.get('baz')) # fake out a maint loop sess.tick = 1 cura._curaMainLoop() self.true(sess.isfini) # get a new session sess = cura.get()
def test_sess_current(self): core = s_cortex.openurl('ram:///') cura = s_session.Curator(core) sess = cura.new() sess.put('woot',10) with sess: woot = s_session.current() self.assertEqual(sess.sid,woot.sid) self.assertEqual( woot.get('woot'), 10 ) sess.put('haha',30) self.assertEqual( sess.get('haha'), 30 ) cura.fini() core.fini()
def __init__(self, pool=None): EventBus.__init__(self) DmonConf.__init__(self) self.auth = None self.socks = {} # sockets by iden self.shared = {} # objects provided by daemon self.pushed = {} # objects provided by sockets self.csides = {} # item:[ (name,path), ... ] self.reflect = {} # objects reflect info by name self._dmon_ons = {} self._dmon_links = [] # list of listen links self._dmon_yields = set() if pool is None: pool = s_threads.Pool(size=8, maxsize=-1) self.pool = pool self.plex = s_socket.Plex() self.cura = s_session.Curator() self.onfini(self.plex.fini) self.onfini(self.pool.fini) self.onfini(self.cura.fini) self.on('link:sock:init', self._onLinkSockInit) self.plex.on('link:sock:mesg', self._onLinkSockMesg) self.mesgfuncs = {} self.setMesgFunc('tele:syn', self._onTeleSynMesg) self.setMesgFunc('sock:gzip', self._onSockGzipMesg) self.setMesgFunc('tele:call', self._onTeleCallMesg) # for "client shared" objects... self.setMesgFunc('tele:push', self._onTelePushMesg) self.setMesgFunc('tele:retn', self._onTeleRetnMesg) self.setMesgFunc('tele:on', self._onTeleOnMesg) self.setMesgFunc('tele:off', self._onTeleOffMesg) self.setMesgFunc('tele:yield:fini', self._onTeleYieldFini)
def test_sess_log(self): cura = s_session.Curator() watr = cura.waiter(1, 'sess:log') sess = cura.new() sess.log(0, "woot")
def test_sess_fini(self): core = s_cortex.openurl('ram:///') cura = s_session.Curator(core) cura.fini() core.fini()