def setup(): set_default_values() set_environment_variables() if not v.is_set("disable.cli"): set_cli_arguments() set_config_file_extensions() if config_file := v.get("config.file"): read_config_file(config_file)
def init_server(): auth = HTTPBasicAuth(v.get('oauth_client.id'), v.get('oauth_client.secret')) client = BackendApplicationClient(client_id=v.get('oauth_client.id')) api_session = OAuth2Session(client=client) token = api_session.fetch_token( token_url=PARTICLE_TOKEN_ENDPOINT, auth=auth, ) return token, api_session
def env_setup(): v.set_env_prefix("li") v.automatic_env() if not v.is_set("api_key") or not v.is_set("api_host"): print("LI_API_KEY or LI_API_HOST environment variables not found.") sys.exit() if not v.get("api_host").endswith(API_VERSION_PATH): print("ERROR: LI_API_HOST environment variable must end with " + API_VERSION_PATH) print("LI_API_HOST current value: " + v.get("api_host")) sys.exit() layint_api.configuration.verify_ssl = v.get_bool("verify_ssl")
def _setup_args(args): defaults = _get_default_args(args) args_dict = _get_args(args) for k, val in defaults.items(): v.set_default(k, val) if v.get(k) != args_dict[k]: v.bind_arg(k, args_dict[k])
def subscribe_to_events(session): resp = session.request(method="GET", url=build_api_path( ['products', v.get('product.id'), 'events']), stream=True) return dechunk(resp.iter_lines())
class MainPage(BasePage): URL = configuration.get('host') LOGIN_BUTTON = (By.CSS_SELECTOR, "a[class='btn btn-link-dark btn-login']") PROFILE_AVATAR = (By.CSS_SELECTOR, ".profile-nav-avatar") @allure.step("Open login page") def open_login_page(self): self.navigate_to(self.URL) self.get_element(self.LOGIN_BUTTON).click()
def setup_vyper(parser): env_name = os.getenv("APP_ENV_NAME", "LOCAL").lower() config_name = "config.{}".format(env_name) v.bind_args(parser) v.set_env_prefix(v.get("environment_variables_prefix")) v.set_env_key_replacer("-", "_") v.automatic_env() v.add_config_path("config") v.set_config_type("toml") v.set_config_name(config_name) v.read_in_config()
class BasePage: URL = configuration.get('host') def __init__(self, driver: WebDriver) -> None: self._driver = driver def navigate_to(self, url): self._driver.get(url) def get_element(self, locator: tuple, timeout=5) -> WebElement: return WebDriverWait(self._driver, timeout).until( ex_cond.visibility_of_element_located(locator), ' : '.join(locator)) def get_elements(self, locator: tuple, timeout=5) -> WebElement: return WebDriverWait(self._driver, timeout).until( ex_cond.visibility_of_any_elements_located(locator), ' : '.join(locator))
def setup_vyper(parser, overrides): defaults = _get_default_args(parser) actual_overrides = \ {k: val for k, val in overrides.items() if defaults[k] != val} env_name = os.getenv("APP_ENV_NAME", "LOCAL").lower() config_name = "config.{}".format(env_name) _setup_args(parser) _setup_overrides(actual_overrides) v.set_env_prefix(v.get("env_vars_prefix")) v.automatic_env() v.add_config_path("config") v.set_config_type("toml") v.set_config_name(config_name) v.read_in_config()
def setup_vyper(parser: argparse.ArgumentParser, overrides: Dict[str, Any] = None): env_name = os.getenv("APP_ENV_NAME", "LOCAL").lower() config_name = "config.{}".format(env_name) v.bind_args(parser) if overrides: for k, val in overrides.items(): v.set(k, val) v.set_env_prefix(v.get("environment_variables_prefix")) v.set_env_key_replacer("-", "_") v.automatic_env() v.add_config_path("config") v.set_config_type("toml") v.set_config_name(config_name) v.read_in_config()
class TestLogin: username = configuration.get('user').get('username') password = configuration.get('user').get('password') @pytest.fixture() def login_page(self, driver): page = LoginPage(driver) page.open_login_page() return page @pytest.fixture() def login_captcha(self, login_page): login_page.fill_form('wrong', 'wrong') login_page.submit() login_page.submit() assert login_page.get_element(login_page.CAPTCHA_FIELD).is_displayed() return login_page @pytest.mark.parametrize( 'username', [username, username.upper(), f' {username} '], ids=['exact username', 'switched case', 'with white spaces']) def test_valid_credential(self, login_page, username): login_page.fill_form(username=username, password=self.password) avatar = login_page.get_element(LoginPage.PROFILE_AVATAR) assert avatar.is_displayed() @pytest.mark.parametrize( 'password', ['wrong', password.upper(), f' {password} '], ids=['invalid', 'switched case', 'with white spaces']) def test_invalid_password(self, password, login_page): login_page.fill_form(username=self.username, password=password) error = login_page.get_element(login_page.PASSWORD_ERROR) assert error.text == 'Password or email is incorrect.' @pytest.mark.parametrize('password', [password, ''], ids=['password filled', 'password empty']) @pytest.mark.parametrize('username', [username, ''], ids=['username filled', 'username empty']) def test_empty_fields(self, login_page, password, username): login_page.fill_form(username=username, password=password) if not username: assert login_page.get_element( login_page.USERNAME_ERROR).is_displayed() if not password: assert login_page.get_element( login_page.PASSWORD_ERROR).is_displayed() def test_invalid_username(self, login_page, user_credential): login_page.fill_form(username='******', password=self.password) error = login_page.get_element(login_page.USERNAME_ERROR) assert error.text == 'Password or email is incorrect.' def test_refresh_captcha(self, login_captcha): img_before = login_captcha.get_element( login_captcha.CAPTCHA_IMG).get_attribute("src") login_captcha.refresh_captcha() wait_for( login_captcha.get_element(login_captcha.CAPTCHA_IMG).get_attribute( "src") != img_before) assert login_captcha.get_element( login_captcha.CAPTCHA_IMG).get_attribute("src") != img_before def test_wrong_captcha(self, login_captcha): login_captcha.enter_captcha('value') assert login_captcha.get_element( login_captcha.CAPTCHA_ERROR).is_displayed() @pytest.mark.parametrize('social, tittle', [(LoginPage.FACEBOOK_BUTTON, 'Facebook'), (LoginPage.GOOGLE_BUTTON, 'Google')], ids=['Facebook', 'Google']) def test_social_auth(self, login_page, social, tittle): login_page.get_element(social).click() wait_for(len(login_page._driver.window_handles) > 1) login_page._driver.switch_to.window( login_page._driver.window_handles[1]) assert tittle in login_page._driver.title
from kazoo import client from vyper import v client = client.KazooClient() client.start() v.set_config_type("json") v.add_remote_provider("zookeeper", client, "/config.json") v.read_remote_config() print("Hello " + v.get("hello"))
def get_config() -> Config: v.set_config_name("pruner_config") v.add_config_path(".") v.read_in_config() return Config(prune_configs=v.get("pruner"))
from kazoo import client from vyper import v client = client.KazooClient() client.start() v.set_config_type('json') v.add_remote_provider('zookeeper', client, '/config.json') v.read_remote_config() print('Hello ' + v.get('hello'))
def get_domains(): domains_string = v.get("domains") return domains_string.split(',')
def get_credential(): return v.get("cloudflare.apikey"), v.get("cloudflare.email")
def __init__(self, path='latest', access_key: str = None): self.headers = {} self.path = path self.host = config.get('host') self.access_key = access_key or config.get('access_key')