Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion config/config.exs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# This configuration file is loaded before any dependency and
# is restricted to this project.
use Mix.Config
import Config

# General application configuration
config :zero_phoenix,
Expand Down
2 changes: 1 addition & 1 deletion config/dev.exs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use Mix.Config
import Config

# Configure your database
config :zero_phoenix, ZeroPhoenix.Repo,
Expand Down
4 changes: 2 additions & 2 deletions config/prod.exs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use Mix.Config
import Config

# For production, don't forget to configure the url host
# to something meaningful, Phoenix uses this information
Expand Down Expand Up @@ -52,4 +52,4 @@ config :logger, level: :info

# Finally import the config/prod.secret.exs which loads secrets
# and configuration from environment variables.
import_config "prod.secret.exs"
# import_config "prod.secret.exs"
41 changes: 0 additions & 41 deletions config/prod.secret.exs

This file was deleted.

2 changes: 1 addition & 1 deletion config/test.exs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use Mix.Config
import Config

# Configure your database
#
Expand Down
4 changes: 2 additions & 2 deletions mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ defmodule ZeroPhoenix.Mixfile do
def project do
[
app: :zero_phoenix,
version: "2.4.2",
version: "2.4.4",
elixir: "~> 1.13.0-dev",
elixirc_paths: elixirc_paths(Mix.env()),
compilers: [:phoenix, :gettext] ++ Mix.compilers(),
compilers: [:gettext] ++ Mix.compilers(),
start_permanent: Mix.env() == :prod,
aliases: aliases(),
deps: deps()
Expand Down
95 changes: 95 additions & 0 deletions test/zero_phoenix_web/schema/query/people_test.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
defmodule ZeroPhoenixWeb.Schema.Query.PeopleTest do
use ZeroPhoenixWeb.ConnCase, async: true

import Ecto.Query

alias ZeroPhoenix.Account.Person
alias ZeroPhoenix.Repo

setup do
ZeroPhoenix.Seeds.run()
end

test "get people by IDs" do
query = """
query GetPeople($ids: [ID]) {
people(ids: $ids) {
firstName
lastName
}
}
"""

people_ids =
Person
|> select([:id])
|> order_by(asc: :id)
|> limit(2)
|> Repo.all()
|> Enum.map(fn person -> person.id end)

response =
post(
build_conn(),
"/graphql",
query: query,
variables: %{"ids" => people_ids}
)

assert json_response(response, 200) == %{
"data" => %{
"people" => [
%{
"firstName" => "Conrad",
"lastName" => "Taylor"
},
%{
"firstName" => "David",
"lastName" => "Heinemeier Hansson"
}
]
}
}
end

test "get people" do
query = """
query GetPeople {
people {
firstName
lastName
}
}
"""

response =
post(
build_conn(),
"/graphql",
query: query
)

assert json_response(response, 200) == %{
"data" => %{
"people" => [
%{
"firstName" => "Conrad",
"lastName" => "Taylor"
},
%{
"firstName" => "David",
"lastName" => "Heinemeier Hansson"
},
%{
"firstName" => "Ezra",
"lastName" => "Zygmuntowicz"
},
%{
"firstName" => "Yukihiro",
"lastName" => "Matsumoto"
}
]
}
}
end
end
30 changes: 15 additions & 15 deletions test/zero_phoenix_web/schema/query/person_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ defmodule ZeroPhoenixWeb.Schema.Query.PersonTest do
ZeroPhoenix.Seeds.run()
end

@query """
query GetPerson($personId: ID!) {
person(id: $personId) {
email
}
}
"""

test "get person by ID" do
query = """
query GetPerson($personId: ID!) {
person(id: $personId) {
email
}
}
"""

person =
Person
|> first()
Expand All @@ -28,16 +28,16 @@ defmodule ZeroPhoenixWeb.Schema.Query.PersonTest do
post(
build_conn(),
"/graphql",
query: @query,
query: query,
variables: %{"personId" => person.id}
)

assert json_response(response, 200) == %{
"data" => %{
"person" => %{
"email" => "conradwt@gmail.com"
}
}
}
"data" => %{
"person" => %{
"email" => "conradwt@gmail.com"
}
}
}
end
end