def test_select_last(app, site_updates):
    user, updates = site_updates
    most_recent = updates[-1]

    selected = siteupdate.select_last()
    assert 'display_url' in selected.pop('user_media')['avatar'][0]
    assert selected == {
        'updateid': most_recent.updateid,
        'userid': user,
        'username': '******',
        'title': most_recent.title,
        'content': most_recent.content,
        'unixtime': most_recent.unixtime.timestamp + UNIXTIME_OFFSET,
    }
def test_select_last(site_updates):
    user, updates = site_updates
    most_recent = updates[-1]

    selected = siteupdate.select_last()
    assert 'display_url' in selected.pop('user_media')['avatar'][0]
    assert selected == {
        'updateid': most_recent.updateid,
        'userid': user,
        'username': '******',
        'title': most_recent.title,
        'content': most_recent.content,
        'unixtime': most_recent.unixtime.timestamp + UNIXTIME_OFFSET,
    }
Exemple #3
0
def template_fields(userid):
    config = d.get_config(userid)
    rating = d.get_rating(userid)
    submissions = list(filter_submissions(userid, recent_submissions()))
    ret = partition_submissions(submissions)

    return ret + [
        # Recent site news update
        siteupdate.select_last(),
        # Recent critique submissions
        submission.select_list(userid, rating, 4, options=["critique"], config=config),
        # Currently streaming users
        profile.select_streaming(userid, rating, 4),
        # Recently popular submissions
        list(itertools.islice(filter_submissions(userid, submission.select_recently_popular(), incidence_limit=1), 11)),
    ]
Exemple #4
0
def test_edit_notifications(app, monkeypatch):
    admin_user = db_utils.create_user()
    normal_user = db_utils.create_user()
    admin_cookie = db_utils.create_session(admin_user)
    monkeypatch.setattr(staff, 'ADMINS', frozenset([admin_user]))

    resp = app.post('/admincontrol/siteupdate',
                    _FORM,
                    headers={
                        'Cookie': admin_cookie
                    }).follow()
    assert resp.html.find(None, 'content').h3.string == _FORM['title']

    normal_cookie = db_utils.create_session(normal_user)
    resp = app.get('/messages/notifications',
                   headers={'Cookie': normal_cookie})
    assert list(
        resp.html.find(id='header-messages').find(
            title='Notifications').stripped_strings)[1] == '1'
    assert resp.html.find(id='site_updates').find(
        None, 'item').a.string == _FORM['title']

    resp = app.post(
        '/site-updates/%d' % (siteupdate.select_last()['updateid'], ),
        dict(_FORM, title=u'New title'),
        headers={
            'Cookie': admin_cookie
        },
    ).follow()
    assert resp.html.find(None, 'content').h3.string == u'New title'

    resp = app.get('/messages/notifications',
                   headers={'Cookie': normal_cookie})
    assert list(
        resp.html.find(id='header-messages').find(
            title='Notifications').stripped_strings)[1] == '1'
    assert resp.html.find(id='site_updates').find(
        None, 'item').a.string == u'New title'
def test_edit_notifications(app, monkeypatch):
    admin_user = db_utils.create_user()
    normal_user = db_utils.create_user()
    admin_cookie = db_utils.create_session(admin_user)
    monkeypatch.setattr(staff, 'ADMINS', frozenset([admin_user]))

    resp = app.post('/admincontrol/siteupdate', _FORM, headers={'Cookie': admin_cookie}).follow()
    assert resp.html.find(None, 'content').h3.string == _FORM['title']

    normal_cookie = db_utils.create_session(normal_user)
    resp = app.get('/messages/notifications', headers={'Cookie': normal_cookie})
    assert list(resp.html.find(id='header-messages').find(title='Notifications').stripped_strings)[1] == '1'
    assert resp.html.find(id='site_updates').find(None, 'item').a.string == _FORM['title']

    resp = app.post(
        '/site-updates/%d' % (siteupdate.select_last()['updateid'],),
        dict(_FORM, title=u'New title'),
        headers={'Cookie': admin_cookie},
    ).follow()
    assert resp.html.find(None, 'content').h3.string == u'New title'

    resp = app.get('/messages/notifications', headers={'Cookie': normal_cookie})
    assert list(resp.html.find(id='header-messages').find(title='Notifications').stripped_strings)[1] == '1'
    assert resp.html.find(id='site_updates').find(None, 'item').a.string == u'New title'
def test_select_last_empty(app):
    assert siteupdate.select_last() is None
def test_select_last_empty(app):
    assert siteupdate.select_last() is None