Exemplo n.º 1
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.start_page: StartPage = request.getfixturevalue('start_page')
        self.registration_page: RegistrationPage = request.getfixturevalue('registration_page')
        self.cabinet_page: CabinetPage = request.getfixturevalue('cabinet_page')
 def setup(self, driver, config, request: FixtureRequest):
     self.driver = driver
     self.config = config
     self.base_page: BasePage = request.getfixturevalue('base_page')
     self.main_page: MainPage = request.getfixturevalue('main_page')
     self.segment_page: SegmentPage = request.getfixturevalue(
         'segment_page')
Exemplo n.º 3
0
 def setup(self, driver, config, request: FixtureRequest):
     self.driver = driver
     self.config = config
     self.base_page: BasePage = request.getfixturevalue('base_page')
     self.login_page: LoginPage = request.getfixturevalue('login_page')
     self.reg_page: RegPage = request.getfixturevalue('reg_page')
     self.main_page: MainPage = request.getfixturevalue('main_page')
Exemplo n.º 4
0
def spark_session(request: FixtureRequest) -> SparkSession:
    # make sure env variables are set correctly
    if "SPARK_HOME" not in os.environ:
        os.environ["SPARK_HOME"] = "/usr/local/opt/spark"

    clean_spark_dir()
    master = "local[2]"

    session = (
        SparkSession.builder.appName(
            f"pytest-pyspark-local-testing-{get_random_string(4)}"
        )
        .master(master)
        .config("spark.ui.showConsoleProgress", "false")
        .config("spark.sql.shuffle.partitions", "2")
        .config("spark.default.parallelism", "4")
        .config("spark.driver.bindAddress", "127.0.0.1")
        .config("spark.sql.broadcastTimeout", "2400")
        .enableHiveSupport()
        .getOrCreate()
    )

    request.addfinalizer(lambda: clean_close(session))
    quiet_py4j()
    return session
Exemplo n.º 5
0
def spark_session(request: FixtureRequest) -> SparkSession:
    # make sure env variables are set correctly
    if 'SPARK_HOME' not in os.environ:
        os.environ['SPARK_HOME'] = '/usr/local/opt/spark'

    clean_spark_dir()

    master = "local[2]"
    # master: str = "spark://localhost:7077"
    if not path.exists("/Applications/Docker.app"):
        master = "local[2]"
        print(f"++++++ Running on local spark: {master} ++++")
    else:
        print(f"++++++ Running on docker spark: {master} ++++")

    session = SparkSession.builder.appName(f"pytest-pyspark-local-testing-{get_random_string(4)}"). \
        master(master). \
        config("spark.ui.showConsoleProgress", "false"). \
        config("spark.sql.shuffle.partitions", "2"). \
        config("spark.default.parallelism", "4"). \
        config("spark.sql.broadcastTimeout", "2400"). \
        enableHiveSupport(). \
        getOrCreate()

    request.addfinalizer(lambda: clean_close(session))
    quiet_py4j()
    return session
Exemplo n.º 6
0
def database(app: Flask, request: FixtureRequest) -> SQLAlchemy:
    if os.path.exists(TEST_DATABASE_PATH):
        os.unlink(TEST_DATABASE_PATH)

    db.app = app
    db.create_all()

    # Bypass pysqlite's broken transactions (see https://bit.ly/2DKiixa).
    # pylint:disable=unused-argument
    # pylint:disable=unused-variable
    @event.listens_for(db.engine, 'connect')
    def do_connect(connection: Connection, *args) -> None:
        connection.isolation_level = None

    # pylint:disable=unused-variable
    @event.listens_for(db.engine, 'begin')
    def do_begin(connection: Connection) -> None:
        connection.execute('BEGIN')

    def teardown() -> None:
        db.drop_all()
        os.unlink(TEST_DATABASE_PATH)

    request.addfinalizer(teardown)
    return db
 def setup(self, driver, config, request: FixtureRequest):
     self.driver = driver
     self.config = config
     self.basepage: BasePage = request.getfixturevalue('base_page')
     self.homepage: HomePage = request.getfixturevalue('home_page')
     self.segmentpage: SegmentPage = request.getfixturevalue('segment_page')
     self.createcompanypage: CreateCompanyPage = request.getfixturevalue('create_company_page')
Exemplo n.º 8
0
def initialize_tests(request: FixtureRequest) -> None:
    initializer(
        ["eventual_tortoise.relation"],
        db_url="sqlite://:memory:",
        app_label="default",
    )
    request.addfinalizer(finalizer)
Exemplo n.º 9
0
def never_sleep(request: FixtureRequest) -> None:
    patcher = mock.patch("asyncio.sleep", _nosleep)
    patcher.start()

    def tearDown() -> None:
        patcher.stop()

    request.addfinalizer(tearDown)
Exemplo n.º 10
0
def stop_std_logging(request: FixtureRequest, capfd: CaptureFixture) -> None:
    patcher = mock.patch("bandersnatch.log.setup_logging")
    patcher.start()

    def tearDown() -> None:
        patcher.stop()

    request.addfinalizer(tearDown)
Exemplo n.º 11
0
    def setup(self, driver, request: FixtureRequest):
        self.driver = driver

        self.auth_page: AuthPage = request.getfixturevalue('auth_page')
        self.company_page: CompanyPage = request.getfixturevalue(
            'company_page')
        self.segment_page: SegmentPage = request.getfixturevalue(
            'segment_page')
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.authorization_page: AuthorizationPage = request.getfixturevalue(
            'authorization_page')(login="******",
                                  passwd="Barsa2016")
Exemplo n.º 13
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.main_page = request.getfixturevalue('main_page')
        self.dashboard = request.getfixturevalue('dashboard_page')
        self.campaign = request.getfixturevalue('campaign_page')
        self.audience = request.getfixturevalue('audience_page')
    def setup(self,driver,config,request:FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.cabinet_page: CabinetPage = request.getfixturevalue('cabinet_page')
        self.audience_page : AudiencePage = request.getfixturevalue('audience_page')
        self.campaign_page : CampaignPage = request.getfixturevalue('campaign_page')
Exemplo n.º 15
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.main_page: MainPage = request.getfixturevalue('main_page')
        self.account_page: AccountPage = request.getfixturevalue(
            'account_page')(email="*****@*****.**", password="******")
Exemplo n.º 16
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.main_page: MainPage = request.getfixturevalue('main_page')
        self.search_page: SearchPage = request.getfixturevalue('search_page')
        self.euro_python_events_page: EuroPythonEventsPage = request.getfixturevalue('euro_python_events_page')
Exemplo n.º 17
0
def selenium(request: FixtureRequest) -> webdriver.Remote:
    if request.config.getoption('--local-chrome'):
        driver = initialize_local_chrome()
        request.addfinalizer(lambda: deinitialize_selenium(driver))
        return driver
    driver = request.getfixturevalue('selenium')  # type: webdriver.Remote
    yield driver
    # https://github.com/SeleniumHQ/docker-selenium/issues/87#issuecomment-286231268
    driver.close()
Exemplo n.º 18
0
def selenium(request: FixtureRequest) -> webdriver.Remote:
    if request.config.getoption('--local-chrome'):
        driver = initialize_local_chrome()
        request.addfinalizer(lambda: deinitialize_selenium(driver))
        return driver
    driver = request.getfixturevalue('selenium')  # type: webdriver.Remote
    yield driver
    # https://github.com/SeleniumHQ/docker-selenium/issues/87#issuecomment-286231268
    driver.close()
Exemplo n.º 19
0
def job_folder(request: FixtureRequest) -> None:
    """Create job folder and add finalizer to remove the folders after running the test."""
    if not os.path.isdir(settings.JOB_FOLDER):
        os.makedirs(settings.JOB_FOLDER)

    def fin() -> None:
        shutil.rmtree(settings.JOB_FOLDER)

    request.addfinalizer(fin)
Exemplo n.º 20
0
def logging_mock(request: FixtureRequest) -> mock.MagicMock:
    patcher = mock.patch("logging.config.fileConfig")
    logger: mock.MagicMock = patcher.start()

    def tearDown() -> None:
        patcher.stop()

    request.addfinalizer(tearDown)
    return logger
Exemplo n.º 21
0
def mirror_mock(request: FixtureRequest) -> mock.MagicMock:
    patcher = mock.patch("bandersnatch.mirror.BandersnatchMirror")
    mirror: mock.MagicMock = patcher.start()

    def tearDown() -> None:
        patcher.stop()

    request.addfinalizer(tearDown)
    return mirror
Exemplo n.º 22
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.modal_login: ModalLogin = request.getfixturevalue('modal_login')
        self.main_page: MainPage = request.getfixturevalue('main_page')
        self.create_campaign_page: CreateCampaignPage = request.getfixturevalue(
            'create_campaign_page')
Exemplo n.º 23
0
def dag_folder(request: FixtureRequest) -> None:
    """Create dag folder and add finalizer to remove it again after running the test."""
    folder = get_dags_folder()
    if not os.path.isdir(folder):
        os.mkdir(folder)

    def fin() -> None:
        shutil.rmtree(folder)

    request.addfinalizer(fin)
Exemplo n.º 24
0
def sync_result(request: FixtureRequest) -> None:
    """Create sync-results and add finalizer to remove the folders after running the test."""
    # For sync job test
    if not os.path.isdir(settings.SYNC_RESULTS_FOLDER):
        os.makedirs(settings.SYNC_RESULTS_FOLDER)

    def fin() -> None:
        shutil.rmtree(settings.SYNC_RESULTS_FOLDER)

    request.addfinalizer(fin)
Exemplo n.º 25
0
def head_uc(request: FixtureRequest):
    request.instance.driver = uc.Chrome()

    def teardown():
        request.instance.driver.save_screenshot(FAILED_SCREENSHOT_NAME)
        request.instance.driver.quit()

    request.addfinalizer(teardown)

    return request.instance.driver
Exemplo n.º 26
0
    def fs(self, request: FixtureRequest,
           new_fs: "TestBuildHashEntryPath.FS") -> "TestBuildHashEntryPath.FS":
        new_fs.prev_dir = os.getcwd()

        def pop_lvl1():
            os.chdir(new_fs.prev_dir)

        os.chdir(new_fs.level1.realpath())
        request.addfinalizer(pop_lvl1)

        return new_fs
Exemplo n.º 27
0
def start_server_process(request: FixtureRequest):

    proc = Process(target=start_app)
    proc.daemon = True
    proc.start()
    time.sleep(2)

    def fin():
        proc.terminate()

    request.addfinalizer(fin)
Exemplo n.º 28
0
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.main_page: MainPage = request.getfixturevalue('main_page')
        self.cabinet_page: CabinetPage = request.getfixturevalue(
            'cabinet_page')
        self.campaign_page: CampaignPage = request.getfixturevalue(
            'campaign_page')
        self.segment_page: SegmentPage = request.getfixturevalue(
            'segment_page')
Exemplo n.º 29
0
    def _setup_fixtures(self):
        def func():
            pass

        self.funcargs = {}
        fm = self.session._fixturemanager
        self._fixtureinfo = fm.getfixtureinfo(node=self, func=func,
                                              cls=None, funcargs=False)
        fixture_request = FixtureRequest(self)
        fixture_request._fillfixtures()
        return fixture_request
Exemplo n.º 30
0
def quilc(request: FixtureRequest) -> None:
    dock = docker.from_env()
    container = dock.containers.run(
        image="rigetti/quilc",
        command="-S",
        detach=True,
        ports={5555: 5555},
        remove=True,
    )
    request.addfinalizer(container.stop)
    return None
    def setup(self, driver, config, request: FixtureRequest):
        self.driver = driver
        self.config = config

        self.base_page: BasePage = request.getfixturevalue('base_page')
        self.login_page: LoginPage = request.getfixturevalue('login_page')
        self.creator_page: CreatingCampaign = request.getfixturevalue(
            'creator_page')
        self.newsegment_page: NewSegment = request.getfixturevalue(
            'segment_page_new')
        self.segment_page: SegmentPage = request.getfixturevalue(
            'segment_page_table')
Exemplo n.º 32
0
def _setup_fixtures(doctest_item):
    """
    Used by DoctestTextfile and DoctestItem to setup fixture information.
    """
    def func():
        pass

    doctest_item.funcargs = {}
    fm = doctest_item.session._fixturemanager
    doctest_item._fixtureinfo = fm.getfixtureinfo(node=doctest_item, func=func,
                                                  cls=None, funcargs=False)
    fixture_request = FixtureRequest(doctest_item)
    fixture_request._fillfixtures()
    return fixture_request