10. Reference Test
This test checks if references functionality, implemented in the Reference Contributor section of the Custom Language Support Tutorial, works as expected.
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 green.
Last modified: 22 February 2022