Add explicit language versions (#4120)
This commit is contained in:
@@ -20,12 +20,21 @@ public class VfLanguageModule extends SimpleLanguageModuleBase {
|
||||
public static final String TERSE_NAME = "vf";
|
||||
|
||||
public VfLanguageModule() {
|
||||
super(LanguageMetadata.withId(TERSE_NAME).name(NAME)
|
||||
.extensions("page", "component")
|
||||
.dependsOnLanguage(ApexLanguageModule.TERSE_NAME),
|
||||
super(createMetdata(),
|
||||
p -> new VfHandler((VfLanguageProperties) p));
|
||||
}
|
||||
|
||||
private static LanguageMetadata createMetdata() {
|
||||
LanguageMetadata languageMetadata = LanguageMetadata.withId(TERSE_NAME).name(NAME)
|
||||
.extensions("page", "component")
|
||||
.dependsOnLanguage(ApexLanguageModule.TERSE_NAME);
|
||||
// use the same versions as in Apex
|
||||
int lastVersion = ApexLanguageModule.VERSIONS.size() - 1;
|
||||
ApexLanguageModule.VERSIONS.subList(0, lastVersion).forEach(languageMetadata::addVersion);
|
||||
languageMetadata.addDefaultVersion(ApexLanguageModule.VERSIONS.get(lastVersion));
|
||||
return languageMetadata;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LanguagePropertyBundle newPropertyBundle() {
|
||||
return new VfLanguageProperties();
|
||||
|
||||
@@ -8,11 +8,13 @@ import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
|
||||
import net.sourceforge.pmd.AbstractLanguageVersionTest;
|
||||
import net.sourceforge.pmd.lang.apex.ApexLanguageModule;
|
||||
|
||||
class LanguageVersionTest extends AbstractLanguageVersionTest {
|
||||
|
||||
static Collection<TestDescriptor> data() {
|
||||
return Arrays.asList(new TestDescriptor(VfLanguageModule.NAME, VfLanguageModule.TERSE_NAME, "",
|
||||
getLanguage(VfLanguageModule.NAME).getDefaultVersion()));
|
||||
return Arrays.asList(new TestDescriptor(VfLanguageModule.NAME, VfLanguageModule.TERSE_NAME,
|
||||
ApexLanguageModule.getInstance().getDefaultVersion().getVersion(),
|
||||
getLanguage(VfLanguageModule.NAME).getDefaultVersion()));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user