arjuna.tpi.config module¶
Provides configuration related public classes.
Provides the Configuration and ConfigBuilder classes.
Configuration class represents the immutable, read-only configuration object.
ConfigBuilder can be used to create new configuration from an existing one.
-
class
arjuna.tpi.config.
ConfigBuilder
(*, base_config: arjuna.tpi.config.Configuration, auto_name_gen=True, _conf_stage=<ConfigStage.CODED: 4>)¶ Bases:
object
Helps in constructing a new Configuration object from an existing one.
Keyword Arguments: - base_config – Parent configuration to be used be used as reference for creation of the new Configuration object.
- auto_gen_name – Generate a unique configuration name in build call if name is not provided. Default is True.
Note
It is not meant to be directly constructed. Use builder method of a Configuration object to create the associated ConfigBuilder object.
Note
You can also use . notation or [] dict notation to add/update an option value.
builder.option = value builder[option] = value
-
app
(path) → self¶ (Not supported yet) Configure path for mobile app installer.
Parameters: path – Absolute path of mobile app on test machine. Returns: Current ConfigBuilder object
-
appium
(context) → self¶ (Not supported yet) Configure Appium as the automation engine.
Returns: Current ConfigBuilder object
-
chrome
() → self¶ Configure Chrome as the browser.
Returns: Current ConfigBuilder object
-
firefox
() → self¶ Configure Firefox as the browser.
Returns: Current ConfigBuilder object
-
from_file
(fpath) → self¶ Add all options from a .conf file.
Parameters: fpath – Path of .conf file. Returns: Current ConfigBuilder object Note
If instead of full absolute path, a name or relative file path is provided, Arjuna creates the path in relation to the default configuration directory - <Project Root>/config.
-
option
(option: ArjunaOptionOrStr, obj: Any) → self¶ Add/Change option value.
Parameters: - option – An ArjunaOption or a string representing ArjunaOption or a user defined option.
- obj – An object of any type as per the option key.
Returns: Current ConfigBuilder object
-
options
(option_map: Dict[ArjunaOptionOrStr, Any]) → self¶ Add/Change multiple option values.
Parameters: option_map – A dictionary of options. Keys are ArjunaOptions or strings and values can be of any type as per the option key. Returns: Current ConfigBuilder object
-
register
(*, config_name=None)¶ Register the new configuration.
Keyword Arguments: config_name – (Optional) Name that you want to assign to the configuration. Note
- Name needs to be unique in a test run. No configuration should exist with the same name.
- A dynamic, unique name is generated if name is not provided.
-
selenium
() → self¶ Configure Selenium as the automation engine.
Returns: Current ConfigBuilder object
-
class
arjuna.tpi.config.
Configuration
(test_session: TestSession, name: str, config: WrappedConfiguration)¶ Bases:
object
Read-only, immutable object that contains a fixed mapping of ArjunaOptions and User defined options.
Parameters: - test_session – Current test session object.
- name – Name of this configuration.
- config – WrappedConfiguration object. Configuration provides a read-only interface on top of it.
Note
- You never directly create a Configuration object.
- It is an outcome of configuration processing that Arjuna does.
Note
- The option name string is considered by Arjuna as case-insensitive. Also, . (dot) and _ (underscore) are interchangeable. So, following are equivalent arguments
- ArjunaOption.BROWSER_NAME
- BROWSER_NAME
- BrOwSeR_NaMe
- browser.name
- Browser.Name
- and so on
Note
You can also use . notation or [] dict notation to retrieve an option value.
config.option config[option]
-
as_dict
() → Dict[str, Any]¶ Get all options.
Returns: A dictionary of all Arjuna Options and User Defined Options
-
builder
¶ Creates a configuration builder object which takes this configuration as its reference.
Returns: new ConfigBuilder object
-
get_arjuna_options_as_map
() → Dict[ArjunaOptionOrStr, Any]¶ Get all Arjuna options.
Returns: A dictionary of all Arjuna Options.
-
is_arjuna_option_not_set
(option) → bool¶ Check if the value for an Arjuna option was set. (Checks for ‘not_set’ string.)
Parameters: option – An ArjunaOption or a string representing ArjunaOption or a user defined option. Returns: True/False
-
name
¶ Name of this configuration object.
Returns: Name of this configuration
-
test_session
¶ Test Session object for this Configuration.
-
value
(option: ArjunaOptionOrStr) → Any¶ Get the value of a configuration option.
Parameters: option – An ArjunaOption or a string representing ArjunaOption or a user defined option. Returns: Object of any type, depending on the option.