package fr.adrienbrault.idea.symfony2plugin.tests.dic.inspection; import fr.adrienbrault.idea.symfony2plugin.tests.SymfonyLightCodeInsightFixtureTestCase; import org.jetbrains.yaml.YAMLFileType; import java.io.File; /** * @author Daniel Espendiller <daniel@espendiller.net> * @see fr.adrienbrault.idea.symfony2plugin.dic.inspection.ContainerConstantInspection */ public class ContainerConstantInspectionTest extends SymfonyLightCodeInsightFixtureTestCase { public void setUp() throws Exception { super.setUp(); myFixture.copyFileToProject("classes.php"); } public String getTestDataPath() { return new File(this.getClass().getResource("fixtures").getFile()).getAbsolutePath(); } public void testConstantInspectionForYamlFiles() { assertLocalInspectionContains( "foo.yml", "bar: !php/const:\\Foobar\\Car::FOOB<caret>AR_1", "Symfony: constant not found" ); assertLocalInspectionNotContains( "foo.yml", "bar: !php/const:\\Foobar\\Car::FOOB<caret>AR", "Symfony: constant not found" ); } public void testConstantInspectionForXmlFiles() { assertLocalInspectionContains("service.xml", "<container>\n" + " <services>\n" + " <service id=\"foo\" class=\"DateTime\">\n" + " <argument type=\"constant\">\\Foobar\\Car::FOOB<caret>AR_1</argument>" + " </service>\n" + " </services>\n" + "</container>\n", "Symfony: constant not found" ); assertLocalInspectionNotContains("service.xml", "<container>\n" + " <services>\n" + " <service id=\"foo\" class=\"DateTime\">\n" + " <argument type=\"constant\">\\Foobar\\Car::FOOB<caret>AR</argument>" + " </service>\n" + " </services>\n" + "</container>\n", "Symfony: constant not found" ); assertLocalInspectionNotContains("service.xml", "<container>\n" + " <services>\n" + " <service id=\"foo\" class=\"DateTime\">\n" + " <argument type=\"constant\">Foobar\\Car::FOOB<caret>AR</argument>" + " </service>\n" + " </services>\n" + "</container>\n", "Symfony: constant not found" ); } }