Graphcool / graphcool-framework

Apache License 2.0
1.77k stars 131 forks source link

Calling a field input breaks mutations #533

Closed marktani closed 6 years ago

marktani commented 6 years ago

For bug reports, please fill in the next sections:

Current behavior

Calling a field input breaks mutations.

type Test @model {
  createdAt: DateTime!
  id: ID! @isUnique
  input: [String!]!
  updatedAt: DateTime!
}
mutation createTest {
  createTest(input: ["srwer","sdf"]) {
    id
    createdAt
    updatedAt
    input
    __typename
  }
}

Exeption:

{\"exception\":\"java.lang.ClassCastException: scala.collection.immutable.Vector cannot be cast to scala.collection.immutable.Map\",\"query\":\"mutation createTest {\\n  createTest(input: [\\\"srwer\\\",\\\"sdf\\\"], output: [\\\"srwer\\\",\\\"sdf\\\"]) {\\n    id\\n    createdAt\\n    updatedAt\\n    input\\n    output\\n    __typename\\n  }\\n}\",\"variables\":{},\"code\":0,\"stack_trace\":\"cool.graph.client.mutations.Create.\u003cinit\u003e(Create.scala:41), cool.graph.client.schema.SchemaBuilder$$anonfun$29.apply(SchemaBuilder.scala:321), cool.graph.client.schema.SchemaBuilder$$anonfun$29.apply(SchemaBuilder.scala:319), sangria.execution.Resolver.resolveField(Resolver.scala:1007), sangria.execution.Resolver.sangria$execution$Resolver$$resolveSingleFieldSeq(Resolver.scala:235), sangria.execution.Resolver$$anonfun$resolveSeq$1$$anonfun$apply$12.apply(Resolver.scala:215), sangria.execution.Resolver$$anonfun$resolveSeq$1$$anonfun$apply$12.apply(Resolver.scala:206), scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:253), scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:251), scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32), akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExecutor.scala:55), akka.dispatch.BatchingExecutor$BlockableBatch$$anonfun$run$1.apply$mcV$sp(BatchingExecutor.scala:91), akka.dispatch.BatchingExecutor$BlockableBatch$$anonfun$run$1.apply(BatchingExecutor.scala:91), akka.dispatch.BatchingExecutor$BlockableBatch$$anonfun$run$1.apply(BatchingExecutor.scala:91), scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:72), akka.dispatch.BatchingExecutor$BlockableBatch.run(BatchingExecutor.scala:90), akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:39), akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:415), scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260), scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339), scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979), scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\",\"message\":\"scala.collection.immutable.Vector cannot be cast to scala.collection.immutable.Map\"}

Expected behavior?

The node is created.

marktani commented 6 years ago

Duplicate of #291.