1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978 |
- <?php
- /*
- * This file is part of PHP CS Fixer.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- * Dariusz Rumiński <dariusz.ruminski@gmail.com>
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
- namespace PhpCsFixer\Tests\Fixer\Operator;
- use PhpCsFixer\Fixer\Operator\BinaryOperatorSpacesFixer;
- use PhpCsFixer\Tests\Test\AbstractFixerTestCase;
- /**
- * @author Dariusz Rumiński <dariusz.ruminski@gmail.com>
- * @author Gregor Harlan <gharlan@web.de>
- * @author Carlos Cirello <carlos.cirello.nl@gmail.com>
- * @author SpacePossum
- *
- * @internal
- *
- * @covers \PhpCsFixer\Fixer\Operator\BinaryOperatorSpacesFixer
- */
- final class BinaryOperatorSpacesFixerTest extends AbstractFixerTestCase
- {
- /**
- * @param string $expected
- * @param null|string $input
- * @param null|array $configuration
- *
- * @dataProvider provideWithTabsCases
- */
- public function testWithTabs($expected, $input = null, array $configuration = null)
- {
- $this->fixer->configure($configuration);
- $this->doTest($expected, $input);
- }
- public function provideWithTabsCases()
- {
- return [
- [
- "<?php function myFunction() {
- \t\$foo = 1;
- \t\$looooongVar = 2;
- \t\$middleVar = 1;
- }",
- "<?php function myFunction() {
- \t\$foo= \t1;
- \t\$looooongVar\t = 2;
- \t\$middleVar\t= 1;
- }",
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- "<?php class A{
- public function myFunction() {
- \t \$foo = 1;
- \t \$looooongVar = 2;
- \t \$middleVar = 1;
- }
- }",
- "<?php class A{
- public function myFunction() {
- \t \$foo = 1;
- \t \$looooongVar = 2;
- \t \$middleVar = 1;
- }
- }",
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN]],
- ],
- ];
- }
- /**
- * @param string $expected
- * @param null|string $input
- * @param null|array $configuration
- *
- * @dataProvider provideTestCases
- */
- public function testConfigured($expected, $input = null, array $configuration = null)
- {
- $this->fixer->configure($configuration);
- $this->doTest($expected, $input);
- }
- public function provideTestCases()
- {
- return [
- [
- '<?php
- $this->a
- = $this->b
- = 1
- ;',
- '<?php
- $this->a
- = $this->b
- = 1
- ;',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- $this->newName
- = $this->path
- = $this->randomName
- = $this->remoteFile
- = $this->tmpContent
- = null;',
- '<?php
- $this->newName
- = $this->path
- = $this->randomName
- = $this->remoteFile
- = $this->tmpContent
- = null;',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- $a//
- = 1;
- ',
- '<?php
- $a//
- = 1;
- ',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::SINGLE_SPACE]],
- ],
- [
- '<?php
- $var = [];
- foreach ([
- 1 => 2,
- 2 => 3,
- ] as $k => $v) {
- $var[] = [$i => $bar];
- }',
- '<?php
- $var = [];
- foreach ([
- 1=> 2,
- 2 =>3,
- ] as $k => $v) {
- $var[] = [$i => $bar];
- }',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a = array(
- 1 => 2, 4 => 5,
- 5 => 2, 6 => 5, 7 => 8, 9 => 10, 11 => 1222,
- );',
- '<?php $a = array(
- 1=>2, 4=>5,
- 5=>2, 6 => 5, 7=>8, 9=>10, 11=>1222,
- );',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a = array(1 => 2, 4 => 5);',
- '<?php $a = array(1=>2, 4 => 5);',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a = array(1 => 2, 4 => 5 && $b, 5 => 5 && $b, 6 => 5 && $b, 7 => 5 && $b);',
- '<?php $a = array(1 => 2, 4 => 5&&$b, 5 => 5 && $b, 6 => 5&& $b, 7 => 5 &&$b);',
- ['operators' => ['&&' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- [1 => "foo"];
- [2 => "foo"];
- [3 => "foo"];
- ',
- '<?php
- [1 => "foo"];
- [2 =>"foo"];
- [3=>"foo"];
- ',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- [
- '<?php
- [1 => "foo"];
- [2 => "foo"];
- [3 => "foo"];
- ',
- '<?php
- [1 => "foo"];
- [2 =>"foo"];
- [3=>"foo"];
- ',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a += 1;',
- '<?php $a+=1;',
- ['operators' => ['+=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- [
- '<?php $a += 1;',
- '<?php $a+=1;',
- ['operators' => ['+=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a+=1;',
- null,
- ['operators' => ['+=' => BinaryOperatorSpacesFixer::ALIGN]],
- ],
- [
- '<?php
- $ade = $b !== $a;
- $b = $b !== $a;
- $c = $b !== $a;
- ',
- '<?php
- $ade = $b!== $a;
- $b = $b!== $a;
- $c = $b!==$a;
- ',
- ['operators' => ['!==' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- [
- '<?php
- $aab = $b !== $e;
- $b = $b !== $c;
- $c = $b !== $d;
- ',
- '<?php
- $aab = $b !==$e;
- $b = $b !==$c;
- $c = $b !==$d;
- ',
- ['operators' => ['!==' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- $aaa*= 11;
- $b *= 21;
- $c *=31;
- $d = $e and $f;
- $d = $g or $h;
- ',
- '<?php
- $aaa*= 11;
- $b *= 21;
- $c*=31;
- $d = $e and $f;
- $d = $g or $h;
- ',
- [
- 'operators' => [
- 'and' => BinaryOperatorSpacesFixer::SINGLE_SPACE,
- '*=' => BinaryOperatorSpacesFixer::ALIGN,
- 'or' => null,
- ],
- ],
- ],
- [
- '<?php
- $abc = $b !== $a;
- $b = $b !== $a;
- $c = $b !== $a;
- ',
- '<?php
- $abc = $b !== $a;
- $b = $b !== $a;
- $c = $b !== $a;
- ',
- ['operators' => ['!==' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a = [
- 1 => 2,
- 2 => 3,
- ];',
- '<?php $a = [
- 1=>2,
- 2 => 3,
- ];',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- [1 => "foo",
- 2 => "foo"];
- ',
- '<?php
- [1 => "foo",
- 2 => "foo"];
- ',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php
- [1 => "foo"];
- $i += 1;
- ',
- '<?php
- [1 => "foo"];
- $i+= 1;
- ',
- ['operators' => ['+=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- [
- '<?php $a = 1 + 2; $b = array(
- 13 =>3,
- 4 => 3,
- 5=>2,
- );',
- null,
- ['default' => null],
- ],
- [
- '<?php $a = 1 + 2; $b = array(
- $øøø => $ø0ø0ø,
- $ø4 => $ø1ø1ø,
- $ø5 => $ø2ø2ø,
- );
- $a = 12 + 1;
- $a = 13 + 41;
- ',
- '<?php $a = 1 + 2; $b = array(
- $øøø =>$ø0ø0ø,
- $ø4 => $ø1ø1ø,
- $ø5=>$ø2ø2ø,
- );
- $a = 12 + 1;
- $a = 13+41;
- ',
- ['default' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL],
- ],
- 'do not align with nor touch strings' => [
- '<?php
- \putenv("{$name}= {$value}");
- $b = $c + 1;
- $b = $c - 1;
- ',
- '<?php
- \putenv("{$name}= {$value}");
- $b =$c+1;
- $b =$c - 1;
- ',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- 'do not align with declare' => [
- '<?php
- declare(ticks=1);
- $a = 1;
- $b = 1;
- ',
- '<?php
- declare(ticks=1);
- $a = 1;
- $b = 1;
- ',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- 'do not align with multibyte character in array key' => [
- '<?php
- $map = [
- "ø" => "oe",
- ];
- ',
- null,
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- 'align correctly with multibyte characters in array key' => [
- '<?php
- $inflect_male = array(
- "aitė\b" => "øasø",
- "ytė\b" => "øisø",
- "iūtė\b" => "øiusø",
- "utė\b" => array(
- "aitė\b" => "øas",
- "ytė\b" => "øis",
- "iūtė\b" => $øøius,
- "utė\b" => "us",
- ),
- );',
- '<?php
- $inflect_male = array(
- "aitė\b" => "øasø",
- "ytė\b" => "øisø",
- "iūtė\b" => "øiusø",
- "utė\b" => array(
- "aitė\b" => "øas",
- "ytė\b" => "øis",
- "iūtė\b" => $øøius,
- "utė\b" => "us",
- ),
- );',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE]],
- ],
- ];
- }
- /**
- * @param string $expected
- * @param null|string $input
- *
- * @dataProvider provideFixCases
- */
- public function testFixDefaults($expected, $input = null)
- {
- $this->doTest($expected, $input);
- }
- public function provideFixCases()
- {
- return [
- [
- '<?php $a + /** */
- $b;',
- '<?php $a + /** */
- $b;',
- ],
- [
- '<?php '.'
- $a
- + $b
- + $d;
- ;',
- '<?php '.'
- $a
- +$b
- + $d;
- ;',
- ],
- [
- '<?php
- $a
- /***/ + $b
- /***/ + $d;
- ;',
- '<?php
- $a
- /***/+ $b
- /***/ +$d;
- ;',
- ],
- [
- '<?php $a + $b;',
- '<?php $a+$b;',
- ],
- [
- '<?php 1 + $b;',
- '<?php 1+$b;',
- ],
- [
- '<?php 0.2 + $b;',
- '<?php 0.2+$b;',
- ],
- [
- '<?php $a[1] + $b;',
- '<?php $a[1]+$b;',
- ],
- [
- '<?php FOO + $b;',
- '<?php FOO+$b;',
- ],
- [
- '<?php foo() + $b;',
- '<?php foo()+$b;',
- ],
- [
- '<?php ${"foo"} + $b;',
- '<?php ${"foo"}+$b;',
- ],
- [
- '<?php $a & $b;',
- '<?php $a&$b;',
- ],
- [
- '<?php $a &= $b;',
- '<?php $a&=$b;',
- ],
- [
- '<?php $a &= $b;',
- '<?php $a &=$b;',
- ],
- [
- '<?php $a &= $b;',
- '<?php $a&= $b;',
- ],
- [
- '<?php $a &= $b;',
- '<?php $a &= $b;',
- ],
- [
- '<?php $a &=
- $b;',
- ],
- [
- '<?php $a
- &= $b;',
- '<?php $a
- &=$b;',
- ],
- [
- '<?php (1) and 2;',
- '<?php (1)and 2;',
- ],
- [
- '<?php 1 or ($b - $c);',
- '<?php 1 or($b-$c);',
- ],
- [
- '<?php "a" xor (2);',
- '<?php "a"xor(2);',
- ],
- [
- '<?php $a * -$b;',
- '<?php $a*-$b;',
- ],
- [
- '<?php $a = -2 / +5;',
- '<?php $a=-2/+5;',
- ],
- [
- '<?php $a = &$b;',
- '<?php $a=&$b;',
- ],
- [
- '<?php $a++ + $b;',
- '<?php $a+++$b;',
- ],
- [
- '<?php __LINE__ - 1;',
- '<?php __LINE__-1;',
- ],
- [
- '<?php `echo 1` + 1;',
- '<?php `echo 1`+1;',
- ],
- [
- '<?php function foo(&$a, array &$b, Bar &$c) {}',
- ],
- [
- '<?php $a = 1 //
- || 2;
- ',
- ],
- [
- '<?php $a =
- 2;',
- ],
- [
- '<?php declare(ticks=1);',
- ],
- [
- '<?php declare(ticks = 1);',
- ],
- [
- '<?php $a = 1;declare(ticks = 1);$b = 1;',
- '<?php $a=1;declare(ticks = 1);$b=1;',
- ],
- [
- '<?php $a = array("b" => "c", );',
- '<?php $a = array("b"=>"c", );',
- ],
- [
- '<?php $a = array("b" => "c", );',
- '<?php $a = array("b" =>"c", );',
- ],
- [
- '<?php $a = array("b" => "c", );',
- '<?php $a = array("b"=> "c", );',
- ],
- [
- '<?php [1, 2] + [3, 4];',
- '<?php [1, 2]+[3, 4];',
- ],
- [
- '<?php [1, 2] + [3, 4];',
- '<?php [1, 2] + [3, 4];',
- ],
- [
- '<?php [1, 2] + // '.'
- [3, 4];',
- '<?php [1, 2] + // '.'
- [3, 4];',
- ],
- [
- '<?php $a = $b + $c;$a = $b + $c;$a = $b + $c;$a = $b + $c;$a = $b + $c;$a = $b + $c;$a = $b + $c;$a = $b + $c;',
- '<?php $a=$b+$c;$a=$b+$c;$a=$b+$c;$a=$b+$c;$a=$b+$c;$a=$b+$c;$a=$b+$c;$a=$b+$c;',
- ],
- [
- '<?php
- $c =
- $a
- +
- $b;
- ',
- ],
- ];
- }
- /**
- * @param string $expected
- * @param null|string $input
- *
- * @dataProvider provideUnalignEqualsCases
- */
- public function testUnalignEquals($expected, $input = null)
- {
- $this->doTest($expected, $input);
- }
- public function provideUnalignEqualsCases()
- {
- return [
- [
- '<?php $a = "c"?>',
- '<?php $a="c"?>',
- ],
- [
- '<?php $a = "c";',
- '<?php $a ="c";',
- ],
- [
- '<?php $a = "c";',
- '<?php $a= "c";',
- ],
- [
- '<?php $d = $c + $a/**/ + //
- $b;',
- '<?php $d = $c+$a/**/+ //
- $b;',
- ],
- [
- '<?php
- $a = 1;
- $bbbb = \'
- $cccccccc = 3;
- \';',
- '<?php
- $a = 1;
- $bbbb = \'
- $cccccccc = 3;
- \';',
- ],
- [
- '<?php
- $ccc = 1;
- $bb = 1;
- $a = 1;
- /*
- Others alignments
- */
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- $a[$b] = 1;
- $ab[$bc] = 1;
- $abc[$bcd] = 1;
- if ($a = 1) {
- $ccc = 1;
- $bb = 1;
- $a = 1;
- }
- function a($a = 1, $b = 2, $c = 3)
- {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- function b(
- $a = 1,
- $bbb = 2,
- $c = 3
- ) {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- while (false) {
- $aa = 2;
- $a[$b] = array();
- }
- for ($i = 0; $i < 10; $i++) {
- $aa = 2;
- $a[$b] = array();
- }',
- '<?php
- $ccc = 1;
- $bb = 1;
- $a = 1;
- /*
- Others alignments
- */
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- $a[$b] = 1;
- $ab[$bc] = 1;
- $abc[$bcd] = 1;
- if ($a = 1) {
- $ccc = 1;
- $bb = 1;
- $a = 1;
- }
- function a($a = 1, $b = 2, $c = 3)
- {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- function b(
- $a = 1,
- $bbb = 2,
- $c = 3
- ) {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- while (false) {
- $aa = 2;
- $a[$b] = array();
- }
- for ($i = 0; $i < 10; $i++) {
- $aa = 2;
- $a[$b] = array();
- }',
- ],
- ];
- }
- public function testWrongConfigItem()
- {
- $this->expectException(\PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException::class);
- $this->expectExceptionMessageRegExp(
- '/^\[binary_operator_spaces\] Invalid configuration: The option "foo" does not exist\. Defined options are: "default", "operators"\.$/'
- );
- $this->fixer->configure(['foo' => true]);
- }
- public function testWrongConfigTypeForOperators()
- {
- $this->expectException(\PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException::class);
- $this->expectExceptionMessageRegExp(
- '/^\[binary_operator_spaces\] Invalid configuration: The option "operators" with value true is expected to be of type "array", but is of type "boolean"\.$/'
- );
- $this->fixer->configure(['operators' => true]);
- }
- public function testWrongConfigTypeForOperatorsKey()
- {
- $this->expectException(\PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException::class);
- $this->expectExceptionMessageRegExp('/^\[binary_operator_spaces\] Invalid configuration: Unexpected "operators" key, expected any of ".*", got "integer#123"\.$/');
- $this->fixer->configure(['operators' => [123 => 1]]);
- }
- public function testWrongConfigTypeForOperatorsKeyValue()
- {
- $this->expectException(\PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException::class);
- $this->expectExceptionMessageRegExp('/^\[binary_operator_spaces\] Invalid configuration: Unexpected value for operator "\+", expected any of ".*", got "string#abc"\.$/');
- $this->fixer->configure(['operators' => ['+' => 'abc']]);
- }
- /**
- * @param string $expected
- * @param null|string $input
- *
- * @dataProvider provideUnalignDoubleArrowCases
- */
- public function testUnalignDoubleArrow($expected, $input = null)
- {
- $this->doTest($expected, $input);
- }
- public function provideUnalignDoubleArrowCases()
- {
- return [
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => array(
- [
- "baz" => "Test",
- "bazaa" => $a->{"Test"},
- "bazaa" => $a["Test"],
- "bazaaaa" => b("Test"),
- ]
- ),
- "bar" => array(),
- ];',
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => array(
- [
- "baz" => "Test",
- "bazaa" => $a->{"Test"},
- "bazaa" => $a["Test"],
- "bazaaaa" => b("Test"),
- ]
- ),
- "bar" => array(),
- ];',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];',
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];',
- ],
- [
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );',
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );',
- ],
- [
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array(array("baz" => "Test")),
- "bar" => array(),
- );',
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array(array("baz" => "Test")),
- "bar" => array(),
- );',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- '<?php
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ([1 => 2] as $k => $v) {
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach (fncCall() as $k => $v){
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $bar) {
- $var[] = [
- $i => $bar,
- $iaaa => $bar,
- ];
- }',
- '<?php
- $var = [];
- foreach ($foo as $bar) {
- $var[] = [
- $i => $bar,
- $iaaa => $bar,
- ];
- }',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [["baz" => "Test", "bar" => "Test2"]],
- "bar" => [],
- ];',
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [["baz" => "Test", "bar" => "Test2"]],
- "bar" => [],
- ];',
- ],
- [
- '<?php
- $a = [
- 0 => 1,
- 10 /*Comment*/ => [
- 1 => 2,
- 22 => 3,
- ],
- 100 => [
- 1 => 2,
- 22 => 3,
- ]
- ];',
- '<?php
- $a = [
- 0 => 1,
- 10 /*Comment*/ => [
- 1 => 2,
- 22 => 3,
- ],
- 100 => [
- 1 => 2,
- 22 => 3,
- ]
- ];',
- ],
- [
- '<?php
- $a = array(
- 0 => 1,
- 10 => array(
- 1 => 2,
- 22 => 3,
- ),
- 100 => array(
- 1 => 2,
- 22 => 3,
- )
- );',
- '<?php
- $a = array(
- 0 => 1,
- 10 => array(
- 1 => 2,
- 22 => 3,
- ),
- 100 => array(
- 1 => 2,
- 22 => 3,
- )
- );',
- ],
- [
- '<?php
- $arr = array(
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- );',
- '<?php
- $arr = array(
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- );',
- ],
- [
- '<?php
- $arr = [
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- ];',
- '<?php
- $arr = [
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- ];',
- ],
- [
- '<?php
- foreach($arr as $k => $v){
- $arr = array($k => 1,
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- );
- }',
- '<?php
- foreach($arr as $k => $v){
- $arr = array($k => 1,
- $a => 1,
- $bbbb => \'
- $cccccccc = 3;
- \',
- );
- }',
- ],
- [
- '<?php
- $a = array(
- 10 => 11,
- 20 => 22,
- 30 => 33,
- 40
- =>
- 44,
- );',
- '<?php
- $a = array(
- 10 => 11,
- 20 => 22,
- 30=>33,
- 40
- =>
- 44,
- );',
- ],
- [
- '<?php
- return array(
- " " => "", "\t" => "",
- "\n" => "", "\r" => "",
- "\0" => "", "\x0B" => "",
- );',
- '<?php
- return array(
- " " => "", "\t" => "",
- "\n" => "", "\r" => "",
- "\0" => "", "\x0B" => "",
- );',
- ],
- [
- '<?php
- return $this->grabAttribsBeforeToken(
- $tokens,
- $index,
- $tokenAttribsMap,
- array(
- "abstract" => null,
- "final" => null,
- "visibility" => new Token(array(T_PUBLIC, "public")),
- "static" => null,
- )
- );',
- '<?php
- return $this->grabAttribsBeforeToken(
- $tokens,
- $index,
- $tokenAttribsMap,
- array(
- "abstract" => null,
- "final" => null,
- "visibility" => new Token(array(T_PUBLIC, "public")),
- "static" => null,
- )
- );',
- ],
- [
- '<?php
- return array(
- self::STATUS_UNKNOWN_0 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_0 => array("symbol" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- '<?php
- return array(
- self::STATUS_UNKNOWN_0 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_0 => array("symbol" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- ],
- [
- '<?php
- $array = array(
- "bazab" => b(array(
- 1 => 2,
- 5 => [
- 6 => 7,
- 8 => 9,
- ],
- 3 => 4,
- 10 => 11,
- )),
- );',
- '<?php
- $array = array(
- "bazab" => b(array(
- 1 => 2,
- 5 => [
- 6 => 7,
- 8 => 9,
- ],
- 3 => 4,
- 10 => 11,
- )),
- );',
- ],
- [
- '<?php
- Foo::test()->aaa(array(1 => 2))->bbb("a", "b");
- ',
- ],
- [
- '<?php
- function foo() {
- yield 1 => 2;
- }',
- ],
- ];
- }
- /**
- * @param string $expected
- * @param null|string $input
- *
- * @dataProvider provideAlignEqualsCases
- */
- public function testFixAlignEquals($expected, $input = null)
- {
- $this->fixer->configure(['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN]]);
- $this->doTest($expected, $input);
- }
- public function provideAlignEqualsCases()
- {
- return [
- [
- '<?php
- $a = 1;
- $bbbb = \'
- $ddcccccc1 = 3;
- \';',
- '<?php
- $a = 1;
- $bbbb = \'
- $ddcccccc1 = 3;
- \';',
- ],
- [
- '<?php
- $ccc = 1;
- $bb = 1;
- $a = 1;
- /*
- Others alignments
- */
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- $a[$b] = 1;
- $ab[$bc] = 1;
- $abc[$bcd] = 1;
- if ($a = 1) {
- $ccc = 1;
- $bb = 1;
- $a = 1;
- }
- function a($a = 1, $b = 2, $c = 3)
- {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- function b(
- $a = 1,
- $bbb = 2,
- $c = 3
- ) {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- while (false) {
- $aa = 2;
- $a[$b] = array();
- }
- for ($i = 0; $i < 10; $i++) {
- $aa = 2;
- $a[$b] = array();
- }',
- '<?php
- $ccc = 1;
- $bb = 1;
- $a = 1;
- /*
- Others alignments
- */
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- $a[$b] = 1;
- $ab[$bc] = 1;
- $abc[$bcd] = 1;
- if ($a = 1) {
- $ccc = 1;
- $bb = 1;
- $a = 1;
- }
- function a($a = 1, $b = 2, $c = 3)
- {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- function b(
- $a = 1,
- $bbb = 2,
- $c = 3
- ) {
- $a[$b = 1] = 1;
- $ab[$bc = 1] = 1;
- $abc[$bcd = 1] = 1;
- }
- while (false) {
- $aa = 2;
- $a[$b] = array();
- }
- for ($i = 0; $i < 10; $i++) {
- $aa = 2;
- $a[$b] = array();
- }',
- ],
- ];
- }
- /**
- * @param string $expected
- * @param null|string $input
- *
- * @dataProvider provideAlignDoubleArrowCases
- */
- public function testFixAlignDoubleArrow($expected, $input = null)
- {
- $this->fixer->configure(['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN]]);
- $this->doTest($expected, $input);
- }
- public function provideAlignDoubleArrowCases()
- {
- return [
- [
- '<?php
- switch ($a) {
- case "prod":
- break;
- }
- ',
- ],
- [
- '<?php
- $array = array(
- "closure" => function ($param1, $param2) {
- return;
- }
- );',
- ],
- [
- '<?php
- return new JsonResponse(array(
- "result" => "OK",
- "html" => 1, /**/array(
- "foo" => "bar",
- "foofoo" => array(
- "a" => 1,
- "b" => 2
- )
- ),)
- );',
- '<?php
- return new JsonResponse(array(
- "result" => "OK",
- "html" => 1, /**/array(
- "foo" => "bar",
- "foofoo" => array(
- "a" => 1,
- "b" => 2
- )
- ),)
- );',
- ],
- [
- '<?php
- return new JsonResponse([
- "result" => "OK",
- "html" => renderView("views/my_view.html.twig", array(
- "foo" => "bar",
- "foofoo" => 43,
- )),
- ]);',
- '<?php
- return new JsonResponse([
- "result" => "OK",
- "html" => renderView("views/my_view.html.twig", array(
- "foo" => "bar",
- "foofoo" => 43,
- )),
- ]);',
- ],
- [
- '<?php
- return new JsonResponse([
- "result" => "OK",
- "html" => renderView("views/my_view.html.twig", [
- "foo" => "bar",
- "foofoo" => 42,
- ]),
- "baz" => "OK",
- ]);',
- '<?php
- return new JsonResponse([
- "result" => "OK",
- "html" => renderView("views/my_view.html.twig", [
- "foo" => "bar",
- "foofoo" => 42,
- ]),
- "baz" => "OK",
- ]);',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => array(
- [
- "baz" => "Test",
- "bazaa" => $a->{"Test"},
- "bazaa" => $a["Test"],
- "bazaaaa" => b("Test"),
- ]
- ),
- "bar" => array(),
- ];',
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => array(
- [
- "baz" => "Test",
- "bazaa" => $a->{"Test"},
- "bazaa" => $a["Test"],
- "bazaaaa" => b("Test"),
- ]
- ),
- "bar" => array(),
- ];',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [array("baz" => "Test")],
- "bar" => array(),
- ];',
- ],
- [
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array("baz" => "Test"),
- "bar" => array(),
- );',
- ],
- [
- '<?php
- $data = array(
- "foo" => "Bar",
- "main" => array(array("baz" => "Test")),
- "bar" => array(),
- );',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = /* Comment */ [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $i => $bar) {
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ([1 => 2] as $k => $v) {
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach (fncCall() as $k => $v){
- $var[] = [$i => $bar];
- }',
- ],
- [
- '<?php
- $var = [];
- foreach ($foo as $bar) {
- $var[] = [
- $i => $bar,
- $iaaa => $bar,
- ];
- }',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => [["baz" => "Test", "bar" => "Test2"]],
- "bar" => [],
- ];',
- ],
- [
- '<?php
- $data = [
- "foo" => "Bar",
- "main" => ["baz" => "Test"],
- "bar" => [],
- ];',
- ],
- [
- '<?php
- $a = [
- 0 => 1,
- 10 /*Comment*/ => [
- 1 => 2,
- 22 => 3,
- ],
- 100 => [
- 1 => 2,
- 22 => 3,
- ]
- ];',
- '<?php
- $a = [
- 0 => 1,
- 10 /*Comment*/ => [
- 1 => 2,
- 22 => 3,
- ],
- 100 => [
- 1 => 2,
- 22 => 3,
- ]
- ];',
- ],
- [
- '<?php
- $a = array(
- 0 => 1,
- 10 => array(
- 1 => 2,
- 22 => 3,
- ),
- 100 => array(
- 1 => 2,
- 22 => 3,
- )
- );',
- ],
- [
- '<?php
- $arr = array(
- $a => 1,
- $bbbb => \'
- $cccccccc2 = 3;
- \',
- );',
- '<?php
- $arr = array(
- $a => 1,
- $bbbb => \'
- $cccccccc2 = 3;
- \',
- );',
- ],
- [
- '<?php
- $arr = [
- $a => 1,
- $bbbb => \'
- $cccccccc3 = 3;
- \',
- ];',
- '<?php
- $arr = [
- $a => 1,
- $bbbb => \'
- $cccccccc3 = 3;
- \',
- ];',
- ],
- [
- '<?php
- foreach($arr as $k => $v){
- $arr = array($k => 1,
- $a => 1,
- $bbbb => \'
- $cccccccc4 = 3;
- \',
- );
- }',
- ],
- [
- '<?php
- $a = array(
- 10 => 11,
- 20 => 22,
- 30 => 33,
- 40
- =>
- 44,
- );',
- '<?php
- $a = array(
- 10 => 11,
- 20 => 22,
- 30=>33,
- 40
- =>
- 44,
- );',
- ],
- [
- '<?php
- return array(
- " " => "", "\t" => "",
- "\n" => "", "\r" => "",
- "\0" => "", "\x0B" => "",
- );',
- '<?php
- return array(
- " " => "", "\t" => "",
- "\n" => "", "\r" => "",
- "\0" => "", "\x0B" => "",
- );',
- ],
- [
- '<?php
- return $this->grabAttribsBeforeToken(
- $tokens,
- $index,
- $tokenAttribsMap,
- array(
- "abstract" => null,
- "final" => null,
- "visibility" => new Token(array(T_PUBLIC, "public")),
- "static" => null,
- )
- );',
- '<?php
- return $this->grabAttribsBeforeToken(
- $tokens,
- $index,
- $tokenAttribsMap,
- array(
- "abstract" => null,
- "final" => null,
- "visibility" => new Token(array(T_PUBLIC, "public")),
- "static" => null,
- )
- );',
- ],
- [
- '<?php
- return array(
- self::STATUS_UNKNOWN_1 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_1 => array("symbol" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- '<?php
- return array(
- self::STATUS_UNKNOWN_1 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_1 => array("symbol" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- ],
- [
- '<?php
- $array = array(
- "bazab" => b(array(
- 1 => 2,
- 5 => [
- 6 => 7,
- 8 => 9,
- ],
- 3 => 4,
- 10 => 11,
- )),
- );',
- '<?php
- $array = array(
- "bazab" => b(array(
- 1 => 2,
- 5 => [
- 6 => 7,
- 8 => 9,
- ],
- 3 => 4,
- 10 => 11,
- )),
- );',
- ],
- [
- '<?php
- Foo::test()->aaa(array(1 => 2))->bbb("a", "b");
- ',
- ],
- [
- '<?php
- $inflect_male = array(
- "aitė\b" => "as",
- "ytė\b" => "is",
- "iūtė\b" => "ius",
- "utė\b" => "us",
- );',
- '<?php
- $inflect_male = array(
- "aitė\b" => "as",
- "ytė\b" => "is",
- "iūtė\b" => "ius",
- "utė\b" => "us",
- );',
- ],
- [
- '<?php
- $formMapper
- ->add(\'foo\', null, [\'required\' => false])
- ->add(\'dummy_field\', null, [\'required\' => false])
- ;
- ',
- ],
- [
- '<?php
- $formMapper
- ->add(\'foo\', null, array(\'required\' => false))
- ->add(\'dummy_field\', null, array(\'required\' => false))
- ;
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy(["server1" => $object], ["addedAt" => "DESC"], 5);
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy(["server2" => $object], ["checkedAt" => "desc"], 50);
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy(array("server1" => $object), array("addedAt" => "DESC"), 5);
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy(array("server2" => $object), array("checkedAt" => "desc"), 50);
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy($foo[123]);
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy($foo[123]);
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy([1, 2, 3]);
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy([1, 2, 3]);
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy((1 + 2));
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy((1 + 2));
- ',
- ],
- [
- '<?php
- $dummy001 = $this->get("doctrine")->getRepository("AppBundle:Entity")->findBy(array(1, 2));
- $foobar = $this->getDoctrine()->getRepository("AppBundle:Entity")->findBy(array(1, 2));
- ',
- ],
- [
- '<?php
- function foo() {}
- $bar = 42;
- $foo = [
- "test123" => "foo",
- "foo" => $bar[123],
- "a" => foo(),
- "b" => 1,
- ];
- ',
- '<?php
- function foo() {}
- $bar = 42;
- $foo = [
- "test123" => "foo",
- "foo" => $bar[123],
- "a" => foo(),
- "b" => 1,
- ];
- ',
- ],
- [
- '<?php
- return array(
- self::STATUS_UNKNOWN_2 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_2 => array("symbol123" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- '<?php
- return array(
- self::STATUS_UNKNOWN_2 => array("symbol" => "?", "description" => "unknown"),
- self::STATUS_INVALID_2 => array("symbol123" => "III", "description" => "invalid file syntax, file ignored"),
- );',
- ],
- [
- '<?php
- return array(
- self::STATUS_UNKNOWN_3 => array((1 + 11)=> "?", "description" => "unknown"),
- self::STATUS_INVALID_3 => array((2 + 3)=> "III", "description" => "invalid file syntax, file ignored"),
- );',
- '<?php
- return array(
- self::STATUS_UNKNOWN_3 => array((1+11)=> "?", "description" => "unknown"),
- self::STATUS_INVALID_3 => array((2+3)=> "III", "description" => "invalid file syntax, file ignored"),
- );',
- ],
- [
- '<?php
- return [
- self::STATUS_UNKNOWN_4 => ["symbol" => "?", "description" => "unknown"],
- self::STATUS_INVALID_4 => ["symbol123" => "III", "description" => "invalid file syntax, file ignored"],
- ];',
- '<?php
- return [
- self::STATUS_UNKNOWN_4 => ["symbol" => "?", "description" => "unknown"],
- self::STATUS_INVALID_4 => ["symbol123" => "III", "description" => "invalid file syntax, file ignored"],
- ];',
- ],
- [
- '<?php
- return [
- self::STATUS_UNKNOWN_7 => [(1 + 11)=> "?", "description" => "unknown"],
- self::STATUS_INVALID_7 => [(2 + 3)=> "III", "description" => "invalid file syntax, file ignored"],
- ];',
- '<?php
- return [
- self::STATUS_UNKNOWN_7 => [(1+11)=> "?", "description" => "unknown"],
- self::STATUS_INVALID_7 => [(2+3)=> "III", "description" => "invalid file syntax, file ignored"],
- ];',
- ],
- ];
- }
- public function testDoNotTouchEqualsAndArrowByConfig()
- {
- $this->fixer->configure(
- [
- 'operators' => [
- '=' => null,
- '=>' => null,
- ],
- ]
- );
- $this->doTest(
- '<?php
- $a = 1;
- $aa = 1;
- $aaa = 1;
- $aaB = 1;
- array(
- 1 => 5,
- 2 => 4,
- 3 => 3,
- 4 => 2,
- 5 => 1,
- 6 => 7,
- );
- '
- );
- }
- /**
- * @requires PHP 7.0
- */
- public function testPHP70Cases()
- {
- $this->fixer->configure(['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE, '??' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]]);
- $this->doTest(
- '<?php declare(strict_types=1);
- $a = 1;
- echo 1 <=> 1;
- echo 1 <=> 2;
- echo 2 <=> 1;
- echo 2 <=> 1;
- $a = $a ?? $b;
- $a = $ab ?? $b;
- $a = $ac ?? $b;
- $a = $ad ?? $b;
- $a = $ae ?? $b;
- ',
- '<?php declare(strict_types=1);
- $a = 1;
- echo 1<=>1;
- echo 1 <=>2;
- echo 2<=> 1;
- echo 2 <=> 1;
- $a = $a ?? $b;
- $a = $ab ?? $b;
- $a = $ac ?? $b;
- $a = $ad ?? $b;
- $a = $ae?? $b;
- '
- );
- }
- /**
- * @requires PHP 7.1
- *
- * @param string $expected
- * @param null|string $input
- * @param array $configuration
- *
- * @dataProvider providePHP71Cases
- */
- public function testPHP71Cases($expected, $input = null, array $configuration = [])
- {
- $this->fixer->configure($configuration);
- $this->doTest($expected, $input);
- }
- public function providePHP71Cases()
- {
- return [
- 'align array destruction' => [
- '<?php
- $c = [$d] = $e[1];
- function A(){}[$a] = $a[$c];
- $b = 1;
- ',
- '<?php
- $c = [$d] = $e[1];
- function A(){}[$a] = $a[$c];
- $b = 1;
- ',
- ['operators' => ['=' => BinaryOperatorSpacesFixer::ALIGN]],
- ],
- 'align array destruction with assignments' => [
- '<?php
- $d = [
- "a" => $a,
- "b" => $b,
- "c" => $c
- ] = $array;
- ',
- '<?php
- $d = [
- "a"=>$a,
- "b" => $b,
- "c" => $c
- ] = $array;
- ',
- ['operators' => ['=>' => BinaryOperatorSpacesFixer::ALIGN_SINGLE_SPACE_MINIMAL]],
- ],
- 'multiple exceptions catch' => [
- '<?php try {} catch (A | B $e) {}',
- '<?php try {} catch (A | B $e) {}',
- ],
- ];
- }
- }
|