Exemplo n.º 1
0
def test_newsletter_listing_returns_only_jg_if_enough(db_connection):
    job1 = create_job('1', source='juniorguru')
    job2 = create_job('2', source='moo')
    job3 = create_job('3', source='juniorguru')
    job4 = create_job('4', source='juniorguru')

    assert list(Job.newsletter_listing(3)) == [job1, job3, job4]
Exemplo n.º 2
0
def test_newsletter_listing_backfills_up_to_min_count(db_connection):
    job1 = create_job('1', source='moo', sort_rank=5)
    job2 = create_job('2', source='foo', sort_rank=1)  # noqa
    job3 = create_job('3', source='bar', sort_rank=10)
    job4 = create_job('4', source='juniorguru')

    assert list(Job.newsletter_listing(3)) == [job4, job3, job1]
Exemplo n.º 3
0
def test_newsletter_listing_returns_only_not_expired_jobs(db_connection):
    job1 = create_job('1', expires_at=None)
    job2 = create_job('2', expires_at=date(1987, 8, 30))
    job3 = create_job('3', expires_at=date.today())
    job4 = create_job('4', expires_at=date.today() + timedelta(days=2))

    assert set(Job.newsletter_listing(5)) == {job1, job4}
Exemplo n.º 4
0
def test_newsletter_listing_returns_only_juniorguru_if_enough(db_connection):
    job1 = create_job('1', source='juniorguru', sort_rank=30)
    job2 = create_job('2', source='moo')  # noqa
    job3 = create_job('3', source='juniorguru', sort_rank=20)
    job4 = create_job('4', source='juniorguru', sort_rank=10)
    job5 = create_job('5', source='juniorguru', sort_rank=5)

    assert list(Job.newsletter_listing(3)) == [job1, job3, job4, job5]
Exemplo n.º 5
0
def test_newsletter_listing_backfills_with_other_sources(db_connection):
    job1 = create_job('1', source='moo', sort_rank=20)
    job2 = create_job('2', source='foo', sort_rank=10)
    job3 = create_job('3', source='bar', sort_rank=40)
    job4 = create_job('4', source='juniorguru', sort_rank=30)
    job5 = create_job('5', source='juniorguru', sort_rank=20)

    assert list(Job.newsletter_listing(5)) == [job4, job5, job3, job1, job2]
Exemplo n.º 6
0
def test_newsletter_listing_sorts_by_timestamp_asc(db):
    job1 = create_job('1', timestamp=datetime(2010, 7, 6, 20, 24, 3))
    job2 = create_job('2', timestamp=datetime(2019, 7, 6, 20, 24, 3))
    job3 = create_job('3', timestamp=datetime(2014, 7, 6, 20, 24, 3))

    assert list(Job.newsletter_listing()) == [job1, job3, job2]
Exemplo n.º 7
0
def test_newsletter_listing_returns_only_jobs_not_sent(db):
    job1 = create_job('1', is_sent=True)
    job2 = create_job('2', is_sent=False)
    job3 = create_job('3', is_sent=True)

    assert set(Job.newsletter_listing()) == {job2}
Exemplo n.º 8
0
def test_newsletter_listing_returns_only_approved_jobs(db):
    job1 = create_job('1', is_approved=True)
    job2 = create_job('2', is_approved=False)
    job3 = create_job('3', is_approved=True)

    assert set(Job.newsletter_listing()) == {job1, job3}
Exemplo n.º 9
0
def admin_newsletter():
    with db:
        jobs = list(Job.newsletter_listing(10))
    return render_template('admin_newsletter.html', jobs=jobs)
Exemplo n.º 10
0
def test_newsletter_listing_sorts_by_sort_rank_desc(db_connection, source):
    job1 = create_job('1', source=source, sort_rank=30)
    job2 = create_job('2', source=source, sort_rank=10)
    job3 = create_job('3', source=source, sort_rank=20)

    assert list(Job.newsletter_listing(5)) == [job1, job3, job2]
Exemplo n.º 11
0
def test_newsletter_listing_sorts_by_posted_at_asc(db_connection):
    job1 = create_job('1', posted_at=datetime(2010, 7, 6, 20, 24, 3))
    job2 = create_job('2', posted_at=datetime(2019, 7, 6, 20, 24, 3))
    job3 = create_job('3', posted_at=datetime(2014, 7, 6, 20, 24, 3))

    assert list(Job.newsletter_listing()) == [job1, job3, job2]
Exemplo n.º 12
0
def test_newsletter_listing_returns_only_jobs_not_sent(db_connection):
    job1 = create_job('1', newsletter_at=date.today() - timedelta(days=2))
    job2 = create_job('2', newsletter_at=None)
    job3 = create_job('3', newsletter_at=date.today() - timedelta(days=2))

    assert set(Job.newsletter_listing(5)) == {job2}
Exemplo n.º 13
0
def test_newsletter_listing_returns_only_approved_jobs(db_connection):
    job1 = create_job('1', approved_at=date(1987, 8, 30))
    job2 = create_job('2', approved_at=None)
    job3 = create_job('3', approved_at=date(1987, 8, 30))

    assert set(Job.newsletter_listing(5)) == {job1, job3}