Exemple #1
0
def load_blog_aggregator_feeds():
    feeds_fixture = get_fixture('blog_aggregator_feeds.json')

    for feed_fixture in feeds_fixture:
        feed = Feed(**feed_fixture)

        db.session.add(feed)

    db.session.commit()
Exemple #2
0
def load_blog_aggregator_articles():
    articles_fixture = get_fixture('blog_aggregator_articles.json')

    for article_fixture in articles_fixture:
        article = Article(**article_fixture)

        db.session.add(article)

    db.session.commit()
def test_get_article_details_view_normal_customer(test_client):
    customer, plain_password = create_customer()
    login_customer(test_client, customer.login, plain_password)

    articles_fixture = get_fixture('blog_aggregator_articles.json')

    for article_fixture in articles_fixture:
        response = test_client.get(f"{URL.USERPANEL_ARTICLE_DETAILS}{article_fixture.get('id')}")

        assert b'You do not have access here!' in response.data
def test_get_article_delete_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    articles_fixture = get_fixture('blog_aggregator_articles.json')

    for article_fixture in articles_fixture:
        response = test_client.get(f"{URL.USERPANEL_ARTICLE_DELETE}{article_fixture.get('id')}", follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully delete the article' in response.data
Exemple #5
0
def test_get_mail_details_view_normal_customer(test_client):
    customer, plain_password = create_customer()
    login_customer(test_client, customer.login, plain_password)

    mails_fixture = get_fixture('ncbi_mails.json')

    for mail_fixture in mails_fixture:
        response = test_client.get(
            f"{URL.USERPANEL_MAIL_DETAILS}{mail_fixture.get('id')}")

        assert b'You do not have access here!' in response.data
def test_get_feed_delete_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    feeds_fixture = get_fixture('blog_aggregator_feeds.json')

    for i, feed_fixture in enumerate(feeds_fixture):
        response = test_client.get(f"{URL.USERPANEL_FEED_DELETE}{feed_fixture.get('id')}", follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully delete the feed' in response.data
Exemple #7
0
def test_get_mail_package_details_view_superuser(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    packages_fixture = get_fixture('ncbi_mail_packages.json')

    for package_fixture in packages_fixture:
        response = test_client.get(
            f"{URL.USERPANEL_PACKAGE_DETAILS}{package_fixture.get('id')}")

        assert response.status_code == 200
        assert b'Edit package' in response.data
Exemple #8
0
def test_get_mail_package_csv_export_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    packages_fixture = get_fixture('ncbi_mail_packages.json')

    for i, package_fixture in enumerate(packages_fixture):
        response = test_client.get(
            f"{URL.USERPANEL_PACKAGE_CSV_EXPORT}{package_fixture.get('id')}")

        assert response.status_code == 200
        assert response.mimetype == 'text/csv'
Exemple #9
0
def test_get_mail_details_view_superuser(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    mails_fixture = get_fixture('ncbi_mails.json')

    for mail_fixture in mails_fixture:
        response = test_client.get(
            f"{URL.USERPANEL_MAIL_DETAILS}{mail_fixture.get('id')}")

        assert response.status_code == 200
        assert b'Edit e-mail' in response.data
Exemple #10
0
def load_ncbi_packages():
    packages_fixture = get_fixture('ncbi_mail_packages.json')

    for package_fixture in packages_fixture:
        ncbi_package = NCBIMailPackage(
            name=package_fixture.get('name'),
            was_sent=package_fixture.get('was_sent'),
            comment=package_fixture.get('comment'),
        )

        db.session.add(ncbi_package)

    db.session.commit()
def test_get_article_details_view_superuser(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    articles_fixture = get_fixture('blog_aggregator_articles.json')

    for article_fixture in articles_fixture:
        response = test_client.get(f"{URL.USERPANEL_ARTICLE_DETAILS}{article_fixture.get('id')}")

        assert response.status_code == 200
        assert b'Edit article' in response.data
        assert f"{article_fixture.get('title')}" in response.data.decode()
        assert f"{article_fixture.get('link')}" in response.data.decode()
Exemple #12
0
def test_get_mail_delete_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    mails_fixture = get_fixture('ncbi_mails.json')

    for mail_fixture in mails_fixture:
        response = test_client.get(
            f"{URL.USERPANEL_MAIL_DELETE}{mail_fixture.get('id')}",
            follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully delete the email' in response.data
def test_get_feed_details_view_superuser(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    feeds_fixture = get_fixture('blog_aggregator_feeds.json')

    for feed_fixture in feeds_fixture:
        response = test_client.get(f"{URL.USERPANEL_FEED_DETAILS}{feed_fixture.get('id')}")

        assert response.status_code == 200
        assert b'Edit feed' in response.data
        assert f"{feed_fixture.get('name')}" in response.data.decode()
        assert f"{feed_fixture.get('url')}" in response.data.decode()
Exemple #14
0
def test_get_mail_package_delete_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    packages_fixture = get_fixture('ncbi_mail_packages.json')

    for i, package_fixture in enumerate(packages_fixture):
        response = test_client.get(
            f"{URL.USERPANEL_PACKAGE_DELETE}{package_fixture.get('id')}",
            follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully delete the package' in response.data
Exemple #15
0
def load_ncbi_mails():
    mails_fixture = get_fixture('ncbi_mails.json')

    for mail_fixture in mails_fixture:
        ncbi_mail = NCBIMail(
            publication_id=mail_fixture.get('publication_id'),
            ncbi_publication_url=mail_fixture.get('ncbi_publication_url'),
            email=mail_fixture.get('email'),
            package_id=mail_fixture.get('package_id'),
        )

        db.session.add(ncbi_mail)

    db.session.commit()
Exemple #16
0
def load_pages():
    pages_fixture = get_fixture('pages.json')

    for page_fixture in pages_fixture:
        page = Page(
            name=page_fixture.get('name'),
            is_active=page_fixture.get('is_active'),
            slug=page_fixture.get('slug'),
            text=page_fixture.get('text'),
            desc=page_fixture.get('desc'),
        )

        db.session.add(page)

    db.session.commit()
def test_get_generate_social_post_view_superuser(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    response = test_client.get(URL.USERPANEL_GENERATE_SOCIAL_POST, follow_redirects=True)

    articles_to_publish = Article.query.filter_by(was_published=False).all()

    assert response.status_code == 200
    assert b'Generated social media post' in response.data

    articles_fixture = get_fixture('blog_aggregator_articles.json')
    for article_fixture in articles_fixture:
        assert f"{article_fixture.get('title')}" in response.data.decode()
        assert f"{article_fixture.get('link')}" in response.data.decode()

    assert len(articles_to_publish) == 0
Exemple #18
0
def test_post_mail_package_details_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    packages_fixture = get_fixture('ncbi_mail_packages.json')

    for i, package_fixture in enumerate(packages_fixture):
        data = dict()
        data['name'] = f"Test Package Name {i}"

        response = test_client.post(
            f"{URL.USERPANEL_PACKAGE_DETAILS}{package_fixture.get('id')}",
            data=data,
            follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully edited the package' in response.data
def test_post_article_details_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    articles_fixture = get_fixture('blog_aggregator_articles.json')

    for i, article_fixture in enumerate(articles_fixture):
        data = dict()
        data['title'] = article_fixture.get('title')
        data['pub_date'] = article_fixture.get('pub_date')
        data['desc'] = f"test-publication-desc-{i}"

        response = test_client.post(
            f"{URL.USERPANEL_ARTICLE_DETAILS}{article_fixture.get('id')}", data=data, follow_redirects=True
        )

        assert response.status_code == 200
        assert b'You have successfully edited the article' in response.data
Exemple #20
0
def test_post_mail_details_view(test_client):
    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    mails_fixture = get_fixture('ncbi_mails.json')

    for i, mail_fixture in enumerate(mails_fixture):
        data = dict()
        data['email'] = mail_fixture.get('email')
        data['mail_package'] = mail_fixture.get('package_id')
        data['publication_id'] = f"test-publication-id-{i}"

        response = test_client.post(
            f"{URL.USERPANEL_MAIL_DETAILS}{mail_fixture.get('id')}",
            data=data,
            follow_redirects=True)

        assert response.status_code == 200
        assert b'You have successfully edited the mail' in response.data
def test_post_feed_details_view(mock_get, mock_validate_feed, test_client):
    mock_get.return_value.status_code = 200
    mock_validate_feed.return_value = True, 'ok'

    customer, plain_password = create_superuser_customer()
    login_customer(test_client, customer.login, plain_password)

    feeds_fixture = get_fixture('blog_aggregator_feeds.json')

    for i, feed_fixture in enumerate(feeds_fixture):
        data = dict()
        data['name'] = f"Test Feed Name {i} - changed"

        response = test_client.post(
            f"{URL.USERPANEL_FEED_DETAILS}{feed_fixture.get('id')}", data=data, follow_redirects=True
        )

        assert response.status_code == 200
        assert b'You have successfully edited the feed' in response.data