Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Magento_C<caret>"/>
</config>
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Magento_Theme">
<sequence>
<module name="Magento_C<caret>"/>
</sequence>
</module>
</config>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Magento_Catalog<caret>"/>
</config>
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Magento_Catalog">
<sequence>
<module name="Magento_Config<caret>"/>
</sequence>
</module>
</config>
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/*
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/

package com.magento.idea.magento2plugin.completion.xml;

public class ModuleNameCompletionRegistrarTest extends CompletionXmlFixtureTestCase {
private static final String[] LOOKUP_MODULE_NAMES = {
"Magento_Catalog",
"Magento_Config"
};

/**
* Tests for module name completion in module.xml
*/
public void testModuleNameMustHaveCompletion() {
final String filePath = this.getFixturePath("module.xml");
myFixture.copyFileToProject(filePath);

assertFileContainsCompletions(filePath, LOOKUP_MODULE_NAMES);
}

/**
* Tests for module name completion under the sequence node in module.xml
*/
public void testSequenceModuleNameMustHaveCompletion() {
final String filePath = this.getFixturePath("module.xml");
myFixture.copyFileToProject(filePath);

assertFileContainsCompletions(filePath, LOOKUP_MODULE_NAMES);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiReference;
import com.intellij.psi.ResolveResult;
import com.intellij.psi.impl.file.PsiDirectoryImpl;
import com.intellij.psi.xml.XmlAttributeValue;
import com.intellij.psi.xml.XmlFile;
import com.intellij.psi.xml.XmlTag;
Expand Down Expand Up @@ -113,6 +114,20 @@ protected void assertHasReferenceToXmlFile(final String fileName) {
fail(String.format(referenceNotFound, fileName));
}

protected void assertHasReferenceToDirectory(final String directoryName) {
for (final PsiReference psiReference : getElementFromCaret().getReferences()) {
final PsiElement resolvedElement = psiReference.resolve();
if (resolvedElement instanceof PsiDirectoryImpl
&& ((PsiDirectoryImpl) resolvedElement).getName().equals(directoryName)) {
return;
}
}

final String referenceNotFound
= "Failed that element contains reference to the directory `%s`";
fail(String.format(referenceNotFound, directoryName));
}

@SuppressWarnings("PMD")
protected void assertHasReferencePhpClass(final String phpClassFqn) {
final PsiElement element = getElementFromCaret();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/*
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/

package com.magento.idea.magento2plugin.reference.xml;

public class ModuleNameReferenceRegistrarTest extends ReferenceXmlFixtureTestCase {

/**
* Tests for module name reference in module.xml
*/
public void testModuleNameMustHaveReference() {
myFixture.configureByFile(this.getFixturePath("module.xml"));

assertHasReferenceToDirectory("module-catalog");
}

/**
* Tests for module name reference under sequence node in module.xml
*/
public void testSequenceModuleNameMustHaveReference() {
myFixture.configureByFile(this.getFixturePath("module.xml"));

assertHasReferenceToDirectory("module-config");
}
}