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());
 }
예제 #2
0
 public function build(FieldConfig $config)
 {
     $config->addArguments(['id' => new NonNullType(new IdType())]);
 }
예제 #3
0
 public function build(FieldConfig $config)
 {
     $config->addArguments(['field' => ['type' => new StringType(), 'default' => 'image']]);
 }