61 lines
1.5 KiB
Elixir
61 lines
1.5 KiB
Elixir
|
defmodule MobilizonWeb.Resolvers.CategoryResolverTest do
|
||
|
use MobilizonWeb.ConnCase
|
||
|
alias Mobilizon.Actors
|
||
|
alias Mobilizon.Actors.Actor
|
||
|
alias MobilizonWeb.AbsintheHelpers
|
||
|
import Mobilizon.Factory
|
||
|
|
||
|
setup %{conn: conn} do
|
||
|
{:ok, %Actor{} = actor} =
|
||
|
Actors.register(%{email: "test@test.tld", password: "testest", username: "test"})
|
||
|
|
||
|
{:ok, conn: conn, actor: actor}
|
||
|
end
|
||
|
|
||
|
describe "Category Resolver" do
|
||
|
test "list_categories/3 returns the list of categories", context do
|
||
|
insert(:category)
|
||
|
insert(:category)
|
||
|
|
||
|
query = """
|
||
|
{
|
||
|
categories {
|
||
|
id,
|
||
|
title,
|
||
|
description,
|
||
|
picture {
|
||
|
url,
|
||
|
},
|
||
|
}
|
||
|
}
|
||
|
"""
|
||
|
|
||
|
res =
|
||
|
context.conn
|
||
|
|> get("/api", AbsintheHelpers.query_skeleton(query, "categories"))
|
||
|
|
||
|
assert json_response(res, 200)["data"]["categories"] |> length == 2
|
||
|
end
|
||
|
|
||
|
# We can't test an upload…yet?
|
||
|
# test "create_category/3 creates a category", %{conn: conn, actor: actor} do
|
||
|
# mutation = """
|
||
|
# mutation {
|
||
|
# createCategory(title: "my category", description: "my desc") {
|
||
|
# id,
|
||
|
# title,
|
||
|
# description,
|
||
|
# },
|
||
|
# }
|
||
|
# """
|
||
|
|
||
|
# res =
|
||
|
# conn
|
||
|
# |> auth_conn(actor.user)
|
||
|
# |> post("/api", AbsintheHelpers.mutation_skeleton(mutation))
|
||
|
|
||
|
# assert json_response(res, 200)["data"]["createCategory"]["title"] == "my category"
|
||
|
# end
|
||
|
end
|
||
|
end
|