Version 1
[yaffs-website] / vendor / mikey179 / vfsStream / src / test / php / org / bovigo / vfs / vfsStreamDirectoryIssue18TestCase.php
diff --git a/vendor/mikey179/vfsStream/src/test/php/org/bovigo/vfs/vfsStreamDirectoryIssue18TestCase.php b/vendor/mikey179/vfsStream/src/test/php/org/bovigo/vfs/vfsStreamDirectoryIssue18TestCase.php
new file mode 100644 (file)
index 0000000..ffdb7df
--- /dev/null
@@ -0,0 +1,80 @@
+<?php
+/**
+ * This file is part of vfsStream.
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ *
+ * @package  org\bovigo\vfs
+ */
+namespace org\bovigo\vfs;
+/**
+ * Test for org\bovigo\vfs\vfsStreamDirectory.
+ *
+ * @group  bug_18
+ */
+class vfsStreamDirectoryIssue18TestCase extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * access to root directory
+     *
+     * @var  vfsStreamDirectory
+     */
+    protected $rootDirectory;
+
+    /**
+     * set up test environment
+     */
+    public function setUp()
+    {
+        $this->rootDirectory = vfsStream::newDirectory('/');
+        $this->rootDirectory->addChild(vfsStream::newDirectory('var/log/app'));
+        $dir = $this->rootDirectory->getChild('var/log/app');
+        $dir->addChild(vfsStream::newDirectory('app1'));
+        $dir->addChild(vfsStream::newDirectory('app2'));
+        $dir->addChild(vfsStream::newDirectory('foo'));
+    }
+
+    /**
+     * @test
+     */
+    public function shouldContainThreeSubdirectories()
+    {
+        $this->assertEquals(3,
+                            count($this->rootDirectory->getChild('var/log/app')->getChildren())
+        );
+    }
+
+    /**
+     * @test
+     */
+    public function shouldContainSubdirectoryFoo()
+    {
+        $this->assertTrue($this->rootDirectory->getChild('var/log/app')->hasChild('foo'));
+        $this->assertInstanceOf('org\\bovigo\\vfs\\vfsStreamDirectory',
+                                $this->rootDirectory->getChild('var/log/app')->getChild('foo')
+        );
+    }
+
+    /**
+     * @test
+     */
+    public function shouldContainSubdirectoryApp1()
+    {
+        $this->assertTrue($this->rootDirectory->getChild('var/log/app')->hasChild('app1'));
+        $this->assertInstanceOf('org\\bovigo\\vfs\\vfsStreamDirectory',
+                                $this->rootDirectory->getChild('var/log/app')->getChild('app1')
+        );
+    }
+
+    /**
+     * @test
+     */
+    public function shouldContainSubdirectoryApp2()
+    {
+        $this->assertTrue($this->rootDirectory->getChild('var/log/app')->hasChild('app2'));
+        $this->assertInstanceOf('org\\bovigo\\vfs\\vfsStreamDirectory',
+                                $this->rootDirectory->getChild('var/log/app')->getChild('app2')
+        );
+    }
+}