@@ -934,6 +934,75 @@ public function testInputFromPluginManagerMayBeFurtherConfiguredWithSpec()
934934 $ this ->assertSame ('bar ' , $ input ->getName ());
935935 }
936936
937+ public function testCreateInputFilterConfiguredNameWhenSpecIsIntegerIndexed ()
938+ {
939+ $ factory = $ this ->createDefaultFactory ();
940+ $ inputFilter = $ factory ->createInputFilter ([
941+ 1 => [
942+ 'type ' => InputFilter::class,
943+ 'name ' => 'foo ' ,
944+ ],
945+ ]);
946+
947+ $ this ->assertTrue ($ inputFilter ->has ('foo ' ));
948+ }
949+
950+ public function testCreateInputFilterUsesAssociatedNameMappingOverConfiguredName ()
951+ {
952+ $ factory = $ this ->createDefaultFactory ();
953+ $ inputFilter = $ factory ->createInputFilter ([
954+ 'foo ' => [
955+ 'type ' => InputFilter::class,
956+ 'name ' => 'bar ' ,
957+ ],
958+ ]);
959+
960+ $ this ->assertTrue ($ inputFilter ->has ('foo ' ));
961+ $ this ->assertFalse ($ inputFilter ->has ('bar ' ));
962+ }
963+
964+ public function testCreateInputFilterUsesConfiguredNameForNestedInputFilters ()
965+ {
966+ $ factory = $ this ->createDefaultFactory ();
967+ $ inputFilter = $ factory ->createInputFilter ([
968+ 0 => [
969+ 'type ' => InputFilter::class,
970+ 'name ' => 'bar ' ,
971+ '0 ' => [
972+ 'name ' => 'bat ' ,
973+ ],
974+ '1 ' => [
975+ 'name ' => 'baz ' ,
976+ ],
977+ ],
978+ 1 => [
979+ 'type ' => CollectionInputFilter::class,
980+ 'name ' => 'foo ' ,
981+ 'input_filter ' => [
982+ '0 ' => [
983+ 'name ' => 'bat ' ,
984+ ],
985+ ],
986+ ],
987+ ]);
988+
989+ $ this ->assertInstanceOf (InputFilter::class, $ inputFilter );
990+ $ this ->assertEquals (2 , count ($ inputFilter ));
991+
992+ $ nestedInputFilter = $ inputFilter ->get ('bar ' );
993+ $ this ->assertInstanceOf (InputFilter::class, $ nestedInputFilter );
994+ $ this ->assertEquals (2 , count ($ nestedInputFilter ));
995+ $ this ->assertTrue ($ nestedInputFilter ->has ('bat ' ));
996+ $ this ->assertTrue ($ nestedInputFilter ->has ('baz ' ));
997+
998+ $ collection = $ inputFilter ->get ('foo ' );
999+ $ this ->assertInstanceOf (CollectionInputFilter::class, $ collection );
1000+ $ collectionInputFilter = $ collection ->getInputFilter ();
1001+ $ this ->assertInstanceOf (InputFilter::class, $ collectionInputFilter );
1002+ $ this ->assertEquals (1 , count ($ collectionInputFilter ));
1003+ $ this ->assertTrue ($ collectionInputFilter ->has ('bat ' ));
1004+ }
1005+
9371006 /**
9381007 * @return Factory
9391008 */
0 commit comments