Current section

Files

Jump to
graveyard test orm insert_test.exs
Raw

test/orm/insert_test.exs

defmodule Graveyard.ORM.InsertTest do
use ExUnit.Case
alias Graveyard.Record
alias Graveyard.Support
alias Graveyard.Utils.TirexsUris
alias Graveyard.Support.Fixtures
defmodule CustomMappings do
import Tirexs.Mapping
def get_mappings(index_name, type_name) do
index = [index: index_name, type: type_name]
mappings do
indexes "title", type: "text"
indexes "content", type: "text", analyzer: "nGram_analyzer"
end
end
end
setup do
Application.put_env(:tirexs, :uri, "http://localhost:9200")
Application.put_env(:graveyard, :index, "graveyard_test")
Application.put_env(:graveyard, :type, "graveyard_test")
Application.put_env(:graveyard, :mappings_module, nil)
Application.put_env(:graveyard, :mappings, Fixtures.with_oblists_mappings())
TirexsUris.delete_mapping()
Graveyard.Mappings.create_settings_and_mappings()
[episodes: Fixtures.episodes()]
end
test "inserts a record", %{episodes: episodes} do
old_count = Record.count()
Record.insert(episodes |> List.first)
assert old_count < Record.count()
end
test "records has created_at and updated_at", %{episodes: episodes} do
assert {:ok, %{created_at: _, updated_at: _}} = Record.insert(episodes |> List.first)
end
test "for oblists, the __aux field is populated", %{episodes: episodes} do
{:ok, record} = Record.insert(episodes |> List.first, %{maquilate: false})
aux = Map.get(record, :_source) |> Map.get(:__aux)
assert Enum.count(aux) > 0
end
test "returns a list of ids", %{episodes: episodes} do
actual = Record.insert(episodes)
assert is_list(actual)
assert Enum.count(actual) > 0
end
end