diff --git a/build.gradle.kts b/build.gradle.kts index 15883ab3d6..885aec0c7b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,8 @@ import org.gradle.api.tasks.testing.logging.TestExceptionFormat import org.gradle.api.tasks.testing.logging.TestLogEvent +import org.jetbrains.intellij.platform.gradle.Constants.Tasks.INSTRUMENT_CODE import org.jetbrains.intellij.platform.gradle.TestFrameworkType +import org.jetbrains.intellij.platform.gradle.tasks.InstrumentCodeTask import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.kt3k.gradle.plugin.coveralls.CoverallsTask @@ -34,7 +36,7 @@ buildscript { plugins { id("idea") id("jacoco") - id("org.jetbrains.intellij.platform") version "2.0.1" + id("org.jetbrains.intellij.platform") version "2.2.0" id("org.jetbrains.grammarkit") version "2022.3.2.2" id("com.github.kt3k.coveralls") version "2.12.2" id("org.sonarqube") version "6.0.1.5171" @@ -124,6 +126,8 @@ allprojects { maxHeapSize = "2048m" outputs.upToDateWhen { false } + ignoreFailures = false + if (project.hasProperty("overwrite")) { systemProperty("idea.tests.overwrite.data", "true") } @@ -200,13 +204,18 @@ allprojects { buildSearchableOptions { enabled = false } + prepareJarSearchableOptions { + enabled = false + } verifyPlugin { enabled = false } + verifyPluginProjectConfiguration { + enabled = false + } publishPlugin { enabled = false } - } if (isPlugin) { publishPlugin { @@ -244,14 +253,29 @@ tasks { it.tasks.named("jacocoTestReport").map { task -> task.executionData } }) - executionData(File("coverage").walkTopDown().filter { it.extension == "exec" }.toList()) + val files = File("coverage").walkTopDown().filter { it.extension == "exec" }.toList() - additionalSourceDirs.setFrom(allprojects.map { - it.sourceSets.main.map { sourceSet -> sourceSet.allSource.srcDirs } - }) - sourceDirectories.setFrom(allprojects.map { + println("\nFound following coverage data files:") + files.sorted().forEach { println(it) } + + executionData(files) + + val sourcesDirs = allprojects.map { it.sourceSets.main.map { sourceSet -> sourceSet.allSource.srcDirs } - }) + } + println("\nFound following source dirs:") + sourcesDirs.flatMap { it.get().asSequence() }.sorted().forEach { println(it) } + + additionalSourceDirs.setFrom(sourcesDirs) + sourceDirectories.setFrom(sourcesDirs) + + val classDirs = allprojects.map { + it.tasks.named(INSTRUMENT_CODE).map { it -> it.outputDirectory } + } + println("\nFound following class dirs:") + classDirs.map { it.get().get().toString() }.sorted().forEach { println(it) } + + classDirectories.from(classDirs) reports { html.required.set(true) // human readable diff --git a/embedded/src/test/java/unit/EmbeddedPerlTestEnvironmentTest.kt b/embedded/src/test/java/unit/EmbeddedPerlTestEnvironmentTest.kt new file mode 100644 index 0000000000..c74fea3014 --- /dev/null +++ b/embedded/src/test/java/unit/EmbeddedPerlTestEnvironmentTest.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class EmbeddedPerlTestEnvironmentTest : PerlTestEnvironmentTestCase() \ No newline at end of file diff --git a/embedded/src/test/resources/plugins/pluginsList.txt b/embedded/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..2841fe766b --- /dev/null +++ b/embedded/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,76 @@ +ByteCodeViewer +Coverage +Git4Idea +HtmlTools +JUnit +PerforceDirectPlugin +Subversion +TestNG-J +com.intellij +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.dev +com.intellij.gradle +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.ko +com.intellij.llmInstaller +com.intellij.marketplace +com.intellij.marketplace.ml +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.properties +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.tasks +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.sh +com.jetbrains.station +com.perl5 +com.perl5.lang.embedded +hg4idea +intellij.indexing.shared.core +intellij.platform.ijent.impl +intellij.webp +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.qodana +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.maven +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training \ No newline at end of file diff --git a/mason/htmlmason/src/test/java/unit/HtmlMasonTestEnvironmentTest.kt b/mason/htmlmason/src/test/java/unit/HtmlMasonTestEnvironmentTest.kt new file mode 100644 index 0000000000..c5f2d6bb54 --- /dev/null +++ b/mason/htmlmason/src/test/java/unit/HtmlMasonTestEnvironmentTest.kt @@ -0,0 +1,23 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class HtmlMasonTestEnvironmentTest : PerlTestEnvironmentTestCase() { + override fun getTestLibPath(): String = TEST_LIB_PATH_FROM_NESTED +} \ No newline at end of file diff --git a/mason/htmlmason/src/test/resources/plugins/pluginsList.txt b/mason/htmlmason/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..e19bbf9cc0 --- /dev/null +++ b/mason/htmlmason/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,77 @@ +ByteCodeViewer +Coverage +Git4Idea +HtmlTools +JUnit +PerforceDirectPlugin +Subversion +TestNG-J +com.intellij +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.dev +com.intellij.gradle +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.ko +com.intellij.llmInstaller +com.intellij.marketplace +com.intellij.marketplace.ml +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.properties +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.tasks +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.sh +com.jetbrains.station +com.perl5 +com.perl5.lang.mason.framework +com.perl5.lang.mason.htmlmason +hg4idea +intellij.indexing.shared.core +intellij.platform.ijent.impl +intellij.webp +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.qodana +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.maven +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training \ No newline at end of file diff --git a/mason/mason2/src/test/java/unit/Mason2TestEnvironmentTest.kt b/mason/mason2/src/test/java/unit/Mason2TestEnvironmentTest.kt new file mode 100644 index 0000000000..fec2decb78 --- /dev/null +++ b/mason/mason2/src/test/java/unit/Mason2TestEnvironmentTest.kt @@ -0,0 +1,23 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class Mason2TestEnvironmentTest : PerlTestEnvironmentTestCase() { + override fun getTestLibPath(): String = TEST_LIB_PATH_FROM_NESTED +} \ No newline at end of file diff --git a/mason/mason2/src/test/resources/plugins/pluginsList.txt b/mason/mason2/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..b2256090cd --- /dev/null +++ b/mason/mason2/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,77 @@ +ByteCodeViewer +Coverage +Git4Idea +HtmlTools +JUnit +PerforceDirectPlugin +Subversion +TestNG-J +com.intellij +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.dev +com.intellij.gradle +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.ko +com.intellij.llmInstaller +com.intellij.marketplace +com.intellij.marketplace.ml +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.properties +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.tasks +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.sh +com.jetbrains.station +com.perl5 +com.perl5.lang.mason.framework +com.perl5.lang.mason.mason2 +hg4idea +intellij.indexing.shared.core +intellij.platform.ijent.impl +intellij.webp +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.qodana +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.maven +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training \ No newline at end of file diff --git a/mojo/src/test/java/unit/MojoTestEnvironmentTest.kt b/mojo/src/test/java/unit/MojoTestEnvironmentTest.kt new file mode 100644 index 0000000000..2ab54264d0 --- /dev/null +++ b/mojo/src/test/java/unit/MojoTestEnvironmentTest.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class MojoTestEnvironmentTest : PerlTestEnvironmentTestCase() \ No newline at end of file diff --git a/mojo/src/test/resources/highlighting/syntax/template/mixed.ep.txt b/mojo/src/test/resources/highlighting/syntax/template/mixed.ep.txt index 573d4bde4e..42a3160684 100644 --- a/mojo/src/test/resources/highlighting/syntax/template/mixed.ep.txt +++ b/mojo/src/test/resources/highlighting/syntax/template/mixed.ep.txt @@ -56,6 +56,7 @@ title HTML_TAG => DEFAULT_TAG => TEXT Simple HTML_CODE => TEXT + XML_TAG_DATA => TEXT TEXT HTML_TAG => DEFAULT_TAG => TEXT @@ -102,6 +103,7 @@ body HTML_TAG => DEFAULT_TAG => TEXT Time: HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -222,15 +224,18 @@ body HTML_CODE => TEXT test HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT 123 HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT foo HTML_CODE => TEXT + XML_TAG_DATA => TEXT <% PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT my @@ -271,14 +276,17 @@ for PERL_BRACES => DEFAULT_BRACES * HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT some HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT text HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -384,10 +392,12 @@ Trim all whitespace characters around this expression PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT This HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT is HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT 1 @@ -400,25 +410,30 @@ is PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT a\ HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT single HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT line HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT This HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT will HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT 1 @@ -431,20 +446,24 @@ will PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT result\\ HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT in HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT multiple\\ HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT lines HTML_CODE => TEXT + XML_TAG_DATA => TEXT <% PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT my @@ -477,6 +496,7 @@ shift PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT Hello HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -487,6 +507,7 @@ name PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT . HTML_CODE => TEXT + XML_TAG_DATA => TEXT <% PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT end @@ -515,18 +536,22 @@ Baerbel PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT spaces HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT should HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT be HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT after HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -549,48 +574,58 @@ Wolfgang PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT non-spaces HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT spaces HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT should HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT be HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT before HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT some HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT % HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT < HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT unparen HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT > HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -653,6 +688,7 @@ shift PERL_SEMICOLON => DEFAULT_SEMICOLON Hello HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -663,6 +699,7 @@ name PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT . HTML_CODE => TEXT + XML_TAG_DATA => TEXT % PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT end @@ -751,10 +788,12 @@ shift PERL_SEMICOLON => DEFAULT_SEMICOLON test HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT 123 HTML_CODE => TEXT + XML_TAG_DATA => TEXT <%= PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT $ @@ -779,10 +818,12 @@ begin PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT Some HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT data! HTML_CODE => TEXT + XML_TAG_DATA => TEXT <% PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT end @@ -811,22 +852,27 @@ foo HTML_CODE => TEXT my HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT $foo HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT = HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT 23; HTML_CODE => TEXT + XML_TAG_DATA => TEXT HTML_CODE => TEXT %> HTML_CODE => TEXT + XML_TAG_DATA => TEXT <% PERL_EMBED_MARKER => DEFAULT_TEMPLATE_LANGUAGE_COLOR => TEXT say diff --git a/mojo/src/test/resources/plugins/pluginsList.txt b/mojo/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..47d0a6c9ac --- /dev/null +++ b/mojo/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,168 @@ +AngularJS +ByteCodeViewer +Coverage +Docker +Git4Idea +HtmlTools +JBoss +JSIntentionPowerPack +JUnit +JavaScript +JavaScriptDebugger +Karma +Lombook Plugin +NodeJS +PerforceDirectPlugin +Refactor-X +Remote Development Server +Subversion +TestNG-J +Tomcat +XPathView +com.deadlock.scsyntax +com.intellij +com.intellij.LineProfiler +com.intellij.analysis.pwa +com.intellij.analysis.pwa.java +com.intellij.aop +com.intellij.beanValidation +com.intellij.cdi +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.cron +com.intellij.css +com.intellij.database +com.intellij.dev +com.intellij.diagram +com.intellij.dsm +com.intellij.flyway +com.intellij.freemarker +com.intellij.gradle +com.intellij.grpc +com.intellij.hibernate +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.javaee +com.intellij.javaee.app.servers.integration +com.intellij.javaee.el +com.intellij.javaee.extensions +com.intellij.javaee.gradle +com.intellij.javaee.jakarta.data +com.intellij.javaee.jpa +com.intellij.javaee.reverseEngineering +com.intellij.javaee.web +com.intellij.jpa.jpb.model +com.intellij.jsonpath +com.intellij.jsp +com.intellij.ko +com.intellij.kubernetes +com.intellij.liquibase +com.intellij.llmInstaller +com.intellij.marketplace.ml +com.intellij.micronaut +com.intellij.microservices.jvm +com.intellij.microservices.ui +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.persistence +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.plugins.webcomponents +com.intellij.properties +com.intellij.quarkus +com.intellij.react +com.intellij.reactivestreams +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.spring +com.intellij.spring.boot +com.intellij.spring.boot.initializr +com.intellij.spring.cloud +com.intellij.spring.data +com.intellij.spring.integration +com.intellij.spring.messaging +com.intellij.spring.mvc +com.intellij.spring.security +com.intellij.stylelint +com.intellij.swagger +com.intellij.tailwindcss +com.intellij.tasks +com.intellij.tasks.timeTracking +com.intellij.thymeleaf +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.velocity +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.gateway +com.jetbrains.gateway.terminal +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.plugins.webDeployment +com.jetbrains.restClient +com.jetbrains.restWebServices +com.jetbrains.sh +com.jetbrains.station +com.perl5 +com.perl5.lang.mojo +hg4idea +idea.plugin.protoeditor +intellij.caches.shared +intellij.charts +intellij.grid.core.impl +intellij.grid.impl +intellij.indexing.shared +intellij.indexing.shared.core +intellij.ktor +intellij.nextjs +intellij.platform.ijent.impl +intellij.prettierJS +intellij.vitejs +intellij.webp +intellij.webpack +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.plugins.postcss +org.intellij.qodana +org.jetbrains.completion.full.line +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.gradle.ext +org.jetbrains.idea.maven +org.jetbrains.idea.maven.ext +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.docker.gateway +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.less +org.jetbrains.plugins.node-remote-interpreter +org.jetbrains.plugins.remote-run +org.jetbrains.plugins.sass +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.vue +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training +tslint \ No newline at end of file diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 4a3af2f54a..5b2586c0c7 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -83,6 +83,7 @@ dependencies { } + tasks { buildPlugin { archiveBaseName.set("lang.perl5") @@ -94,4 +95,13 @@ tasks { intoChild(intellijPlatform.projectName.map { projectName -> "$projectName/perl" }) .from(file("scripts")) } + + test { + dependencies { + intellijPlatform { + bundledModule("intellij.platform.coverage.agent") + bundledModule("intellij.profiler.common") + } + } + } } diff --git a/plugin/coverage/build.gradle.kts b/plugin/coverage/build.gradle.kts index 610ee21c85..40aafc18f7 100644 --- a/plugin/coverage/build.gradle.kts +++ b/plugin/coverage/build.gradle.kts @@ -26,5 +26,6 @@ dependencies { val platformVersionProvider: Provider by rootProject.extra create("IC", platformVersionProvider.get(), useInstaller = providers.gradleProperty("useInstaller").get().toBoolean()) bundledPlugins(providers.gradleProperty("coveragePlugin").get()) + bundledModule("intellij.platform.coverage.agent") } } diff --git a/plugin/profiler/build.gradle.kts b/plugin/profiler/build.gradle.kts index 3ead87c53a..5a68166018 100644 --- a/plugin/profiler/build.gradle.kts +++ b/plugin/profiler/build.gradle.kts @@ -26,6 +26,7 @@ dependencies { intellijPlatform { val platformVersionProvider: Provider by rootProject.extra create("IU", platformVersionProvider.get(), useInstaller = properties("useInstaller").get().toBoolean()) + bundledModule("intellij.profiler.common") } } diff --git a/plugin/src/test/java/documentation/PerlQuickDocLinksFollowingTest.java b/plugin/src/test/java/documentation/PerlQuickDocLinksFollowingTest.java index bb7433f92e..2c90f42f8e 100644 --- a/plugin/src/test/java/documentation/PerlQuickDocLinksFollowingTest.java +++ b/plugin/src/test/java/documentation/PerlQuickDocLinksFollowingTest.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2023 Alexandr Evstigneev + * Copyright 2015-2024 Alexandr Evstigneev * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,7 @@ import base.PerlLightTestCase; import categories.Heavy; import org.jetbrains.annotations.NotNull; +import org.junit.Ignore; import org.junit.Test; import org.junit.experimental.categories.Category; @@ -1180,6 +1181,7 @@ protected String getBaseDataPath() { @Test public void testHashErrno() {doTest("%ERRNO");} + @Ignore @Test public void testHook() { doTest538("%{^HOOK}"); } @@ -1192,9 +1194,11 @@ protected String getBaseDataPath() { @Test public void testReCompileRecursionLimit() { doTest538("${^RE_COMPILE_RECURSION_LIMIT}"); } + @Ignore @Test public void testSafeLocales() { doTest538("${^SAFE_LOCALES}"); } + @Ignore @Test public void testScalarInc() { doTest538("$INC"); } diff --git a/plugin/src/test/java/unit/PerlPluginTestEnvironmentTest.kt b/plugin/src/test/java/unit/PerlPluginTestEnvironmentTest.kt new file mode 100644 index 0000000000..7526c292d0 --- /dev/null +++ b/plugin/src/test/java/unit/PerlPluginTestEnvironmentTest.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class PerlPluginTestEnvironmentTest : PerlTestEnvironmentTestCase() \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/heredocOpenerBackref.pl.txt b/plugin/src/test/resources/completion/perl/heredocOpenerBackref.pl.txt index f61158ced0..5534f1c167 100644 --- a/plugin/src/test/resources/completion/perl/heredocOpenerBackref.pl.txt +++ b/plugin/src/test/resources/completion/perl/heredocOpenerBackref.pl.txt @@ -1,57 +1,258 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL Text: MYSUPERMARKER; Tail: null; Type: null; Icon: null; Type Icon: null Lookups: MYSUPERMARKER PsiElement: PsiPerlHeredocOpenerImpl(Perl5: HEREDOC_OPENER) at 0 in heredocOpenerBackref.pl +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -66,4 +267,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/heredocOpenerBare.pl.txt b/plugin/src/test/resources/completion/perl/heredocOpenerBare.pl.txt index 7a2d70f023..9db6a559d0 100644 --- a/plugin/src/test/resources/completion/perl/heredocOpenerBare.pl.txt +++ b/plugin/src/test/resources/completion/perl/heredocOpenerBare.pl.txt @@ -1,57 +1,258 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL Text: MYSUPERMARKER; Tail: null; Type: null; Icon: null; Type Icon: null Lookups: MYSUPERMARKER PsiElement: PsiPerlHeredocOpenerImpl(Perl5: HEREDOC_OPENER) at 0 in heredocOpenerBare.pl +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -66,4 +267,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/heredocOpenerQQ.pl.txt b/plugin/src/test/resources/completion/perl/heredocOpenerQQ.pl.txt index 8e2e39740e..b62c781d0f 100644 --- a/plugin/src/test/resources/completion/perl/heredocOpenerQQ.pl.txt +++ b/plugin/src/test/resources/completion/perl/heredocOpenerQQ.pl.txt @@ -1,57 +1,258 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL Text: MYSUPERMARKER; Tail: null; Type: null; Icon: null; Type Icon: null Lookups: MYSUPERMARKER PsiElement: PsiPerlHeredocOpenerImpl(Perl5: HEREDOC_OPENER) at 0 in heredocOpenerQQ.pl +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -66,4 +267,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/heredocOpenerSQ.pl.txt b/plugin/src/test/resources/completion/perl/heredocOpenerSQ.pl.txt index 322410763c..5fcc86edae 100644 --- a/plugin/src/test/resources/completion/perl/heredocOpenerSQ.pl.txt +++ b/plugin/src/test/resources/completion/perl/heredocOpenerSQ.pl.txt @@ -1,57 +1,258 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL Text: MYSUPERMARKER; Tail: null; Type: null; Icon: null; Type Icon: null Lookups: MYSUPERMARKER PsiElement: PsiPerlHeredocOpenerImpl(Perl5: HEREDOC_OPENER) at 0 in heredocOpenerSQ.pl +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -66,4 +267,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/heredocOpenerXQ.pl.txt b/plugin/src/test/resources/completion/perl/heredocOpenerXQ.pl.txt index 69bccb7054..26cd30370c 100644 --- a/plugin/src/test/resources/completion/perl/heredocOpenerXQ.pl.txt +++ b/plugin/src/test/resources/completion/perl/heredocOpenerXQ.pl.txt @@ -1,57 +1,258 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL Text: MYSUPERMARKER; Tail: null; Type: null; Icon: null; Type Icon: null Lookups: MYSUPERMARKER PsiElement: PsiPerlHeredocOpenerImpl(Perl5: HEREDOC_OPENER) at 0 in heredocOpenerXQ.pl +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -66,4 +267,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/completion/perl/injectMarkers.pl.txt b/plugin/src/test/resources/completion/perl/injectMarkers.pl.txt index 095cb11ecb..defac9ec66 100644 --- a/plugin/src/test/resources/completion/perl/injectMarkers.pl.txt +++ b/plugin/src/test/resources/completion/perl/injectMarkers.pl.txt @@ -1,54 +1,255 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -63,4 +264,7 @@ Text: XPATH; Tail: null; Type: inject with XPath; Icon: /xpath.svg; Type Icon: n String: XPATH Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML - String: YAML \ No newline at end of file + String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK \ No newline at end of file diff --git a/plugin/src/test/resources/formatter/perl/spacing/perl5125.txt b/plugin/src/test/resources/formatter/perl/spacing/perl5125.txt index 1ddf2555a4..8fe6f6d1a0 100644 --- a/plugin/src/test/resources/formatter/perl/spacing/perl5125.txt +++ b/plugin/src/test/resources/formatter/perl/spacing/perl5125.txt @@ -141928,7 +141928,7 @@ END_OF_FUNC if ($verbatim) { my @v = ref($verbatim) eq 'ARRAY' ? @$verbatim : $verbatim; push(@result, " - ") for @v; + ") for @v; } my @c = ref($code) eq 'ARRAY' ? @$code : $code if $code; push(@result,style({'type'=>$type},"$cdata_start\n$_\n$cdata_end")) for @c; diff --git a/plugin/src/test/resources/intellilang/perl/injeciton_markers/markerCompletion.pl.txt b/plugin/src/test/resources/intellilang/perl/injeciton_markers/markerCompletion.pl.txt index d398b67546..a79592da23 100644 --- a/plugin/src/test/resources/intellilang/perl/injeciton_markers/markerCompletion.pl.txt +++ b/plugin/src/test/resources/intellilang/perl/injeciton_markers/markerCompletion.pl.txt @@ -1,54 +1,255 @@ +Text: ACTIONSCRIPT; Tail: null; Type: inject with ActionScript; Icon: /javaScript.svg; Type Icon: null + Lookups: ACTIONSCRIPT + String: ACTIONSCRIPT +Text: AZURE; Tail: null; Type: inject with Azure SQL Database; Icon: /sql.svg; Type Icon: null + Lookups: AZURE + String: AZURE +Text: BIGQUERY; Tail: null; Type: inject with BigQuery; Icon: /sql.svg; Type Icon: null + Lookups: BIGQUERY + String: BIGQUERY +Text: CASSANDRA; Tail: null; Type: inject with Apache Cassandra; Icon: /cassandraFileType.svg; Type Icon: null + Lookups: CASSANDRA + String: CASSANDRA +Text: CLICKHOUSE; Tail: null; Type: inject with ClickHouse; Icon: /sql.svg; Type Icon: null + Lookups: CLICKHOUSE + String: CLICKHOUSE +Text: COCKROACH; Tail: null; Type: inject with CockroachDB; Icon: /sql.svg; Type Icon: null + Lookups: COCKROACH + String: COCKROACH +Text: COOKIE; Tail: null; Type: inject with Cookie; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: COOKIE + String: COOKIE +Text: COUCHBASE; Tail: null; Type: inject with Couchbase Query; Icon: /sql.svg; Type Icon: null + Lookups: COUCHBASE + String: COUCHBASE +Text: CSS; Tail: null; Type: inject with CSS; Icon: /css.svg; Type Icon: null + Lookups: CSS + String: CSS +Text: DB2; Tail: null; Type: inject with IBM Db2 LUW; Icon: /sql.svg; Type Icon: null + Lookups: DB2 + String: DB2 +Text: DB2IS; Tail: null; Type: inject with IBM Db2 iSeries; Icon: /sql.svg; Type Icon: null + Lookups: DB2IS + String: DB2IS +Text: DB2ZOS; Tail: null; Type: inject with IBM Db2 z/OS; Icon: /sql.svg; Type Icon: null + Lookups: DB2ZOS + String: DB2ZOS +Text: DERBY; Tail: null; Type: inject with Apache Derby; Icon: /sql.svg; Type Icon: null + Lookups: DERBY + String: DERBY +Text: DOCKERFILE; Tail: null; Type: inject with Dockerfile; Icon: /DockerFile_1.svg; Type Icon: null + Lookups: DOCKERFILE + String: DOCKERFILE Text: DTD; Tail: null; Type: inject with DTD; Icon: /dtd.svg; Type Icon: null Lookups: DTD String: DTD +Text: ECMA6; Tail: null; Type: inject with ECMAScript 6; Icon: /javaScript.svg; Type Icon: null + Lookups: ECMA6 + String: ECMA6 +Text: EDITOR_CONFIG; Tail: null; Type: inject with EditorConfig; Icon: /editorconfig.svg; Type Icon: null + Lookups: EDITOR_CONFIG + String: EDITOR_CONFIG +Text: EL; Tail: null; Type: inject with EL; Icon: CustomFileType; Type Icon: null + Lookups: EL + String: EL +Text: EXASOL; Tail: null; Type: inject with Exasol; Icon: /sql.svg; Type Icon: null + Lookups: EXASOL + String: EXASOL +Text: FLOWJS; Tail: null; Type: inject with Flow JS; Icon: /javaScript.svg; Type Icon: null + Lookups: FLOWJS + String: FLOWJS +Text: FREEMARKER; Tail: null; Type: inject with FreeMarker; Icon: /freemarker-icon.svg; Type Icon: null + Lookups: FREEMARKER + String: FREEMARKER +Text: GREENPLUM; Tail: null; Type: inject with Greenplum; Icon: /sql.svg; Type Icon: null + Lookups: GREENPLUM + String: GREENPLUM +Text: GROOVY; Tail: null; Type: inject with Groovy; Icon: /groovy_16x16.svg; Type Icon: null + Lookups: GROOVY + String: GROOVY +Text: GSQL; Tail: null; Type: inject with Generic SQL; Icon: /sql.svg; Type Icon: null + Lookups: GSQL + String: GSQL +Text: H2; Tail: null; Type: inject with H2; Icon: /sql.svg; Type Icon: null + Lookups: H2 + String: H2 +Text: HIVEQL; Tail: null; Type: inject with Apache Hive; Icon: /hiveFileType.svg; Type Icon: null + Lookups: HIVEQL + String: HIVEQL +Text: HSQLDB; Tail: null; Type: inject with HSQLDB; Icon: /sql.svg; Type Icon: null + Lookups: HSQLDB + String: HSQLDB Text: HTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: HTML String: HTML +Text: HTTP; Tail: null; Type: inject with HTTP Request; Icon: /http_requests_filetype.svg; Type Icon: null + Lookups: HTTP + String: HTTP Text: IGNORE; Tail: null; Type: inject with .ignore (IgnoreLang); Icon: /ignore_file.svg; Type Icon: null Lookups: IGNORE String: IGNORE Text: JAVA; Tail: null; Type: inject with Java; Icon: /java.svg; Type Icon: null Lookups: JAVA String: JAVA +Text: JPAQL; Tail: null; Type: inject with JPA QL; Icon: /JPA_QL.svg; Type Icon: null + Lookups: JPAQL + String: JPAQL +Text: JQL; Tail: null; Type: inject with JQL; Icon: /jira.svg; Type Icon: null + Lookups: JQL + String: JQL +Text: JQUERYCSS; Tail: null; Type: inject with JQuery-CSS; Icon: /css.svg; Type Icon: null + Lookups: JQUERYCSS + String: JQUERYCSS +Text: JS; Tail: null; Type: inject with JavaScript; Icon: /javaScript.svg; Type Icon: null + Lookups: JS + String: JS Text: JSHELL; Tail: null; Type: inject with JShell Snippet; Icon: /java.svg; Type Icon: null Lookups: JSHELL String: JSHELL Text: JSON; Tail: null; Type: inject with JSON; Icon: /json.svg; Type Icon: null Lookups: JSON String: JSON +Text: JSONPATH; Tail: null; Type: inject with JSONPath; Icon: /json.svg; Type Icon: null + Lookups: JSONPATH + String: JSONPATH +Text: JSP; Tail: null; Type: inject with JSP; Icon: JspFileType; Type Icon: null + Lookups: JSP + String: JSP +Text: JSPX; Tail: null; Type: inject with JSPX; Icon: /jspx.svg; Type Icon: null + Lookups: JSPX + String: JSPX +Text: LESS; Tail: null; Type: inject with Less; Icon: /less.svg; Type Icon: null + Lookups: LESS + String: LESS +Text: LOMBOK; Tail: null; Type: inject with Lombok.Config; Icon: /config.svg; Type Icon: null + Lookups: LOMBOK + String: LOMBOK Text: MANIFEST; Tail: null; Type: inject with Manifest; Icon: /manifest.svg; Type Icon: null Lookups: MANIFEST String: MANIFEST +Text: MARIA; Tail: null; Type: inject with MariaDB; Icon: /sql.svg; Type Icon: null + Lookups: MARIA + String: MARIA Text: MARKDOWN; Tail: null; Type: inject with Markdown; Icon: /MarkdownPlugin.svg; Type Icon: null Lookups: MARKDOWN String: MARKDOWN +Text: METAJSON; Tail: null; Type: inject with Metadata JSON; Icon: null; Type Icon: null + Lookups: METAJSON + String: METAJSON +Text: MONGO; Tail: null; Type: inject with MongoDB; Icon: /sql.svg; Type Icon: null + Lookups: MONGO + String: MONGO +Text: MONGOJS; Tail: null; Type: inject with MongoJS; Icon: /mongoDB.svg; Type Icon: null + Lookups: MONGOJS + String: MONGOJS +Text: MONGOJSON; Tail: null; Type: inject with MongoDB-JSON; Icon: null; Type Icon: null + Lookups: MONGOJSON + String: MONGOJSON +Text: MYSQL; Tail: null; Type: inject with MySQL; Icon: /sql.svg; Type Icon: null + Lookups: MYSQL + String: MYSQL +Text: OSQL; Tail: null; Type: inject with Oracle; Icon: /sql.svg; Type Icon: null + Lookups: OSQL + String: OSQL +Text: OSQLP; Tail: null; Type: inject with Oracle SQL*Plus; Icon: /sql.svg; Type Icon: null + Lookups: OSQLP + String: OSQLP Text: PERL5; Tail: null; Type: inject with Perl5; Icon: /perl5classic.png; Type Icon: null Lookups: PERL5 String: PERL5 +Text: PGSQL; Tail: null; Type: inject with PostgreSQL; Icon: /sql.svg; Type Icon: null + Lookups: PGSQL + String: PGSQL +Text: POSTCSS; Tail: null; Type: inject with PostCSS; Icon: /postcss.svg; Type Icon: null + Lookups: POSTCSS + String: POSTCSS Text: PROPERTIES; Tail: null; Type: inject with Properties; Icon: PropertiesFileType; Type Icon: null Lookups: PROPERTIES String: PROPERTIES +Text: PROTOBUF; Tail: null; Type: inject with protobuf; Icon: /protoFile.png; Type Icon: null + Lookups: PROTOBUF + String: PROTOBUF +Text: QUTE; Tail: null; Type: inject with Qute; Icon: /quarkus.svg; Type Icon: null + Lookups: QUTE + String: QUTE +Text: REDIS; Tail: null; Type: inject with Redis; Icon: /redisFileType.svg; Type Icon: null + Lookups: REDIS + String: REDIS +Text: REDSHIFT; Tail: null; Type: inject with Amazon Redshift; Icon: /sql.svg; Type Icon: null + Lookups: REDSHIFT + String: REDSHIFT Text: REGEXP; Tail: null; Type: inject with RegExp; Icon: /regexp.svg; Type Icon: null Lookups: REGEXP String: REGEXP Text: RELAXNG; Tail: null; Type: inject with RELAX-NG; Icon: /text.svg; Type Icon: null Lookups: RELAXNG String: RELAXNG +Text: SASS; Tail: null; Type: inject with Sass; Icon: /sass.svg; Type Icon: null + Lookups: SASS + String: SASS +Text: SCSS; Tail: null; Type: inject with SCSS; Icon: /sass.svg; Type Icon: null + Lookups: SCSS + String: SCSS Text: SHELL; Tail: null; Type: inject with Shell Script; Icon: /console.svg; Type Icon: null Lookups: SHELL String: SHELL +Text: SNOWFLAKE; Tail: null; Type: inject with Snowflake; Icon: /sql.svg; Type Icon: null + Lookups: SNOWFLAKE + String: SNOWFLAKE +Text: SPARKSQL; Tail: null; Type: inject with Apache Spark; Icon: /sql.svg; Type Icon: null + Lookups: SPARKSQL + String: SPARKSQL +Text: SPEL; Tail: null; Type: inject with Spring EL; Icon: /spring.svg; Type Icon: null + Lookups: SPEL + String: SPEL Text: SPI; Tail: null; Type: inject with SPI; Icon: /text.svg; Type Icon: null Lookups: SPI String: SPI +Text: SQL92; Tail: null; Type: inject with SQL2016; Icon: /sql.svg; Type Icon: null + Lookups: SQL92 + String: SQL92 +Text: SQL; Tail: null; Type: inject with SQL; Icon: /sql.svg; Type Icon: null + Lookups: SQL + String: SQL +Text: SQLITE; Tail: null; Type: inject with SQLite; Icon: /sql.svg; Type Icon: null + Lookups: SQLITE + String: SQLITE Text: SVG; Tail: null; Type: inject with SVG; Icon: /image.svg; Type Icon: null Lookups: SVG String: SVG +Text: SYBASE; Tail: null; Type: inject with Sybase ASE; Icon: /sql.svg; Type Icon: null + Lookups: SYBASE + String: SYBASE Text: TEXT; Tail: null; Type: inject with Plain text; Icon: TextFileType; Type Icon: null Lookups: TEXT String: TEXT +Text: TEXTMATE; Tail: null; Type: inject with textmate; Icon: /text.svg; Type Icon: null + Lookups: TEXTMATE + String: TEXTMATE Text: TOML; Tail: null; Type: inject with TOML; Icon: /toml-file.svg; Type Icon: null Lookups: TOML String: TOML +Text: TS; Tail: null; Type: inject with TypeScript; Icon: /TypeScriptFile.svg; Type Icon: null + Lookups: TS + String: TS +Text: TSJSX; Tail: null; Type: inject with TypeScript JSX; Icon: /TSX.svg; Type Icon: null + Lookups: TSJSX + String: TSJSX +Text: TSQL; Tail: null; Type: inject with Microsoft SQL Server; Icon: /sql.svg; Type Icon: null + Lookups: TSQL + String: TSQL +Text: VERTICA; Tail: null; Type: inject with Vertica; Icon: /sql.svg; Type Icon: null + Lookups: VERTICA + String: VERTICA +Text: VJS; Tail: null; Type: inject with VueJS; Icon: /javaScript.svg; Type Icon: null + Lookups: VJS + String: VJS +Text: VTL; Tail: null; Type: inject with VTL; Icon: /velocity.svg; Type Icon: null + Lookups: VTL + String: VTL +Text: VTS; Tail: null; Type: inject with VueTS; Icon: /javaScript.svg; Type Icon: null + Lookups: VTS + String: VTS Text: XHTML; Tail: null; Type: inject with XHTML; Icon: /xhtml.svg; Type Icon: null Lookups: XHTML String: XHTML @@ -67,6 +268,9 @@ Text: XSLT; Tail: null; Type: inject with $XSLT; Icon: null; Type Icon: null Text: YAML; Tail: null; Type: inject with YAML; Icon: /yaml.svg; Type Icon: null Lookups: YAML String: YAML +Text: YOUTRACK; Tail: null; Type: inject with YouTrack; Icon: /youtrack.svg; Type Icon: null + Lookups: YOUTRACK + String: YOUTRACK Text: _MYHTML; Tail: null; Type: inject with HTML; Icon: /html.svg; Type Icon: null Lookups: _MYHTML String: _MYHTML \ No newline at end of file diff --git a/plugin/src/test/resources/liveTemplates/perl/sql.pl.txt b/plugin/src/test/resources/liveTemplates/perl/sql.pl.txt index 0db2781836..cca36f2f56 100644 --- a/plugin/src/test/resources/liveTemplates/perl/sql.pl.txt +++ b/plugin/src/test/resources/liveTemplates/perl/sql.pl.txt @@ -3,7 +3,7 @@ Caret offset: 29 -------------------------------------------------------------------------------- # Live templates test sample my $query = <<'SQL'; - + SQL { @@ -101,8 +101,8 @@ Caret offset: 46 { say 'hi'; my $query = <<'SQL'; - - SQL + +SQL } @@ -198,7 +198,7 @@ Caret offset: 49 } my $query = <<'SQL'; - + SQL @@ -297,8 +297,8 @@ Caret offset: 67 { say 'hi'; my $query = <<'SQL'; - - SQL + +SQL } continue {} @@ -394,7 +394,7 @@ Caret offset: 82 } continue {} my $query = <<'SQL'; - + SQL @@ -492,7 +492,7 @@ Caret offset: 93 say 'hi' my $query = <<'SQL'; - + SQL ; @@ -592,7 +592,7 @@ my $var = 1 + 2; if($a){} my $query = <<'SQL'; - + SQL @@ -690,7 +690,7 @@ if($a){} unless($a){} my $query = <<'SQL'; - + SQL @@ -789,7 +789,7 @@ unless($a){} if($a){} else{} my $query = <<'SQL'; - + SQL @@ -888,7 +888,7 @@ else{} if($a){} elsif($b){} my $query = <<'SQL'; - + SQL @@ -986,7 +986,7 @@ elsif($b){} if($a){} my $query = <<'SQL'; - + SQL elsif($b){} @@ -1085,7 +1085,7 @@ elsif($b){} if($a){} my $query = <<'SQL'; - + SQL else{} @@ -1184,7 +1184,7 @@ else{} while($a){} my $query = <<'SQL'; - + SQL @@ -1282,7 +1282,7 @@ while($a){} until($a){} my $query = <<'SQL'; - + SQL @@ -1380,7 +1380,7 @@ until($a){} for($a){} my $query = <<'SQL'; - + SQL @@ -1478,7 +1478,7 @@ for($a){} foreach($a){} my $query = <<'SQL'; - + SQL @@ -1576,7 +1576,7 @@ foreach($a){} for($a =1;$a < 1; $++){} my $query = <<'SQL'; - + SQL @@ -1674,7 +1674,7 @@ for($a =1;$a < 1; $++){} foreach($a =1;$a < 1; $++){} my $query = <<'SQL'; - + SQL @@ -1772,7 +1772,7 @@ foreach($a =1;$a < 1; $++){} while($a){}continue{} my $query = <<'SQL'; - + SQL @@ -1870,7 +1870,7 @@ while($a){}continue{} until($a){}continue{} my $query = <<'SQL'; - + SQL @@ -1968,7 +1968,7 @@ until($a){}continue{} for($a){}continue{} my $query = <<'SQL'; - + SQL @@ -2066,7 +2066,7 @@ for($a){}continue{} foreach($a){}continue{} my $query = <<'SQL'; - + SQL @@ -2164,8 +2164,8 @@ foreach($a){}continue{} given($a){ my $query = <<'SQL'; - - SQL + +SQL } @@ -2264,8 +2264,8 @@ given($a){ given($a){ when($b){} my $query = <<'SQL'; - - SQL + +SQL } @@ -2364,8 +2364,8 @@ given($a){ given($a){ when($b){} my $query = <<'SQL'; - - SQL + +SQL when($b){} } @@ -2465,7 +2465,7 @@ given($a){ given($a){ when($b){} my $query = <<'SQL'; - - SQL + +SQL default{} } \ No newline at end of file diff --git a/plugin/src/test/resources/plugins/pluginsList.txt b/plugin/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..dd2dd42a9a --- /dev/null +++ b/plugin/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,167 @@ +AngularJS +ByteCodeViewer +Coverage +Docker +Git4Idea +HtmlTools +JBoss +JSIntentionPowerPack +JUnit +JavaScript +JavaScriptDebugger +Karma +Lombook Plugin +NodeJS +PerforceDirectPlugin +Refactor-X +Remote Development Server +Subversion +TestNG-J +Tomcat +XPathView +com.deadlock.scsyntax +com.intellij +com.intellij.LineProfiler +com.intellij.analysis.pwa +com.intellij.analysis.pwa.java +com.intellij.aop +com.intellij.beanValidation +com.intellij.cdi +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.cron +com.intellij.css +com.intellij.database +com.intellij.dev +com.intellij.diagram +com.intellij.dsm +com.intellij.flyway +com.intellij.freemarker +com.intellij.gradle +com.intellij.grpc +com.intellij.hibernate +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.javaee +com.intellij.javaee.app.servers.integration +com.intellij.javaee.el +com.intellij.javaee.extensions +com.intellij.javaee.gradle +com.intellij.javaee.jakarta.data +com.intellij.javaee.jpa +com.intellij.javaee.reverseEngineering +com.intellij.javaee.web +com.intellij.jpa.jpb.model +com.intellij.jsonpath +com.intellij.jsp +com.intellij.ko +com.intellij.kubernetes +com.intellij.liquibase +com.intellij.llmInstaller +com.intellij.marketplace.ml +com.intellij.micronaut +com.intellij.microservices.jvm +com.intellij.microservices.ui +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.persistence +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.plugins.webcomponents +com.intellij.properties +com.intellij.quarkus +com.intellij.react +com.intellij.reactivestreams +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.spring +com.intellij.spring.boot +com.intellij.spring.boot.initializr +com.intellij.spring.cloud +com.intellij.spring.data +com.intellij.spring.integration +com.intellij.spring.messaging +com.intellij.spring.mvc +com.intellij.spring.security +com.intellij.stylelint +com.intellij.swagger +com.intellij.tailwindcss +com.intellij.tasks +com.intellij.tasks.timeTracking +com.intellij.thymeleaf +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.velocity +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.gateway +com.jetbrains.gateway.terminal +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.plugins.webDeployment +com.jetbrains.restClient +com.jetbrains.restWebServices +com.jetbrains.sh +com.jetbrains.station +com.perl5 +hg4idea +idea.plugin.protoeditor +intellij.caches.shared +intellij.charts +intellij.grid.core.impl +intellij.grid.impl +intellij.indexing.shared +intellij.indexing.shared.core +intellij.ktor +intellij.nextjs +intellij.platform.ijent.impl +intellij.prettierJS +intellij.vitejs +intellij.webp +intellij.webpack +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.plugins.postcss +org.intellij.qodana +org.jetbrains.completion.full.line +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.gradle.ext +org.jetbrains.idea.maven +org.jetbrains.idea.maven.ext +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.docker.gateway +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.less +org.jetbrains.plugins.node-remote-interpreter +org.jetbrains.plugins.remote-run +org.jetbrains.plugins.sass +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.vue +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training +tslint \ No newline at end of file diff --git a/plugin/src/testFixtures/java/base/PerlInstrumentationTestCase.java b/plugin/src/testFixtures/java/base/PerlInstrumentationTestCase.java index bb7857f04e..8ca92e07f3 100644 --- a/plugin/src/testFixtures/java/base/PerlInstrumentationTestCase.java +++ b/plugin/src/testFixtures/java/base/PerlInstrumentationTestCase.java @@ -30,14 +30,13 @@ @Category(Light.class) public abstract class PerlInstrumentationTestCase extends BasePlatformTestCase { - protected static final String PLUGIN_PATTERN_STRING = "/plugin/build/libs/plugin-.+?\\.jar!"; - // this is wrong, should be build/libs/lang\\.embedded-.+?\\.jar! - protected static final String EMBEDDED_PATTERN_STRING = "/embedded/core/build/libs/core-.+?\\.jar"; - protected static final String MOJO_PATTERN_STRING = "/mojo/core/build/libs/core-.+?\\.jar!"; - protected static final String TT2_PATTERN_STRING = "/tt2/core/build/libs/core-.+?\\.jar!"; - protected static final String MASON_FRAMEWORK_PATTERN_STRING = "/mason/framework/build/libs/lang\\.mason\\.framework-.+?\\.jar!"; - protected static final String MASON_PATTERN_STRING = "/mason/htmlmason/core/build/libs/core-.+?\\.jar!"; - protected static final String MASON2_PATTERN_STRING = "/mason/mason2/core/build/libs/core-.+?\\.jar!"; + protected static final String PLUGIN_PATTERN_STRING = "lib/plugin-.+?\\.jar!"; + protected static final String EMBEDDED_PATTERN_STRING = "lib/lang\\.embedded-.+?\\.jar"; + protected static final String MOJO_PATTERN_STRING = "lib/lang\\.mojo-.+?\\.jar!"; + protected static final String TT2_PATTERN_STRING = "lib/lang\\.tt2-.+?\\.jar!"; + protected static final String MASON_FRAMEWORK_PATTERN_STRING = "lib/lang.mason.framework-.+?\\.jar!"; + protected static final String MASON_PATTERN_STRING = "lib/lang.mason.htmlmason-.+?\\.jar!"; + protected static final String MASON2_PATTERN_STRING = "lib/lang.mason.mason2-.+?\\.jar!"; private final @NotNull Class myClass; diff --git a/plugin/src/testFixtures/java/base/PerlTestEnvironmentTestCase.kt b/plugin/src/testFixtures/java/base/PerlTestEnvironmentTestCase.kt new file mode 100644 index 0000000000..d4620a1b46 --- /dev/null +++ b/plugin/src/testFixtures/java/base/PerlTestEnvironmentTestCase.kt @@ -0,0 +1,36 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package base + +import com.intellij.ide.plugins.PluginManager +import org.jetbrains.annotations.NonNls +import org.junit.Test + +abstract class PerlTestEnvironmentTestCase : PerlLightTestCaseBase() { + override fun getFileExtension(): String? = "none" + + override fun computeAnswerFileName(appendix: String): String = computeAnswerFileNameWithoutExtension("") + ".txt" + + override fun getBaseDataPath(): @NonNls String? = "plugins" + + @Test + fun testPluginsList() = + assertSameLinesWithFile( + testResultsFilePath, + PluginManager.getLoadedPlugins().map { it.pluginId.idString }.sorted().joinToString("\n") + ) +} \ No newline at end of file diff --git a/tt2/src/test/java/unit/TemplateToolkitTestEnvironmentTest.kt b/tt2/src/test/java/unit/TemplateToolkitTestEnvironmentTest.kt new file mode 100644 index 0000000000..b7e531f2c4 --- /dev/null +++ b/tt2/src/test/java/unit/TemplateToolkitTestEnvironmentTest.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2015-2024 Alexandr Evstigneev + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package unit + +import base.PerlTestEnvironmentTestCase + +class TemplateToolkitTestEnvironmentTest : PerlTestEnvironmentTestCase() \ No newline at end of file diff --git a/tt2/src/test/resources/plugins/pluginsList.txt b/tt2/src/test/resources/plugins/pluginsList.txt new file mode 100644 index 0000000000..bf6702364d --- /dev/null +++ b/tt2/src/test/resources/plugins/pluginsList.txt @@ -0,0 +1,76 @@ +ByteCodeViewer +Coverage +Git4Idea +HtmlTools +JUnit +PerforceDirectPlugin +Subversion +TestNG-J +com.intellij +com.intellij.completion.ml.ranking +com.intellij.configurationScript +com.intellij.copyright +com.intellij.dev +com.intellij.gradle +com.intellij.ja +com.intellij.java +com.intellij.java-i18n +com.intellij.java.ide +com.intellij.ko +com.intellij.llmInstaller +com.intellij.marketplace +com.intellij.marketplace.ml +com.intellij.ml.inline.completion +com.intellij.modules.json +com.intellij.platform.ide.provisioner +com.intellij.platform.images +com.intellij.plugins.eclipsekeymap +com.intellij.plugins.netbeanskeymap +com.intellij.plugins.visualstudiokeymap +com.intellij.properties +com.intellij.searcheverywhere.ml +com.intellij.settingsSync +com.intellij.tasks +com.intellij.tracing.ide +com.intellij.turboComplete +com.intellij.zh +com.jetbrains.codeWithMe +com.jetbrains.performancePlugin +com.jetbrains.performancePlugin.async +com.jetbrains.sh +com.jetbrains.station +com.perl5 +com.perl5.lang.tt2 +hg4idea +intellij.indexing.shared.core +intellij.platform.ijent.impl +intellij.webp +org.editorconfig.editorconfigjetbrains +org.intellij.groovy +org.intellij.intelliLang +org.intellij.plugins.markdown +org.intellij.qodana +org.jetbrains.debugger.streams +org.jetbrains.idea.eclipse +org.jetbrains.idea.gradle.dsl +org.jetbrains.idea.maven +org.jetbrains.idea.maven.model +org.jetbrains.idea.maven.server.api +org.jetbrains.idea.reposearch +org.jetbrains.java.decompiler +org.jetbrains.kotlin +org.jetbrains.plugins.emojipicker +org.jetbrains.plugins.github +org.jetbrains.plugins.gitlab +org.jetbrains.plugins.gradle +org.jetbrains.plugins.gradle.analysis +org.jetbrains.plugins.gradle.dependency.updater +org.jetbrains.plugins.gradle.maven +org.jetbrains.plugins.javaFX +org.jetbrains.plugins.terminal +org.jetbrains.plugins.textmate +org.jetbrains.plugins.yaml +org.jetbrains.security.package-checker +org.toml.lang +tanvd.grazi +training \ No newline at end of file