示例#1
0
def new():
    if request.method == 'POST':
        Topic.create({
            'title': request.form['title'],
            'body': request.form['body']
        })
        return redirect(url_for('topic.index'))
    else:
        return render_template('topics/new.html')
示例#2
0
def test_all(client):
    topic1 = Topic.create({ 'title': 'title1', 'body': 'body1' })
    topic2 = Topic.create({ 'title': 'title2', 'body': 'body2' })
    topics = Topic.all()
    assert len(topics) == 2
    assert Topic.find(topic1.id()).title() == topic1.title()
    assert Topic.find(topic1.id()).body() == topic1.body()
    assert Topic.find(topic2.id()).title() == topic2.title()
    assert Topic.find(topic2.id()).body() == topic2.body()

    topics = Topic.all(limit=1)
    assert len(topics) == 1
示例#3
0
def test_get_topics_index(client):
    expected_title = 'indexindex_title'
    topic = Topic.create({'title': expected_title, 'body': 'a'})
    response = client.get('/topics/')
    assert response.status_code == 200
    actual = response.get_data()
    assert expected_title in actual
示例#4
0
def test_destroy_with_comment(client):
    topic = Topic.create({ 'title': 'title1', 'body': 'body1' })
    comment1 = Comment.create({ 'topic_id': topic.id(), 'body': 'body1' })
    comment2 = Comment.create({ 'topic_id': topic.id(), 'body': 'body2' })
    topic.destroy()
    assert(not Topic.is_exists(topic.id()))
    assert(not Comment.is_exists(comment1.id()))
    assert(not Comment.is_exists(comment2.id()))
示例#5
0
def test_update(client):
    topic = Topic.create({ 'title': 'title2', 'body': 'body2' })
    assert 'title2', topic.title()
    assert 'body2', topic.body()
    topic.update({ 'title': 'title3', 'body': 'body3' })
    assert 'title3', topic.title()
    assert 'body3', topic.body()
    topic = Topic.find(topic.id())
    assert 'title3', topic.title()
    assert 'body3', topic.body()
示例#6
0
def test_get_topics_edit(client):
    title = 'test_get_topics_edit_title'
    body = 'test_get_topics_edit_body'
    topic = Topic.create({'title': title, 'body': body})

    response = client.get('/topics/%s/edit' % topic.id())
    assert response.status_code == 200
    actual = response.get_data()
    assert title in actual
    assert body in actual
示例#7
0
def test_post_topics_edit(client):
    title = 'test_get_topics_edit_title'
    body = 'test_get_topics_edit_body'
    topic = Topic.create({'title': title, 'body': body})
    response = client.post('/topics/%s/edit' % topic.id(),
                           data={
                               'title': 'titletitle',
                               'body': 'bodybody'
                           })
    assert response.status_code == 302

    response = client.get('/topics/%s' % topic.id())
    actual = response.get_data()
    assert 'titletitle' in actual
    assert 'bodybody' in actual
示例#8
0
def test_destroy(client):
    topic = Topic.create({ 'title': 'title2', 'body': 'body2' })
    topic.destroy()
    assert(not Topic.is_exists(topic.id()))
示例#9
0
def test_find(client):
    topic = Topic.create({ 'title': 'title2', 'body': 'body2' })
    topic = Topic.find(topic.id())
    assert 'title2', topic.title()
    assert 'body2', topic.body()
    assert type(topic) == Topic
示例#10
0
def test_destroy(client):
    topic = Topic.create({'title': 'title1', 'body': 'body1'})
    comment = Comment.create({'topic_id': topic.id(), 'body': 'body1'})
    comment.destroy()
    assert (Topic.is_exists(topic.id()))
    assert (not Comment.is_exists(comment.id()))
示例#11
0
def test_post_topics_delete(client):
    topic = Topic.create({'title': 'title', 'body': 'body'})
    response = client.post('/topics/%s/delete' % topic.id(),
                           data={'id': topic.id()})
    assert response.status_code == 302
    assert (not Topic.is_exists(topic.id()))