@@ -193,6 +193,65 @@ class CodeActionTest extends DottyTest:
193
193
ctxx = ctxx
194
194
)
195
195
196
+ @ Test def addNN2 =
197
+ val ctxx = newContext
198
+ ctxx.setSetting(ctxx.settings.YexplicitNulls , true )
199
+ checkCodeAction(
200
+ code =
201
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
202
+ | def q(s2: String): String | Null = null
203
+ |}
204
+ | val s: String = ???
205
+ | val t: String = s q s""" .stripMargin,
206
+ title = " Add .nn" ,
207
+ expected =
208
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
209
+ | def q(s2: String): String | Null = null
210
+ |}
211
+ | val s: String = ???
212
+ | val t: String = (s q s).nn""" .stripMargin,
213
+ ctxx = ctxx
214
+ )
215
+
216
+ @ Test def addNN3 =
217
+ val ctxx = newContext
218
+ ctxx.setSetting(ctxx.settings.YexplicitNulls , true )
219
+ checkCodeAction(
220
+ code =
221
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
222
+ | def q(s2: String, s3: String): String | Null = null
223
+ |}
224
+ | val s: String = ???
225
+ | val t: String = s q (s, s)""" .stripMargin,
226
+ title = " Add .nn" ,
227
+ expected =
228
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
229
+ | def q(s2: String, s3: String): String | Null = null
230
+ |}
231
+ | val s: String = ???
232
+ | val t: String = (s q (s, s)).nn""" .stripMargin,
233
+ ctxx = ctxx
234
+ )
235
+
236
+ @ Test def addNN4 =
237
+ val ctxx = newContext
238
+ ctxx.setSetting(ctxx.settings.YexplicitNulls , true )
239
+ checkCodeAction(
240
+ code =
241
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
242
+ | def q(s2: String, s3: String): String | Null = null
243
+ |}
244
+ | val s: String = ???
245
+ | val t: String = s.q(s, s)""" .stripMargin,
246
+ title = " Add .nn" ,
247
+ expected =
248
+ """ implicit class infixOpTest(val s1: String) extends AnyVal {
249
+ | def q(s2: String, s3: String): String | Null = null
250
+ |}
251
+ | val s: String = ???
252
+ | val t: String = (s.q(s, s)).nn""" .stripMargin,
253
+ ctxx = ctxx
254
+ )
196
255
// Make sure we're not using the default reporter, which is the ConsoleReporter,
197
256
// meaning they will get reported in the test run and that's it.
198
257
private def newContext =
0 commit comments