aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py
diff options
context:
space:
mode:
authorRoss Brattain <ross.b.brattain@intel.com>2017-01-26 15:14:59 -0800
committerRoss Brattain <ross.b.brattain@intel.com>2017-02-08 06:50:31 +0000
commit0464f576ffaa830a30f984df3e61bd29b15ddcaa (patch)
treef7fce48f61f1d96a33cf6aca398c05c594dd7b4c /tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py
parenta4241e6e9b121447a50fdfe0d79b322c2e2aaea9 (diff)
vnf_generic: convert sshmanager to class
@contextmanager have an issue with respect to exceptions that makes them not suitable for real usage. @contextmanager uses yield to create a generator and then uses generator.throw() to raise any exceptions. Exceptions thrown from generators loose their call stack due to the way generators work, so any exception inside a context manager is harder to debug. For this reason we don't use @contextmanager and instead always define a new class with __enter__ and __exit__. There is sample code that demonstrates the issue with @contextmanager and generator.throw() here https://gist.github.com/rbbratta/e28b6e64a4551522c3ac9815ca7f25f0 Change-Id: I5383c01f40a63e33680112f39b5bd9c858e328f1 Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py')
0 files changed, 0 insertions, 0 deletions