Python contextlib._GeneratorContextManager() Examples
The following are 5
code examples of contextlib._GeneratorContextManager().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
contextlib
, or try the search function
.
Example #1
Source File: contexts.py From easypy with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __call__(self, func): if isgeneratorfunction(func): def inner(*args, **kwds): with self._recreate_cm(): yield from func(*args, **kwds) elif is_contextmanager(func): @contextmanager def inner(*args, **kwds): with self._recreate_cm(): with func(*args, **kwds) as ret: yield ret else: def inner(*args, **kwds): with self._recreate_cm(): return func(*args, **kwds) return wraps(func)(inner) # Some python version have a different signature for '_GeneratorContextManager.__init__', so we must adapt:
Example #2
Source File: test_profiles.py From python-libmaas with GNU Affero General Public License v3.0 | 5 votes |
def test_open_and_close(self): # ProfileStore.open() returns a context manager that closes the # database on exit. config_file = self.makeDir().joinpath("config") config = ProfileStore.open(config_file) self.assertIsInstance(config, contextlib._GeneratorContextManager) with config as config: self.assertIsInstance(config, ProfileStore) self.assertEqual((1,), config.database.execute("SELECT 1").fetchone()) self.assertRaises(sqlite3.ProgrammingError, config.database.execute, "SELECT 1")
Example #3
Source File: test_config.py From maas with GNU Affero General Public License v3.0 | 5 votes |
def test_open_and_close(self): # ProfileConfig.open() returns a context manager that closes the # database on exit. config_file = os.path.join(self.make_dir(), "config") config = api.ProfileConfig.open(config_file, create=True) self.assertIsInstance(config, contextlib._GeneratorContextManager) with config as config: self.assertIsInstance(config, api.ProfileConfig) with config.cursor() as cursor: self.assertEqual((1,), cursor.execute("SELECT 1").fetchone()) self.assertRaises(sqlite3.ProgrammingError, config.cursor)
Example #4
Source File: test_config.py From maas with GNU Affero General Public License v3.0 | 5 votes |
def test_open_and_close(self): # ConfigurationDatabase.open() returns a context manager that closes # the database on exit. config_file = os.path.join(self.make_dir(), "config") config = ConfigurationDatabase.open_for_update(config_file) self.assertIsInstance(config, contextlib._GeneratorContextManager) with config as config: self.assertIsInstance(config, ConfigurationDatabase) with config.cursor() as cursor: self.assertEqual((1,), cursor.execute("SELECT 1").fetchone()) self.assertRaises(sqlite3.ProgrammingError, config.cursor)
Example #5
Source File: test_config.py From maas with GNU Affero General Public License v3.0 | 5 votes |
def test_open_and_close(self): # ConfigurationFile.open() returns a context manager. config_file = os.path.join(self.make_dir(), "config") config_ctx = ConfigurationFile.open(config_file) self.assertIsInstance(config_ctx, contextlib._GeneratorContextManager) with config_ctx as config: self.assertIsInstance(config, ConfigurationFile) self.assertThat(config_file, FileExists()) self.assertEqual({}, config.config) self.assertFalse(config.dirty) self.assertThat(config_file, FileContains(""))