MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / _do

Method _do

lib/sqlalchemy/testing/exclusions.py:135–167  ·  view source on GitHub ↗
(self, cfg, fn, *args, **kw)

Source from the content-addressed store, hash-verified

133 all_fails._expect_success(config._current)
134
135 def _do(self, cfg, fn, *args, **kw):
136 for skip in self.skips:
137 if skip(cfg):
138 msg = "'%s' : %s" % (
139 config.get_current_test_name(),
140 skip._as_string(cfg),
141 )
142 config.skip_test(msg)
143
144 if self.warns:
145 from .assertions import expect_warnings
146
147 @contextlib.contextmanager
148 def _expect_warnings():
149 with contextlib.ExitStack() as stack:
150 for expression, assert_ in self.warns.values():
151 stack.enter_context(
152 expect_warnings(expression, assert_=assert_)
153 )
154 yield
155
156 ctx = _expect_warnings()
157 else:
158 ctx = contextlib.nullcontext()
159
160 try:
161 with ctx:
162 return_value = fn(*args, **kw)
163 except Exception as ex:
164 self._expect_failure(cfg, ex, name=fn.__name__)
165 else:
166 self._expect_success(cfg, name=fn.__name__)
167 return return_value
168
169 def _expect_failure(self, config, ex, name="block"):
170 for fail in self.fails:

Callers 1

decorateMethod · 0.95

Calls 7

_expect_failureMethod · 0.95
_expect_successMethod · 0.95
skipFunction · 0.85
_expect_warningsFunction · 0.85
skip_testMethod · 0.80
get_current_test_nameMethod · 0.45
_as_stringMethod · 0.45

Tested by

no test coverage detected