Skip to content

Commit b696f09

Browse files
committed
Test preserving link data in combineResponses of Definition message
1 parent b7ee494 commit b696f09

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

hls-plugin-api/test/Ide/TypesTests.hs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,21 @@ defAndTypeDefSharedTests message params =
119119
]
120120
expectedResult @=? result
121121

122+
, testCase "preserves link-specific data when merging link and location responses (with link support)" $ do
123+
let pluginResponses :: NonEmpty (Definition |? ([DefinitionLink] |? Null))
124+
pluginResponses =
125+
(InL . Definition . InL . Location testFileUri $ range1) :|
126+
[ InR . InL $ [ DefinitionLink $ LocationLink (Just range1) testFileUri range2 range3 ] ]
127+
128+
result = combineResponses message def supportsLinkInAllDefinitionCaps params pluginResponses
129+
130+
expectedResult :: Definition |? ([DefinitionLink] |? Null)
131+
expectedResult = InR . InL $
132+
[ DefinitionLink $ LocationLink Nothing testFileUri range1 range1
133+
, DefinitionLink $ LocationLink (Just range1) testFileUri range2 range3
134+
]
135+
expectedResult @=? result
136+
122137
, testCase "ignores Null responses when other responses are available" $ do
123138
let pluginResponses :: NonEmpty (Definition |? ([DefinitionLink] |? Null))
124139
pluginResponses =

0 commit comments

Comments
 (0)