| Index: lib/src/prism/tests/languages/apacheconf/directive-block_feature.test
|
| diff --git a/lib/src/prism/tests/languages/apacheconf/directive-block_feature.test b/lib/src/prism/tests/languages/apacheconf/directive-block_feature.test
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..1af6addd4291ada7f0734dee0ba1b79ad553c9d8
|
| --- /dev/null
|
| +++ b/lib/src/prism/tests/languages/apacheconf/directive-block_feature.test
|
| @@ -0,0 +1,469 @@
|
| +<AuthnProviderAlias file file2>
|
| +</AuthnProviderAlias>
|
| +<AuthzProviderAlias ldap-group ldap-group-alias1 "cn=my-group,o=ctx">
|
| +</AuthzProviderAlias>
|
| +<Directory "/webpages/secure">
|
| +</Directory>
|
| +<DirectoryMatch "^/www/(.+/)?[0-9]{3}">
|
| +</DirectoryMatch>
|
| +<Else>
|
| +</Else>
|
| +<ElseIf "-R '10.0.0.0/8'">
|
| +</ElseIf>
|
| +<Files ~ "\.(gif|jpe?g|png)$">
|
| +</Files>
|
| +<FilesMatch ".+\.(gif|jpe?g|png)$">
|
| +</FilesMatch>
|
| +<If "-z req('Host')">
|
| +</If>
|
| +<IfDefine !MemCache>
|
| +</IfDefine>
|
| +<IfModule mod_rewrite.c>
|
| +</IfModule>
|
| +<IfVersion 2.1.0>
|
| +</IfVersion>
|
| +<Limit POST PUT DELETE>
|
| +</Limit>
|
| +<LimitExcept POST GET>
|
| +</LimitExcept>
|
| +<Location /private1>
|
| +</Location>
|
| +<LocationMatch "/(extra|special)/data">
|
| +</LocationMatch>
|
| +<Macro LocalAccessPolicy>
|
| +</Macro>
|
| +<Proxy "*">
|
| +</Proxy>
|
| +<RequireAll>
|
| +</RequireAll>
|
| +<RequireAny>
|
| +</RequireAny>
|
| +<RequireNone>
|
| +</RequireNone>
|
| +<VirtualHost [2001:db8::a00:20ff:fea7:ccea]:80>
|
| +</VirtualHost>
|
| +
|
| +----------------------------------------------------
|
| +
|
| +[
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "AuthnProviderAlias"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " file file2"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "AuthnProviderAlias"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "AuthzProviderAlias"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " ldap-group ldap-group-alias1 ",
|
| + ["string", [
|
| + "\"cn=my-group,o=ctx\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "AuthzProviderAlias"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Directory"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"/webpages/secure\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Directory"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "DirectoryMatch"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"^/www/(.+/)?[0-9]{3}\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "DirectoryMatch"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Else"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Else"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "ElseIf"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"-R '10.0.0.0/8'\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "ElseIf"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Files"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " ~ ",
|
| + ["string", [
|
| + "\"\\.(gif|jpe?g|png)$\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Files"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "FilesMatch"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\".+\\.(gif|jpe?g|png)$\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "FilesMatch"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "If"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"-z req('Host')\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "If"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "IfDefine"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " !MemCache"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "IfDefine"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "IfModule"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " mod_rewrite.c"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "IfModule"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "IfVersion"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " 2.1.0"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "IfVersion"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Limit"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " POST PUT DELETE"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Limit"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "LimitExcept"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " POST GET"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "LimitExcept"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Location"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " /private1"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Location"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "LocationMatch"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"/(extra|special)/data\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "LocationMatch"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Macro"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " LocalAccessPolicy"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Macro"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "Proxy"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + ["string", [
|
| + "\"*\""
|
| + ]]
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "Proxy"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "RequireAll"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "RequireAll"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "RequireAny"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "RequireAny"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "RequireNone"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "RequireNone"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| +
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "<"],
|
| + "VirtualHost"
|
| + ]],
|
| + ["directive-block-parameter", [
|
| + " [2001",
|
| + ["punctuation", ":"],
|
| + "db8",
|
| + ["punctuation", ":"],
|
| + ["punctuation", ":"],
|
| + "a00",
|
| + ["punctuation", ":"],
|
| + "20ff",
|
| + ["punctuation", ":"],
|
| + "fea7",
|
| + ["punctuation", ":"],
|
| + "ccea]",
|
| + ["punctuation", ":"],
|
| + "80"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]],
|
| + ["directive-block", [
|
| + ["directive-block", [
|
| + ["punctuation", "</"],
|
| + "VirtualHost"
|
| + ]],
|
| + ["punctuation", ">"]
|
| + ]]
|
| +]
|
| +
|
| +----------------------------------------------------
|
| +
|
| +Checks for directive blocks.
|
|
|