public function testArguments() { $argsData = ['id' => new IntType()]; $config = new FieldConfig(['name' => 'UserType', 'type' => new IntType(), 'args' => $argsData]); $this->assertTrue($config->hasArguments()); $this->assertEquals(['id' => new InputField(['name' => 'id', 'type' => new IntType()])], $config->getArguments()); $config->addArgument('name', new StringType()); $this->assertEquals(['id' => new InputField(['name' => 'id', 'type' => new IntType()]), 'name' => new InputField(['name' => 'name', 'type' => new StringType()])], $config->getArguments()); $config->removeArgument('id'); $this->assertEquals(['name' => new InputField(['name' => 'name', 'type' => new StringType()])], $config->getArguments()); $config->addArguments(['id' => new InputField(['name' => 'id', 'type' => new IntType()])]); $this->assertEquals(['name' => new InputField(['name' => 'name', 'type' => new StringType()]), 'id' => new InputField(['name' => 'id', 'type' => new IntType()])], $config->getArguments()); $config->addArguments([new InputField(['name' => 'level', 'type' => new IntType()])]); $this->assertEquals(['name' => new InputField(['name' => 'name', 'type' => new StringType()]), 'id' => new InputField(['name' => 'id', 'type' => new IntType()]), 'level' => new InputField(['name' => 'level', 'type' => new IntType()])], $config->getArguments()); }
public function build(FieldConfig $config) { $config->addArguments(['id' => new NonNullType(new IdType())]); }
public function build(FieldConfig $config) { $config->addArguments(['field' => ['type' => new StringType(), 'default' => 'image']]); }