IntelliJ Platform Plugin SDK Help

10. Reference Test

Define Test Data

This test reuses the Simple Language file DefaultTestData.simple.

Create the test file ReferenceTestData.java in the testData directory. This file has one Simple Language prefix and key, with the caret placed after the key.

public class Test { public static void main(String[] args) { System.out.println("simple:website<caret>"); } }

Define a Test Method

Add the testReference() method to the SimpleCodeInsightTest class previously defined. This test is configured by the test files. The fixture gets the PsiReference at the caret position, and then asserts the resolved SimpleProperty.value() with the known value of that key.

public void testReference() { PsiReference referenceAtCaret = myFixture.getReferenceAtCaretPositionWithAssertion("ReferenceTestData.java", "DefaultTestData.simple"); final SimpleProperty resolvedSimpleProperty = assertInstanceOf(referenceAtCaret.resolve(), SimpleProperty.class); assertEquals("https://en.wikipedia.org/", resolvedSimpleProperty.getValue()); }

Run the Test

Run the test and make sure it's successful.

Running tests

  1. Open the Gradle Tool Window.

  2. Select the simple_language_plugin node. You may need to reimport it as a Gradle project.

  3. Drill down under simple_language_plugin to Tasks, verification, test task.

  4. Run the test task.

The results are displayed in the Run Tool Window, and also written to the simple_language_plugin/build/test-results/test directory.

If the Run Tool Window displays the error Test events were not received, do the following:

  1. In the Gradle Tool Window, drill down under simple_language_plugin to Tasks, build, clean task.

  2. Run the clean task, which deletes the simple_language_plugin/build directory.

  3. Restart the test.

    Last modified: 24 March 2023