Input Coercion
When expected as an input type, only boolean input values are accepted.
All other input values must raise a request error indicating an incorrect type.
So we can't coerce string, numeric and enum values. And here we
faced main issue - because graphql parser considered "False" and
"True" as enum values (correct boolean values is "true" and
"false"). And if user passed "False" value to boolean argument it
silently converted to true. This patch check that passed node type
is boolean and raises if it's not so.
Graphql spec states:
(https://spec.graphql.org/draft/#sec-Boolean)
So we can't coerce string, numeric and enum values. And here we faced main issue - because graphql parser considered "False" and "True" as enum values (correct boolean values is "true" and "false"). And if user passed "False" value to boolean argument it silently converted to true. This patch check that passed node type is boolean and raises if it's not so.
Closes #14