Allow running tests within a debugger#25655
Conversation
| |├── def foo(fn: => Int) = bar(fn) [ A.scala:2 ] | ||
| |│ ^^^^^^^ | ||
| |├── def bar(fn: => Int) = fn [ A.scala:4 ] | ||
| |│ ^^ |
There was a problem hiding this comment.
idk which change caused this but it seems "better" now since we go from no source to a source, so I didn't look further
| private def checkRequirements(f: String, sourceDir: JFile, outDir: String): Unit = { | ||
| private def checkRequirements(f: String, sourceDir: JFile, outDir: JFile): Unit = { | ||
| require(sourceDir.isDirectory && sourceDir.exists, "passed non-directory to `compileFilesInDir`: " + sourceDir) | ||
| require(outDir.last == JFile.separatorChar, "please specify an `outDir` with a trailing file separator") |
There was a problem hiding this comment.
good example of an assertion that should never need to exist if you use the right data structures
|
|
||
| val flags = flags0 | ||
| .and(scalacOptions*) | ||
| .and("-sourceroot", TestSources.rootPath().toAbsolutePath.toString) |
There was a problem hiding this comment.
required so semanticDB files are emitted in the right place
mbovel
left a comment
There was a problem hiding this comment.
It seems like Playground.scala has a similar purpose to your new singleTest test. Could we update Playground instead of adding a new test?
Aside: we should also check https://nightly.scala-lang.org/docs/contributing/debugging/ide-debugging.html is up-to-date.
|
Nice, thanks. Done. Re: the doc, I don't use Metals so idk about that part, but the sentence about IntelliJ is correct. |
Fix #25633
Also add a simple ignored-by-default test to easily run one test case at a time
How much have you relied on LLM-based tools in this contribution?
not
How was the solution tested?
duh