Skip to content

Commit

Permalink
OXDEV-1284 Refactor MetaDataMapperTest
Browse files Browse the repository at this point in the history
  • Loading branch information
robertblank authored and godefroy-le-hardi committed Jan 7, 2019
1 parent 49ab337 commit b7d6729
Showing 1 changed file with 24 additions and 13 deletions.
37 changes: 24 additions & 13 deletions tests/Integration/Internal/Module/MetaData/MetaDataMapperTest.php
Expand Up @@ -17,9 +17,9 @@ class MetaDataMapperTest extends TestCase
{
public function testModuleMetaData20()
{
$moduleDirectory = ucfirst(__FUNCTION__);
$testModuleDirectory = ucfirst(__FUNCTION__);
/** The content of metadata.php and $expectedModuleData must match */
$metaDataFilePath = __DIR__ . DIRECTORY_SEPARATOR . 'TestData' . DIRECTORY_SEPARATOR . $moduleDirectory . DIRECTORY_SEPARATOR . 'metadata.php';
$metaDataFilePath = $this->getMetaDataFilePath($testModuleDirectory);
$expectedModuleData = [
'id' => 'TestModuleMetaData20',
'title' => 'Module for testModuleMetaData20',
Expand Down Expand Up @@ -108,18 +108,17 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
$this->assertEquals($expectedModuleData['controllers'], $settings[ModuleSetting::CONTROLLERS]);
$this->assertEquals($expectedModuleData['templates'], $settings[ModuleSetting::TEMPLATES]);
$this->assertEquals($expectedModuleData['version'], $settings[ModuleSetting::VERSION]);
$this->assertEquals($moduleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
//$this->assertEquals($moduleId, $settings[ModuleSetting::SMARTY_PLUGIN_DIRECTORIES]);
$this->assertEquals($testModuleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
$this->assertEquals($expectedModuleData['blocks'], $settings[ModuleSetting::TEMPLATE_BLOCKS]);
$this->assertEquals($expectedModuleData['settings'], $settings[ModuleSetting::SHOP_MODULE_SETTING]);
$this->assertEquals($expectedModuleData['events'], $settings[ModuleSetting::EVENTS]);
}

public function testModuleMetaData21()
{
$moduleDirectory = ucfirst(__FUNCTION__);
$testModuleDirectory = ucfirst(__FUNCTION__);
/** The content of metadata.php and $expectedModuleData must match */
$metaDataFilePath = __DIR__ . DIRECTORY_SEPARATOR . 'TestData' . DIRECTORY_SEPARATOR . $moduleDirectory . DIRECTORY_SEPARATOR . 'metadata.php';
$metaDataFilePath = $this->getMetaDataFilePath($testModuleDirectory);
$expectedModuleData = [
'id' => 'TestModuleMetaData21',
'title' => 'Module for testModuleMetaData21',
Expand Down Expand Up @@ -211,7 +210,7 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
$this->assertEquals($expectedModuleData['controllers'], $settings[ModuleSetting::CONTROLLERS]);
$this->assertEquals($expectedModuleData['templates'], $settings[ModuleSetting::TEMPLATES]);
$this->assertEquals($expectedModuleData['version'], $settings[ModuleSetting::VERSION]);
$this->assertEquals($moduleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
$this->assertEquals($testModuleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
$this->assertEquals($expectedModuleData['blocks'], $settings[ModuleSetting::TEMPLATE_BLOCKS]);
$this->assertEquals($expectedModuleData['settings'], $settings[ModuleSetting::SHOP_MODULE_SETTING]);
$this->assertEquals($expectedModuleData['events'], $settings[ModuleSetting::EVENTS]);
Expand All @@ -223,9 +222,9 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
*/
public function testModuleWithPartialMetaData()
{
$moduleDirectory = ucfirst(__FUNCTION__);
$testModuleDirectory = ucfirst(__FUNCTION__);
/** The content of metadata.php and $expectedModuleData must match */
$metaDataFilePath = __DIR__ . DIRECTORY_SEPARATOR . 'TestData' . DIRECTORY_SEPARATOR . $moduleDirectory . DIRECTORY_SEPARATOR . 'metadata.php';
$metaDataFilePath = $this->getMetaDataFilePath($testModuleDirectory);
$expectedModuleData = [
'extend' => [
'OxidEsales\Eshop\Application\Model\Payment' => 'OxidEsales\EshopCommunity\Tests\Integration\Internal\Module\MetaData\TestData\TestModuleWithPartialMetaData\Payment',
Expand Down Expand Up @@ -259,7 +258,7 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
/**
* The module directory name should be set as the module ID is missing in metadata.
*/
$this->assertEquals($moduleDirectory, $moduleConfiguration->getId());
$this->assertEquals($testModuleDirectory, $moduleConfiguration->getId());
/**
* Additionally an event should have been fired, which mentions the missing Id and is of level ERROR
*/
Expand All @@ -277,7 +276,7 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
$this->assertEquals([], $settings[ModuleSetting::CONTROLLERS]);
$this->assertEquals([], $settings[ModuleSetting::TEMPLATES]);
$this->assertEquals('', $settings[ModuleSetting::VERSION]);
$this->assertEquals($moduleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
$this->assertEquals($testModuleDirectory . DIRECTORY_SEPARATOR, $settings[ModuleSetting::PATH]);
$this->assertEquals([], $settings[ModuleSetting::TEMPLATE_BLOCKS]);
$this->assertEquals([], $settings[ModuleSetting::SHOP_MODULE_SETTING]);
$this->assertEquals([], $settings[ModuleSetting::EVENTS]);
Expand All @@ -292,9 +291,9 @@ function (InvalidMetaDataEvent $event) use (&$errorLevel, &$message) {
*/
public function testModuleWithSurplusData()
{
$moduleDirectory = $moduleId = ucfirst(__FUNCTION__);
$testModuleDirectory = $moduleId = ucfirst(__FUNCTION__);
/** The content of metadata.php and $expectedModuleData must match */
$metaDataFilePath = __DIR__ . DIRECTORY_SEPARATOR . 'TestData' . DIRECTORY_SEPARATOR . $moduleDirectory . DIRECTORY_SEPARATOR . 'metadata.php';
$metaDataFilePath = $this->getMetaDataFilePath($testModuleDirectory);
$expectedModuleData = [
'id' => $moduleId,
];
Expand Down Expand Up @@ -345,5 +344,17 @@ private function getCompiledTestContainer(): \Symfony\Component\DependencyInject

return $container;
}

/**
* @param string $testModuleDirectory
*
* @return string
*/
private function getMetaDataFilePath(string $testModuleDirectory): string
{
$metaDataFilePath = __DIR__ . DIRECTORY_SEPARATOR . 'TestData' . DIRECTORY_SEPARATOR . $testModuleDirectory . DIRECTORY_SEPARATOR . 'metadata.php';

return $metaDataFilePath;
}
}

0 comments on commit b7d6729

Please sign in to comment.