Skip to content

Commit

Permalink
add tests to scala 3 next worksheets
Browse files Browse the repository at this point in the history
  • Loading branch information
kasiaMarek committed Mar 11, 2024
1 parent a5f0a74 commit aa79ecc
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 1 deletion.
@@ -1,8 +1,11 @@
package tests.feature

import scala.meta.internal.metals.MetalsEnrichments._
import scala.meta.internal.metals.{BuildInfo => V}
import scala.meta.internal.semver.SemVer

import coursierapi.Complete

class Worksheet211LspSuite extends tests.BaseWorksheetLspSuite(V.scala211)

class Worksheet3LspSuite extends tests.BaseWorksheetLspSuite(V.scala3) {
Expand All @@ -25,4 +28,28 @@ class LatestWorksheet3LspSuite
"""given str: String = """""
}

class Worksheet3NextSuite
extends tests.BaseWorksheetLspSuite(Worksheet3NextSuite.scala3Next) {
override def versionSpecificCodeToValidate: String =
"""given str: String = """""
}

object Worksheet3NextSuite {
def scala3Next: String =
Complete
.create()
.withInput("org.scala-lang:scala3-compiler_3:")
.complete()
.getCompletions()
.asScala
.toList
.reverse
.collectFirst { version =>
SemVer.Version.fromString(version) match {
case SemVer.Version(_, _, _, None, None, None) => version
}
}
.get
}

class Worksheet212LspSuite extends tests.BaseWorksheetLspSuite(V.scala212)
8 changes: 7 additions & 1 deletion tests/unit/src/main/scala/tests/BaseWorksheetLspSuite.scala
Expand Up @@ -10,6 +10,7 @@ import scala.meta.internal.metals.clients.language.MetalsSlowTaskResult
import scala.meta.internal.metals.codeactions.CreateNewSymbol
import scala.meta.internal.metals.codeactions.ImportMissingSymbol
import scala.meta.internal.metals.{BuildInfo => V}
import scala.meta.internal.semver.SemVer

abstract class BaseWorksheetLspSuite(
scalaVersion: String
Expand Down Expand Up @@ -855,7 +856,12 @@ abstract class BaseWorksheetLspSuite(
_ = assertNoDiff(noCompletions, "")
} yield ()
}
if (ScalaVersions.isScala3Version(scalaVersion))
if (
ScalaVersions.isScala3Version(scalaVersion) && !SemVer.isLaterVersion(
V.scala3,
scalaVersion,
)
)
test("import-missing-symbol") {
cleanWorkspace()
val path = "a/src/main/scala/foo/Main.worksheet.sc"
Expand Down

0 comments on commit aa79ecc

Please sign in to comment.