Add Articles

mix phx.gen.live Articles Article articles title:string\                                                            /Crucial/git/phoenix-liveview-book
  content:text url:string language:string\
  date:utc_datetime author_id:references:authors
This commit is contained in:
Thelonius Kort
2022-12-26 18:02:29 +01:00
parent 005a9d9337
commit f7f1e1a284
13 changed files with 582 additions and 0 deletions

View File

@ -0,0 +1,67 @@
defmodule Outlook.ArticlesTest do
use Outlook.DataCase
alias Outlook.Articles
describe "articles" do
alias Outlook.Articles.Article
import Outlook.ArticlesFixtures
@invalid_attrs %{content: nil, date: nil, language: nil, title: nil, url: nil}
test "list_articles/0 returns all articles" do
article = article_fixture()
assert Articles.list_articles() == [article]
end
test "get_article!/1 returns the article with given id" do
article = article_fixture()
assert Articles.get_article!(article.id) == article
end
test "create_article/1 with valid data creates a article" do
valid_attrs = %{content: "some content", date: ~U[2022-12-25 16:16:00Z], language: "some language", title: "some title", url: "some url"}
assert {:ok, %Article{} = article} = Articles.create_article(valid_attrs)
assert article.content == "some content"
assert article.date == ~U[2022-12-25 16:16:00Z]
assert article.language == "some language"
assert article.title == "some title"
assert article.url == "some url"
end
test "create_article/1 with invalid data returns error changeset" do
assert {:error, %Ecto.Changeset{}} = Articles.create_article(@invalid_attrs)
end
test "update_article/2 with valid data updates the article" do
article = article_fixture()
update_attrs = %{content: "some updated content", date: ~U[2022-12-26 16:16:00Z], language: "some updated language", title: "some updated title", url: "some updated url"}
assert {:ok, %Article{} = article} = Articles.update_article(article, update_attrs)
assert article.content == "some updated content"
assert article.date == ~U[2022-12-26 16:16:00Z]
assert article.language == "some updated language"
assert article.title == "some updated title"
assert article.url == "some updated url"
end
test "update_article/2 with invalid data returns error changeset" do
article = article_fixture()
assert {:error, %Ecto.Changeset{}} = Articles.update_article(article, @invalid_attrs)
assert article == Articles.get_article!(article.id)
end
test "delete_article/1 deletes the article" do
article = article_fixture()
assert {:ok, %Article{}} = Articles.delete_article(article)
assert_raise Ecto.NoResultsError, fn -> Articles.get_article!(article.id) end
end
test "change_article/1 returns a article changeset" do
article = article_fixture()
assert %Ecto.Changeset{} = Articles.change_article(article)
end
end
end