mirror of https://github.com/sbt/sbt.git
Fix #8340: Add regression test
This commit is contained in:
parent
507d221048
commit
1a3c6b5007
|
|
@ -0,0 +1,6 @@
|
|||
val scalatest = "org.scalatest" %% "scalatest" % "3.2.19"
|
||||
|
||||
scalaVersion := "3.3.4"
|
||||
Test / fork := true
|
||||
libraryDependencies += scalatest % Test
|
||||
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
example.ServiceImpl
|
||||
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
package example
|
||||
|
||||
trait Service {
|
||||
def name: String
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
package example
|
||||
|
||||
class ServiceImpl extends Service {
|
||||
override def name: String = "MyServiceImpl"
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
package example
|
||||
|
||||
import org.scalatest.funsuite.AnyFunSuite
|
||||
import java.util.ServiceLoader
|
||||
import scala.jdk.CollectionConverters._
|
||||
|
||||
class ServiceTest extends AnyFunSuite {
|
||||
test("ServiceLoader should find service implementation when Test / fork := true") {
|
||||
val services = ServiceLoader.load(classOf[Service])
|
||||
val iterator = services.iterator()
|
||||
assert(iterator.hasNext, "ServiceLoader should find at least one service")
|
||||
val service = iterator.next()
|
||||
assert(service.name == "MyServiceImpl", s"Expected service name 'MyServiceImpl', got '${service.name}'")
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
> test
|
||||
Loading…
Reference in New Issue