Fix ResourceHintsWriter for leading/trailing wildcards

Closes gh-28597
This commit is contained in:
Sébastien Deleuze
2022-06-09 14:31:21 +02:00
parent 40ab20e14a
commit 99ffd97a72
2 changed files with 35 additions and 2 deletions

View File

@@ -57,7 +57,21 @@ public class ResourceHintsWriterTests {
}
@Test
void registerPattern() throws JSONException {
void registerWildcardAtTheBeginningPattern() throws JSONException {
ResourceHints hints = new ResourceHints();
hints.registerPattern("*.properties");
assertEquals("""
{
"resources": {
"includes": [
{ "pattern": ".*\\\\Q.properties\\\\E"}
]
}
}""", hints);
}
@Test
void registerWildcardInTheMiddlePattern() throws JSONException {
ResourceHints hints = new ResourceHints();
hints.registerPattern("com/example/*.properties");
assertEquals("""
@@ -70,6 +84,20 @@ public class ResourceHintsWriterTests {
}""", hints);
}
@Test
void registerWildcardAtTheEndPattern() throws JSONException {
ResourceHints hints = new ResourceHints();
hints.registerPattern("static/*");
assertEquals("""
{
"resources": {
"includes": [
{ "pattern": "\\\\Qstatic/\\\\E.*"}
]
}
}""", hints);
}
@Test
void registerPatternWithIncludesAndExcludes() throws JSONException {
ResourceHints hints = new ResourceHints();