defmodule Scopes.CoreTest do use Scopes.DataCase alias Scopes.Core describe "messages" do alias Scopes.Core.Message import Scopes.CoreFixtures @invalid_attrs %{data: nil, domain: nil, item: nil, action: nil, class: nil} test "list_messages/0 returns all messages" do message = message_fixture() assert Core.list_messages() == [message] end test "get_message!/1 returns the message with given id" do message = message_fixture() assert Core.get_message!(message.id) == message end test "create_message/1 with valid data creates a message" do valid_attrs = %{data: %{}, domain: "some domain", item: "some item", action: "some action", class: "some class"} assert {:ok, %Message{} = message} = Core.create_message(valid_attrs) assert message.data == %{} assert message.domain == "some domain" assert message.item == "some item" assert message.action == "some action" assert message.class == "some class" end test "create_message/1 with invalid data returns error changeset" do assert {:error, %Ecto.Changeset{}} = Core.create_message(@invalid_attrs) end test "update_message/2 with valid data updates the message" do message = message_fixture() update_attrs = %{data: %{}, domain: "some updated domain", item: "some updated item", action: "some updated action", class: "some updated class"} assert {:ok, %Message{} = message} = Core.update_message(message, update_attrs) assert message.data == %{} assert message.domain == "some updated domain" assert message.item == "some updated item" assert message.action == "some updated action" assert message.class == "some updated class" end test "update_message/2 with invalid data returns error changeset" do message = message_fixture() assert {:error, %Ecto.Changeset{}} = Core.update_message(message, @invalid_attrs) assert message == Core.get_message!(message.id) end test "delete_message/1 deletes the message" do message = message_fixture() assert {:ok, %Message{}} = Core.delete_message(message) assert_raise Ecto.NoResultsError, fn -> Core.get_message!(message.id) end end test "change_message/1 returns a message changeset" do message = message_fixture() assert %Ecto.Changeset{} = Core.change_message(message) end end end