1
1
package fr .adrienbrault .idea .symfony2plugin .tests .completion .xml ;
2
2
3
3
import com .intellij .ide .highlighter .XmlFileType ;
4
+ import com .intellij .patterns .PlatformPatterns ;
4
5
import fr .adrienbrault .idea .symfony2plugin .tests .SymfonyLightCodeInsightFixtureTestCase ;
5
6
6
7
import java .io .File ;
@@ -16,6 +17,7 @@ public void setUp() throws Exception {
16
17
super .setUp ();
17
18
myFixture .configureByText ("config_foo.xml" , "<foo/>" );
18
19
myFixture .copyFileToProject ("services.xml" );
20
+ myFixture .copyFileToProject ("routes.xml" );
19
21
myFixture .copyFileToProject ("XmlGotoCompletionRegistrar.php" );
20
22
}
21
23
@@ -78,4 +80,42 @@ public void testThatClassFactoryMethodAttributeProvidesCompletion() {
78
80
"create"
79
81
);
80
82
}
83
+
84
+ public void testThatRouteInsideRouteDefaultKeyCompletedAndNavigable () {
85
+ assertCompletionContains (XmlFileType .INSTANCE , "" +
86
+ " <route id=\" root\" path=\" /wp-admin\" >\n " +
87
+ " <default key=\" route\" ><caret></default>\n " +
88
+ " </route>" ,
89
+ "foo_route"
90
+ );
91
+
92
+ assertNavigationMatch (XmlFileType .INSTANCE , "" +
93
+ " <route id=\" root\" path=\" /wp-admin\" >\n " +
94
+ " <default key=\" route\" >foo_<caret>route</default>\n " +
95
+ " </route>"
96
+ );
97
+ }
98
+
99
+ public void testThatTemplateInsideRouteDefaultKeyCompletedAndNavigable () {
100
+ if (System .getenv ("PHPSTORM_ENV" ) != null ) return ;
101
+
102
+ try {
103
+ createDummyFiles ("app/Resources/views/foo.html.twig" );
104
+ } catch (Exception e ) {
105
+ e .printStackTrace ();
106
+ }
107
+
108
+ assertCompletionContains (XmlFileType .INSTANCE , "" +
109
+ " <route id=\" root\" path=\" /wp-admin\" >\n " +
110
+ " <default key=\" template\" ><caret></default>\n " +
111
+ " </route>" ,
112
+ "foo.html.twig"
113
+ );
114
+
115
+ assertNavigationMatch (XmlFileType .INSTANCE , "" +
116
+ " <route id=\" root\" path=\" /wp-admin\" >\n " +
117
+ " <default key=\" template\" >foo.ht<caret>ml.twig</default>\n " +
118
+ " </route>"
119
+ );
120
+ }
81
121
}
0 commit comments