Пример #1
0
def test_create_settings(salary_test_client: TestClient,
                         salary_session: Session, salary_user: User) -> None:
    category_id = conftest.CATEGORY_ID
    assert utils.get_settings(salary_session, salary_user.id,
                              category_id) is None
    data = {
        'category_id': category_id,
        'wage': utils.DEFAULT_SETTINGS.wage,
        'off_day': utils.DEFAULT_SETTINGS.off_day,
        'holiday_category_id': utils.DEFAULT_SETTINGS.holiday_category_id,
        'regular_hour_basis': utils.DEFAULT_SETTINGS.regular_hour_basis,
        'night_hour_basis': utils.DEFAULT_SETTINGS.night_hour_basis,
        'night_start': utils.DEFAULT_SETTINGS.night_start,
        'night_end': utils.DEFAULT_SETTINGS.night_end,
        'night_min_len': utils.DEFAULT_SETTINGS.night_min_len,
        'first_overtime_amount': utils.DEFAULT_SETTINGS.first_overtime_amount,
        'first_overtime_pay': utils.DEFAULT_SETTINGS.first_overtime_pay,
        'second_overtime_pay': utils.DEFAULT_SETTINGS.second_overtime_pay,
        'week_working_hours': utils.DEFAULT_SETTINGS.week_working_hours,
        'daily_transport': utils.DEFAULT_SETTINGS.daily_transport,
    }
    response = salary_test_client.post(
        conftest.ROUTES['new'], data=data, allow_redirects=True)
    assert response.ok
    assert conftest.MESSAGES['view_salary'] in response.text
    settings = utils.get_settings(salary_session, salary_user.id, category_id)
    assert settings
    delete_instance(salary_session, settings)
Пример #2
0
def salary_user(salary_session: Session):
    test_user = create_model(
        salary_session, User,
        username='******',
        password='******',
        email='*****@*****.**',
    )
    yield test_user
    delete_instance(salary_session, test_user)
Пример #3
0
def sender(session: Session) -> Generator[User, None, None]:
    mock_user = create_model(
        session, User,
        username='******',
        password='******',
        email='*****@*****.**',
        language_id=1,
    )
    yield mock_user
    delete_instance(session, mock_user)
Пример #4
0
def comment(session: Session, event: Event, user: User) -> Iterator[Comment]:
    data = {
        'user': user,
        'event': event,
        'content': 'test comment',
        'time': datetime(2021, 1, 1, 0, 1),
    }
    create_model(session, Comment, **data)
    comment = session.query(Comment).first()
    yield comment
    delete_instance(session, comment)
Пример #5
0
def add_quote(session: Session, id_quote: int, text: str,
              author: str) -> Quote:
    quote = create_model(
        session,
        Quote,
        id=id_quote,
        text=text,
        author=author,
    )
    yield quote
    delete_instance(session, quote)
Пример #6
0
def bad_user(session: Session) -> User:
    test_user = create_model(
        session,
        User,
        username='******',
        password='******',
        email='test.email#gmail.com',
        language_id=1,
    )
    yield test_user
    delete_instance(session, test_user)
Пример #7
0
def test_add_comment(
    event_test_client: TestClient,
    session: Session,
    event: Event,
) -> None:
    assert session.query(Comment).first() is None
    content = "test comment"
    path = evt.router.url_path_for("add_comment", event_id=event.id)
    data = {"comment": content}
    response = event_test_client.post(path, data=data, allow_redirects=True)
    assert response.ok
    assert content in response.text
    comment = session.query(Comment).first()
    assert comment
    delete_instance(session, comment)
Пример #8
0
def delete_comment(session: Session, comment_id: int) -> bool:
    """Deletes a comment instance based on `comment_id`. Returns True if
    successful, False otherwise.

    Args:
        session (Session): DB session.
        comment_id (int): ID of comment instance to delete.

    Returns:
        bool: True if successful, False otherwise.
    """
    comment = session.query(Comment).filter_by(id=comment_id).first()
    if comment:
        utils.delete_instance(session, comment)
        return True
    return False
Пример #9
0
def wage(salary_session: Session,
         salary_user: User) -> Iterator[SalarySettings]:
    wage = create_model(
        salary_session,
        SalarySettings,
        user_id=salary_user.id,
        category_id=CATEGORY_ID,
        wage=30,
        off_day=config.SATURDAY,
        holiday_category_id=config.ISRAELI_JEWISH,
        regular_hour_basis=config.REGULAR_HOUR_BASIS,
        night_hour_basis=config.NIGHT_HOUR_BASIS,
        night_start=config.NIGHT_START,
        night_end=config.NIGHT_END,
        night_min_len=config.NIGHT_MIN_LEN,
        first_overtime_amount=config.FIRST_OVERTIME_AMOUNT,
        first_overtime_pay=config.FIRST_OVERTIME_PAY,
        second_overtime_pay=config.SECOND_OVERTIME_PAY,
        week_working_hours=config.WEEK_WORKING_HOURS,
        daily_transport=config.STANDARD_TRANSPORT,
    )
    yield wage
    delete_instance(salary_session, wage)
Пример #10
0
def invitation(
        event: Event, user: User, session: Session
) -> Generator[Invitation, None, None]:
    """Returns an Invitation object after being created in the database.

    Args:
        event: An Event instance.
        user: A user instance.
        session: A database connection.

    Returns:
        An Invitation object.
    """
    invitation = create_model(
        session, Invitation,
        creation=datetime.now(),
        recipient=user,
        event=event,
        event_id=event.id,
        recipient_id=user.id,
    )
    yield invitation
    delete_instance(session, invitation)
Пример #11
0
def add_joke(session: Session, id_joke: int, text: str) -> Joke:
    joke = create_model(session, Joke, id=id_joke, text=text)
    yield joke
    delete_instance(session, joke)
Пример #12
0
def test_create_comment(session: Session, event: Event, user: User) -> None:
    assert session.query(Comment).first() is None
    cmt.create_comment(session, event, 'test content')
    comment = session.query(Comment).first()
    assert comment
    delete_instance(session, comment)
Пример #13
0
 def test_delete_instance(self, session: Session, user: User):
     assert session.query(User).first()
     utils.delete_instance(session, user)
     assert session.query(User).first() is None