Exemplo n.º 1
0
def update_article(request, id):
    """Enables Article update"""

    article = Article.get_by_id(int(id))

    if article:
        if request.method == 'POST':
            form = ArticleForm(request.POST)

            if form.is_valid():
                article.title = form.cleaned_data['title']
                article.content = form.cleaned_data['content']
                article.put()
                messages.add_message(request,
                                     messages.INFO,
                                     u'Article %s created'
                                     % form.cleaned_data['title'])

                time.sleep(1)

                return redirect('home')

        else:

            form = ArticleForm({'title': article.title,
                                'content': article.content})

        return render(request, 'article/create.html', locals())
    else:
        messages.add_message(request,
                             messages.ERROR,
                             u'Article not found')
        return redirect('home')
Exemplo n.º 2
0
def test_create_article():
    cmd = CreateArticleCommand(author='*****@*****.**',
                               title='New Article',
                               content='Awsome article')
    article = cmd.execute()
    db_article = Article.get_by_id(article.id)

    assert db_article.id == article.id
    assert db_article.author == article.author
    assert db_article.title == article.title
    assert db_article.content == article.content
Exemplo n.º 3
0
def delete_article(request, id):
    """Enables Article deletion"""

    article = Article.get_by_id(int(id))
    if article:
        messages.add_message(request,
                             messages.INFO,
                             u'Article %s deleted' % article.title)
        article.delete()
        time.sleep(1)
    else:
        messages.add_message(request, messages.ERROR, u'Article not found')
    return redirect('home')
Exemplo n.º 4
0
def test_create_article():
    """
    GIVEN CreateArticleCommand with a valid properties author, title and content
    WHEN the execute method is called
    THEN a new Article must exist in the database with the same attributes
    """
    cmd = CreateArticleCommand(author='*****@*****.**',
                               title='New Article',
                               content='Super awesome article')

    article = cmd.execute()

    db_article = Article.get_by_id(article.id)

    assert db_article.id == article.id
    assert db_article.author == article.author
    assert db_article.title == article.title
    assert db_article.content == article.content
Exemplo n.º 5
0
    def execute(self) -> Article:
        article = Article.get_by_id(self.id)

        return article