Ejemplo n.º 1
0
def go_to_endpoint(session: Session, endpoint: str) -> Response:
    """Go to Company's FAS profile page using explicit FAS endpoint.

    :param endpoint: FAS endpoint that leads directly to Company's profile page
    """
    fas_url = URLs.FAS_LANDING.absolute
    profile_url = urljoin(fas_url, endpoint)
    return make_request(Method.GET, profile_url, session=session)
def go_to(session: Session) -> Response:
    """Go to "Edit Company's Details" page.

    This requires:
     * Supplier to be logged in
    """
    headers = {"Referer": URL}
    return make_request(Method.GET, URL, session=session, headers=headers)
def add_collaborator(session: Session, email: str, role: str) -> Response:
    data = {"collaborator_email": email, "role": role.upper()}
    headers = {"Referer": URL}
    return make_request(Method.POST,
                        URL,
                        session=session,
                        data=data,
                        headers=headers)
def remove(session: Session, token: str, sso_ids: List[str]) -> Response:
    data = {"csrfmiddlewaretoken": token, "sso_ids": sso_ids}
    headers = {"Referer": URL}
    return make_request(Method.POST,
                        URL,
                        session=session,
                        data=data,
                        headers=headers)
def submit(session: Session, email: str) -> Response:
    data = {"collaborator_email": email}
    headers = {"Referer": URL}
    return make_request(Method.POST,
                        URL,
                        session=session,
                        data=data,
                        headers=headers)
def submit(session: Session, token: str, password: str) -> Response:
    data = {
        "csrfmiddlewaretoken": token,
        "password-password": password,
        "transfer_account_wizard_view-current_step": "password",
    }
    headers = {"Referer": URL}
    return make_request(Method.POST,
                        URL,
                        session=session,
                        data=data,
                        headers=headers)
Ejemplo n.º 7
0
def go_to(session: Session) -> Response:
    headers = {"Referer": URLs.PROFILE_ADMIN.absolute}
    return make_request(Method.GET, URL, session=session, headers=headers)
def submit(
    actor: Actor,
    company: Company,
    *,
    change_name=True,
    change_website=True,
    change_size=True,
    change_sector=True,
    specific_name=None,
    specific_website=None,
    specific_size=None,
    specific_sector=None,
) -> (Response, Company):
    """Update basic Company's details: trading name, website, keywords & size.

    Will use random details or specific values if they are provided.
    """
    session = actor.session

    if change_name:
        if specific_name == "empty string":
            new_name = ""
        else:
            new_name = specific_name or f"{sentence()} AUTOTESTS"
    else:
        new_name = company.title

    if change_website:
        if specific_website == "empty string":
            new_website = ""
        else:
            new_website = specific_website or (
                f"https://{rare_word()}.{rare_word()}/")
    else:
        new_website = company.website

    if change_size:
        if specific_size == "unset":
            new_size = ""
        else:
            new_size = specific_size or random.choice(NO_OF_EMPLOYEES)
    else:
        new_size = company.no_employees

    if change_sector:
        if specific_sector == "unset":
            new_sector = ""
        else:
            random_sector, _ = random.choice(choices.INDUSTRIES)
            new_sector = specific_sector or random_sector
    else:
        new_sector = company.sector

    headers = {"Referer": URL}
    data = {
        "name": new_name,
        "website": new_website,
        "employees": new_size,
        "sectors": new_sector,
    }

    new_details = Company(title=new_name,
                          website=new_website,
                          sector=new_sector,
                          no_employees=new_size)

    response = make_request(Method.POST,
                            URL,
                            session=session,
                            headers=headers,
                            data=data)

    return response, new_details
Ejemplo n.º 9
0
def go_to(session: Session) -> Response:
    return make_request(Method.GET, URL, session=session)
Ejemplo n.º 10
0
def go_to(session: Session, company_number: str) -> Response:
    """Go to Company's FAS profile page using company's number."""
    full_url = URL.format(ch_number=company_number)
    headers = {"Referer": URLs.PROFILE_BUSINESS_PROFILE.absolute}
    return make_request(Method.GET, full_url, session=session, headers=headers)
def go_to(session: Session) -> Response:
    headers = {"Referer": URL}
    response = make_request(Method.GET, URL, session=session, headers=headers)

    should_be_here(response)
    return response