Skip to content

Commit 6fa278d

Browse files
author
Vitaliy
authored
Merge pull request #211 from magento/190-cover-module-xml-generator-by-test
Covered module.xml generator by test
2 parents bbfc2eb + 2455ea8 commit 6fa278d

File tree

4 files changed

+80
-1
lines changed

4 files changed

+80
-1
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
4+
<module name="Test_Module"/>
5+
</config>
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0"?>
2+
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
4+
<module name="Test_Module"/>
5+
</config>

tests/com/magento/idea/magento2plugin/actions/generation/generator/BaseGeneratorTestCase.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@
44
*/
55
package com.magento.idea.magento2plugin.actions.generation.generator;
66

7+
import com.intellij.psi.PsiDirectory;
78
import com.intellij.psi.PsiFile;
89
import com.magento.idea.magento2plugin.BaseProjectTestCase;
9-
import java.io.File;
10+
import com.magento.idea.magento2plugin.magento.packages.File;
11+
import com.magento.idea.magento2plugin.project.util.GetProjectBasePath;
1012

1113
abstract public class BaseGeneratorTestCase extends BaseProjectTestCase {
1214
private static final String testDataFolderPath = "testData" + File.separator + "actions" + File.separator;
@@ -32,4 +34,10 @@ protected void assertGeneratedFileIsCorrect(
3234
assertEquals(expectedFile.getText(), resultFile.getText());
3335
assertEquals(expectedFile.getName(), resultFile.getName());
3436
}
37+
38+
protected PsiDirectory getProjectDirectory() {
39+
return myFixture.getPsiManager().findDirectory(
40+
GetProjectBasePath.execute(myFixture.getProject())
41+
);
42+
}
3543
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
/*
2+
* Copyright © Magento, Inc. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
package com.magento.idea.magento2plugin.actions.generation.generator;
6+
7+
import com.intellij.openapi.project.Project;
8+
import com.intellij.psi.PsiDirectory;
9+
import com.intellij.psi.PsiFile;
10+
import com.magento.idea.magento2plugin.actions.generation.data.ModuleXmlData;
11+
import com.magento.idea.magento2plugin.magento.files.ModuleXml;
12+
import com.magento.idea.magento2plugin.magento.packages.File;
13+
import com.magento.idea.magento2plugin.magento.packages.Package;
14+
15+
public class ModuleXmlGeneratorTest extends BaseGeneratorTestCase {
16+
17+
public void testGenerateModuleFile() {
18+
String filePath = this.getFixturePath(ModuleXml.FILE_NAME);
19+
PsiFile expectedFile = myFixture.configureByFile(filePath);
20+
PsiDirectory projectDir = getProjectDirectory();
21+
22+
Project project = myFixture.getProject();
23+
ModuleXmlData moduleXmlData = new ModuleXmlData(
24+
"Test",
25+
"Module",
26+
projectDir,
27+
true
28+
);
29+
ModuleXmlGenerator moduleXmlGenerator = new ModuleXmlGenerator(moduleXmlData, project);
30+
PsiFile moduleXml = moduleXmlGenerator.generate("test");
31+
32+
assertGeneratedFileIsCorrect(
33+
expectedFile,
34+
projectDir.getVirtualFile().getPath() +
35+
"/Test/Module" + File.separator + Package.MODULE_BASE_AREA_DIR,
36+
moduleXml
37+
);
38+
}
39+
40+
public void testGenerateFileInRoot() {
41+
String filePath = this.getFixturePath(ModuleXml.FILE_NAME);
42+
PsiFile expectedFile = myFixture.configureByFile(filePath);
43+
PsiDirectory projectDir = getProjectDirectory();
44+
45+
Project project = myFixture.getProject();
46+
ModuleXmlData moduleXmlData = new ModuleXmlData(
47+
"Test",
48+
"Module",
49+
projectDir,
50+
false
51+
);
52+
ModuleXmlGenerator moduleXmlGenerator = new ModuleXmlGenerator(moduleXmlData, project);
53+
PsiFile moduleXml = moduleXmlGenerator.generate("test");
54+
55+
assertGeneratedFileIsCorrect(
56+
expectedFile,
57+
projectDir.getVirtualFile().getPath() + File.separator + Package.MODULE_BASE_AREA_DIR,
58+
moduleXml
59+
);
60+
}
61+
}

0 commit comments

Comments
 (0)