Skip to content

Commit a1751a6

Browse files
committed
Add tests for group-skip-empty option mmoreram#12
1 parent 3b08bdb commit a1751a6

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed

tests/PHPFormatter/Sorter/UseSorterTest.php

+68
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,26 @@ public function dataSort()
286286
use Test2\\Myclass3;
287287
use Test2\\Myclass4;
288288
289+
use Test1\\Myclass1;
290+
use Test1\\Myclass2;
291+
use Test1\\MyFolder5\\File as MyFile;
292+
use Test4\\Myclass3;
293+
294+
use Test3\\File;
295+
use Test3\\MyFolder\\Myclass;
296+
"
297+
),
298+
array(
299+
['Test2', 'TestEmpty', '_main', 'Test3'],
300+
UseSorter::SORT_TYPE_ALPHABETIC,
301+
UseSorter::SORT_DIRECTION_ASC,
302+
UseSorter::GROUP_TYPE_EACH,
303+
"
304+
use Test2\\Myclass3;
305+
use Test2\\Myclass4;
306+
307+
308+
289309
use Test1\\Myclass1;
290310
use Test1\\Myclass2;
291311
use Test1\\MyFolder5\\File as MyFile;
@@ -297,4 +317,52 @@ public function dataSort()
297317
)
298318
);
299319
}
320+
321+
/**
322+
* Test skip empty
323+
*/
324+
public function testGroupSkip()
325+
{
326+
$parsedData = $this
327+
->useSorter
328+
->setGroups(['Test2', 'TestEmpty', '_main', 'Test3'])
329+
->setSortType(UseSorter::SORT_TYPE_ALPHABETIC)
330+
->setSortDirection(UseSorter::SORT_DIRECTION_ASC)
331+
->setGroupType(UseSorter::GROUP_TYPE_EACH)
332+
->setGroupSkipEmpty(true)
333+
->sort($this->data);
334+
335+
$result =
336+
"
337+
use Test2\\Myclass3;
338+
use Test2\\Myclass4;
339+
340+
use Test1\\Myclass1;
341+
use Test1\\Myclass2;
342+
use Test1\\MyFolder5\\File as MyFile;
343+
use Test4\\Myclass3;
344+
345+
use Test3\\File;
346+
use Test3\\MyFolder\\Myclass;
347+
";
348+
$realResult =
349+
"<?php
350+
351+
/**
352+
* Copyright
353+
*/
354+
355+
namespace PHPFormatter\\Tests\\Mocks;
356+
$result
357+
/**
358+
* Class SimpleMock
359+
*/
360+
class SimpleMock
361+
{}";
362+
363+
$this->assertEquals(
364+
$realResult,
365+
$parsedData
366+
);
367+
}
300368
}

0 commit comments

Comments
 (0)