def test_multiple_dicts_converted_to_storage(self): d = {'key': 'value'} e = {'another_key': 'another value'} storage = Storage(d, e, spare_argument='one more value') assert storage.key == 'value' assert storage.another_key == 'another value' assert storage.spare_argument == 'one more value'
def test_multiple_dicts_converted_to_storage(self): d = {'key': 'value'} e = {'another_key': 'another value'} storage = Storage(d, e, spare_argument='one more value') self.assertEqual(storage.key, 'value') self.assertEqual(storage.another_key, 'another value') self.assertEqual(storage.spare_argument, 'one more value')
def browse(entity, browser, host): """Opens a page in defined browser for interaction:\n All parameters defaults to what is in robottelo.properties file.\n example: $ manage ui browse activationkey\n Opens a browser in ActivationKey scope and gives you interactive shell to play with the page\n """ settings.configure() if host: settings.server.hostname = host current_browser = _get_browser(browser) with Session(current_browser) as session: # noqa ui_crud = _import_ui_crud() # Make all UI CRUD entities available in a dict # each entity initialized with current_browser instance ui_entities = { name.lower(): crud_class(current_browser) for name, crud_class in ui_crud.items() } if entity: # if entity name specified navigate to the page # example: manage ui browse user ui_entities[entity.lower()].navigate_to_entity() # gets all functions from ui.factory module which starts with 'make_' ui_factory_members = getmembers( ui_factory, lambda i: callable(i) and i.__name__.startswith('make')) # Usually we need to pass the `session` as 1st argument # e.g `make_user(session, username='******')` # using `partial` we make session the default 1st argument # it allows the use as: `make_user(username='******') # and `session` is implicit there. ui_factory_functions = { name: partial(function, session=session) for name, function in ui_factory_members } # now we "inject" the factories and entities under `session.ui` session.ui = Storage(ui_entities, ui_factory_functions) # The same for nailgun.entities.* under `session.api` session.api = Storage(dict(getmembers(entities))) def close(): """Hook to close the session and browser atexit it also flushes the session history content to the specified file """ session.close() # FIXME: if --out=/path/to/file should save session history # see ipython.readthedocs.io/en/stable/config/options/terminal.html extra_vars = { 'session': session, 'browser': current_browser, 'current_browser': current_browser, 'host': settings.server.hostname, 'api_factory': entities, 'ui_factory': ui_factory } create_shell('ipython', extra_vars=extra_vars, exit_hooks=[close])
def test_dict_converted_to_storage(self): d = {'key': 'value'} storage = Storage(d) assert storage.key == 'value'
def test_dict_converted_to_storage(self): d = {'key': 'value'} storage = Storage(d) self.assertEqual(storage.key, 'value')