MultipleUseFixerTest.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. <?php
  2. /*
  3. * This file is part of the PHP CS utility.
  4. *
  5. * (c) Fabien Potencier <fabien@symfony.com>
  6. *
  7. * This source file is subject to the MIT license that is bundled
  8. * with this source code in the file LICENSE.
  9. */
  10. namespace Symfony\CS\Tests\Fixer\PSR2;
  11. use Symfony\CS\Tests\Fixer\AbstractFixerTestBase;
  12. /**
  13. * @author Dariusz Rumiński <dariusz.ruminski@gmail.com>
  14. */
  15. class MultipleUseFixerTest extends AbstractFixerTestBase
  16. {
  17. /**
  18. * @dataProvider provideCases
  19. */
  20. public function testFix($expected, $input = null)
  21. {
  22. $this->makeTest($expected, $input);
  23. }
  24. public function provideCases()
  25. {
  26. return array(
  27. array(
  28. '<?php
  29. /**/use Foo;
  30. use FooB;
  31. ',
  32. '<?php
  33. /**/use Foo,FooB;
  34. ',
  35. ),
  36. array(
  37. <<<'EOF'
  38. use Some, Not, PHP, Like, Use, Statement;
  39. <?php
  40. use Foo;
  41. use FooA;
  42. use FooB;
  43. use FooC;
  44. use FooD as D;
  45. use FooE;
  46. use FooF;
  47. use FooG as G;
  48. use FooH;
  49. use FooI;
  50. use FooJ;
  51. use FooZ;
  52. EOF
  53. ,
  54. <<<'EOF'
  55. use Some, Not, PHP, Like, Use, Statement;
  56. <?php
  57. use Foo;
  58. use FooA, FooB;
  59. use FooC, FooD as D, FooE;
  60. use FooF,
  61. FooG as G,
  62. FooH, FooI,
  63. FooJ;
  64. use FooZ;
  65. EOF
  66. ),
  67. array(
  68. <<<'EOF'
  69. <?php
  70. namespace {
  71. use Foo;
  72. use FooA;
  73. use FooB;
  74. use FooC;
  75. use FooD as D;
  76. use FooE;
  77. use FooF;
  78. use FooG as G;
  79. use FooH;
  80. use FooI;
  81. use FooJ;
  82. use FooZ;
  83. }
  84. namespace Boo {
  85. use Bar;
  86. use BarA;
  87. use BarB;
  88. use BarC;
  89. use BarD as D;
  90. use BarE;
  91. use BarF;
  92. use BarG as G;
  93. use BarH;
  94. use BarI;
  95. use BarJ;
  96. use BarZ;
  97. }
  98. EOF
  99. ,
  100. <<<'EOF'
  101. <?php
  102. namespace {
  103. use Foo;
  104. use FooA, FooB;
  105. use FooC, FooD as D, FooE;
  106. use FooF,
  107. FooG as G,
  108. FooH, FooI,
  109. FooJ;
  110. use FooZ;
  111. }
  112. namespace Boo {
  113. use Bar;
  114. use BarA, BarB;
  115. use BarC, BarD as D, BarE;
  116. use BarF,
  117. BarG as G,
  118. BarH, BarI,
  119. BarJ;
  120. use BarZ;
  121. }
  122. EOF
  123. ),
  124. );
  125. }
  126. }