openssl signing
[pharext/pharext] / tests / src / pharext / FilteredSourceDirTest.php
1 <?php
2
3 namespace pharext;
4
5 require __DIR__."/../../autoload.php";
6
7 class Cmd2 implements Command
8 {
9 use CliCommand;
10 function __construct() {
11 $this->args = new CliArgs;
12 }
13 function run($argc, array $argv) {
14 }
15 }
16
17 class FilteredSourceDirTest extends \PHPUnit_Framework_TestCase
18 {
19 /**
20 * @var FilteredSourceDir
21 */
22 protected $source;
23
24 protected function setUp() {
25 $this->source = new FilteredSourceDir(new Cmd2, ".");
26 }
27
28 public function testIterator() {
29 $gitdir = new GitSourceDir(new Cmd2, ".");
30 $gitfiles = iterator_to_array($gitdir);
31 sort($gitfiles);
32
33 $filtered = array_values(iterator_to_array($this->source));
34 $fltfiles = array_map(function($fi) {
35 return $fi->getRealpath();
36 }, $filtered);
37 sort($fltfiles);
38 $this->assertEquals(array(), array_diff($gitfiles, $fltfiles));
39 $this->assertEquals($gitfiles, $fltfiles);
40 }
41 }