def test_context_manager(self): c = {'foo': 'bar'} with context.Context(**c): self.assertDictEqual(context.ctx_get(), c) self.assertIsNone(context.ctx_get())
def log_delta(req, msg, delta=None): ''' Log delta between now and entry of route context ''' if delta is None: ctx = context.ctx_get() delta = time.time() - ctx['tracer_context_start'] log.get_logger(req.robj.fname).debug("%.4f: %s(%r,%r): %s", delta, req.robj.fname, req.args, req.kwargs, msg)
def __bool__(self): ''' Verify user is a member of group. ''' try: user = context.ctx_get()['request'].user except KeyError: raise exceptions.AuthException("Missing user object") return self.group in user.groups()
def end_trace(fname): ''' Disable profiler ''' ctx = context.ctx_get() profiler = ctx.get('tracer_profiler') if profiler is None: return logger = log.get_logger(__name__) profiler.disable() logger.debug("Profiler disabled") lines = ctx['tracer_lines'] sort = ctx['tracer_sort'].split(',') trace_buf = BytesIO() stats = pstats.Stats(profiler, stream=trace_buf).sort_stats(*sort) stats.print_stats(lines) logger.debug("Dumping profiling data") log.get_logger(fname).debug(trace_buf.getvalue())
def request(self): return context.ctx_get().get('request')
def test_ctx_get(self): c = {'foo': 'bar'} context.ctx_push(c) t = context.ctx_get() self.assertIs(t, c) self.assertGreater(len(bottle.request.ws_context), 0)