IntelliJ Platform SDK DevGuide

Edit page

10. Reference Test

This test checks if references functionality, implemented in the Reference Contributor section of the Custom Language Support Tutorial, works as expected.

10.1. Define Test Data

This test reuses the Simple Language properties 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>"); } }

10.2. 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 PsiElement at the caret, then compares its value with the known value of that key.

public void testReference() { myFixture.configureByFiles("ReferenceTestData.java", "DefaultTestData.simple"); PsiElement element = myFixture.getFile().findElementAt(myFixture.getCaretOffset()).getParent(); assertEquals("http://en.wikipedia.org/", ((SimpleProperty) element.getReferences()[0].resolve()).getValue()); }

10.3. Run the Test

Run the test and make sure it’s green.

Last modified: 19 February 2020