From 827836ccb4fcfa0b930e00b67f70208242088d92 Mon Sep 17 00:00:00 2001 From: Fabio Del Bene Date: Thu, 24 Nov 2016 10:45:55 +0100 Subject: [PATCH] Added createFaclsCommand unit test, run without correct parameter test --- .../BuiltIn/Symfony2/ApplyFaclsTaskTest.php | 64 ++++++++++++++++--- 1 file changed, 55 insertions(+), 9 deletions(-) diff --git a/tests/MageTest/Task/BuiltIn/Symfony2/ApplyFaclsTaskTest.php b/tests/MageTest/Task/BuiltIn/Symfony2/ApplyFaclsTaskTest.php index eda0e68..fb7267a 100644 --- a/tests/MageTest/Task/BuiltIn/Symfony2/ApplyFaclsTaskTest.php +++ b/tests/MageTest/Task/BuiltIn/Symfony2/ApplyFaclsTaskTest.php @@ -1,6 +1,8 @@ 'symfony2/apply-facls', - 'parameters' => array( - 'httpuser' => '', - 'localuser' => 'deployer', - 'folders' => array('var', 'web') - ), - ); + $config = new Config(); + $config->addParameter('httpuser', ''); + $task = new ApplyFaclsTask($config); // Act - $task = Factory::get($taskData, $this->config); $task->run(); } + + /** + * @group unit + * @expectedException \Mage\Task\SkipException + * @expectedExceptionMessage Parameter localuser not set. + * @covers Mage\Task\BuiltIn\Symfony2\ApplyFaclsTask::run + */ + public function test_run_withNoLocalUserParameter_trow_SkipException() + { + // Arrange + $config = new Config(); + $config->addParameter('httpuser', 'www-data'); + $config->addParameter('localuser', ''); + $task = new ApplyFaclsTask($config); + // Act + $task->run(); + } + + public function provider_createFaclsCommand() + { + return [ + 'no facls options' => [ + '', 'www-data', 'deployer', 'var', 'setfacl -m u:www-data:rwX -m u:deployer:rwX var' + ], + 'with facls options' => [ + '-dR', 'www-data', 'deployer', 'var', 'setfacl -dR -m u:www-data:rwX -m u:deployer:rwX var' + ] + ]; + } + + /** + * @group unit + * @dataProvider provider_createFaclsCommand + * @covers Mage\Task\BuiltIn\Symfony2\ApplyFaclsTask::createFaclCommand + * + * @param string $faclOptions + * @param string $httpUser + * @param string $localUser + * @param string $folder + * @param string $expectedCommand + */ + public function test_createFaclsCommand($faclOptions, $httpUser, $localUser, $folder, $expectedCommand) + { + // Arrange + $task = new ApplyFaclsTask($this->config); + // Act + $command = $task->createFaclCommand($faclOptions, $httpUser, $localUser, $folder); + // Assert + $this->assertEquals($expectedCommand, $command); + } }