libb.create_virtual_module

create_virtual_module(modname, submodules)[source]

Create a virtual module with submodules from other modules.

Parameters:
  • modname (str) – Name of the virtual module to create.

  • submodules (dict) – Mapping of submodule names to actual module names.

Return type:

None

Submodule Example:

>>> create_virtual_module('foo', {'libb': 'libb'})
>>> import foo
>>> foo.libb.Setting()
{}

Virtual Config Example:

>>> from libb import Setting
>>> create_mock_module('mock_config', {'ENVIRONMENT': 'prod', 'bar': Setting(baz=1)})
>>> import mock_config
>>> create_virtual_module('foo', {'config': 'mock_config'})
>>> import foo
>>> foo.config.ENVIRONMENT
'prod'
>>> foo.config.bar.baz
1