Skip to content

Commit

Permalink
Apply easy fixes/inspections
Browse files Browse the repository at this point in the history
  • Loading branch information
mdedetrich committed Oct 1, 2024
1 parent cef3625 commit 9514264
Show file tree
Hide file tree
Showing 17 changed files with 107 additions and 111 deletions.
1 change: 1 addition & 0 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import sbt.ScriptedPlugin.autoImport.scriptedLaunchOpts

import java.io.File
import scala.sys.process._

lazy val generateXMLFiles =
taskKey[Unit]("Generate XML files (for test)")
generateXMLFiles := {
Expand Down
3 changes: 2 additions & 1 deletion src/main/scala/org/scoverage/coveralls/CIService.scala
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package org.scoverage.coveralls

import scala.io.Source
import io.circe._
import io.circe.parser
import io.circe.generic.auto._

import scala.io.Source

trait CIService {
def name: String
def jobId: Option[String]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
package org.scoverage.coveralls

// import scala.language.postfixOps
import java.io.File

import sbt.Logger

import java.io.File

class CoberturaMultiSourceReader(
coberturaFile: File,
sourceDirs: Seq[File],
Expand Down Expand Up @@ -87,7 +86,7 @@ class CoberturaMultiSourceReader(
sfs
}

def sourceFilenames = sourceFiles.map(_.getCanonicalPath)
def sourceFilenames: Set[String] = sourceFiles.map(_.getCanonicalPath)

/** Splits a path to a source file into two parts:
* 1. the absolute path to source directory that contain this sourceFile 2.
Expand All @@ -112,14 +111,14 @@ class CoberturaMultiSourceReader(
(prefix, relativePath)
}

protected def lineCoverage(sourceFile: String) = {
protected def lineCoverage(sourceFile: String): Map[Int, Int] = {
val filenamePath =
splitPath(new File(sourceFile))._2

lineCoverageMap(filenamePath)
}

def reportForSource(source: String) = {
def reportForSource(source: String): SourceFileReport = {
val fileSrc = sourceEncoding match {
case Some(enc) => scala.io.Source.fromFile(source, enc)
case None => scala.io.Source.fromFile(source)
Expand Down
21 changes: 10 additions & 11 deletions src/main/scala/org/scoverage/coveralls/CoverallPayloadWriter.scala
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
package org.scoverage.coveralls

import com.fasterxml.jackson.core.{JsonEncoding, JsonFactory, JsonGenerator}
import sbt.Logger

import java.io.{File, FileInputStream}
import java.security.{DigestInputStream, MessageDigest}

import com.fasterxml.jackson.core.{JsonFactory, JsonEncoding}

import sbt.Logger

class CoverallPayloadWriter(
repoRootDir: File,
coverallsFile: File,
Expand All @@ -17,18 +16,18 @@ class CoverallPayloadWriter(
)(implicit log: Logger) {
import gitClient._

val gen = generator(coverallsFile)
val gen: JsonGenerator = generator(coverallsFile)

def generator(file: File) = {
def generator(file: File): JsonGenerator = {
if (!file.getParentFile.exists) file.getParentFile.mkdirs
val factory = new JsonFactory
factory.createGenerator(file, JsonEncoding.UTF8)
}

def start() = {
def start(): Unit = {
gen.writeStartObject()

def writeOpt(fieldName: String, holder: Option[String]) =
def writeOpt(fieldName: String, holder: Option[String]): Unit =
holder foreach { gen.writeStringField(fieldName, _) }

coverallsAuth match {
Expand All @@ -52,7 +51,7 @@ class CoverallPayloadWriter(
gen.writeStartArray()
}

private def addGitInfo() = {
private def addGitInfo(): Unit = {
gen.writeFieldName("git")
gen.writeStartObject()

Expand Down Expand Up @@ -85,7 +84,7 @@ class CoverallPayloadWriter(
gen.writeEndObject()
}

private def addGitRemotes(remotes: Seq[String]) = {
private def addGitRemotes(remotes: Seq[String]): Unit = {
remotes.foreach(remote => {
gen.writeStartObject()
gen.writeStringField("name", remote)
Expand All @@ -94,7 +93,7 @@ class CoverallPayloadWriter(
})
}

def addSourceFile(report: SourceFileReport) = {
def addSourceFile(report: SourceFileReport): Unit = {
val repoRootDirStr = repoRootDir.getCanonicalPath + File.separator

// create a name relative to the project root (rather than the module root)
Expand Down
11 changes: 3 additions & 8 deletions src/main/scala/org/scoverage/coveralls/CoverallsAuth.scala
Original file line number Diff line number Diff line change
@@ -1,23 +1,18 @@
package org.scoverage.coveralls

import scala.io.Source
import io.circe._
import io.circe.parser
import io.circe.generic.auto._

/** The strategy to use when authenticating against Coveralls.
*/
sealed trait CoverallsAuth
sealed trait CoverallsAuth extends Product with Serializable

/** Auth strategy where a Coveralls-specific token is used. Works with every CI
* service.
*/
case class CoverallsRepoToken(token: String) extends CoverallsAuth
final case class CoverallsRepoToken(token: String) extends CoverallsAuth

/** Auth strategy where a token specific to the CI service is used, such as a
* GitHub token. Works on selected CI services supported by Coveralls.
*/
case class CIServiceToken(token: String) extends CoverallsAuth
final case class CIServiceToken(token: String) extends CoverallsAuth

/** Auth strategy where no token is passed. This seems to work for Travis.
*/
Expand Down
48 changes: 26 additions & 22 deletions src/main/scala/org/scoverage/coveralls/CoverallsClient.scala
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
package org.scoverage.coveralls

import scala.io.{Codec, Source}
import com.fasterxml.jackson.databind.ObjectMapper
import com.fasterxml.jackson.module.scala.DefaultScalaModule
import scalaj.http.{MultiPart, Http}
import scalaj.http.HttpOptions._
import scalaj.http.{Http, MultiPart}

import java.io.File
import java.net.{InetAddress, Socket}
import javax.net.ssl.{SSLSocket, SSLSocketFactory}
import java.net.{Socket, InetAddress}
import com.fasterxml.jackson.databind.ObjectMapper
import scala.io.{Codec, Source}

class CoverallsClient(endpoint: String, httpClient: HttpClient) {

import CoverallsClient._

val mapper = newMapper
val mapper: ObjectMapper = newMapper
def url: String = s"$endpoint/api/v1/jobs"

def newMapper = {
def newMapper: ObjectMapper = {
val mapper = new ObjectMapper
mapper.registerModule(DefaultScalaModule)
mapper
Expand Down Expand Up @@ -97,9 +96,10 @@ class ScalaJHttpClient extends HttpClient {
}

class OpenJdkSafeSsl extends SSLSocketFactory {
val child = SSLSocketFactory.getDefault.asInstanceOf[SSLSocketFactory]
val child: SSLSocketFactory =
SSLSocketFactory.getDefault.asInstanceOf[SSLSocketFactory]

val safeCiphers = Array(
val safeCiphers: Array[String] = Array(
"SSL_RSA_WITH_RC4_128_MD5",
"SSL_RSA_WITH_RC4_128_SHA",
"TLS_RSA_WITH_AES_128_CBC_SHA",
Expand All @@ -123,28 +123,32 @@ class OpenJdkSafeSsl extends SSLSocketFactory {
.asInstanceOf[SSLSocketFactory]
.getSupportedCipherSuites

def getDefaultCipherSuites = Array.empty

def getSupportedCipherSuites = Array.empty
def getDefaultCipherSuites: Array[String] = Array.empty

def createSocket(p1: Socket, p2: String, p3: Int, p4: Boolean) = safeSocket(
child.createSocket(p1, p2, p3, p4)
)
def getSupportedCipherSuites: Array[String] = Array.empty

def createSocket(p1: String, p2: Int) = safeSocket(child.createSocket(p1, p2))
def createSocket(p1: Socket, p2: String, p3: Int, p4: Boolean): Socket =
safeSocket(
child.createSocket(p1, p2, p3, p4)
)

def createSocket(p1: String, p2: Int, p3: InetAddress, p4: Int) = safeSocket(
child.createSocket(p1, p2, p3, p4)
def createSocket(p1: String, p2: Int): Socket = safeSocket(
child.createSocket(p1, p2)
)

def createSocket(p1: InetAddress, p2: Int) = safeSocket(
def createSocket(p1: String, p2: Int, p3: InetAddress, p4: Int): Socket =
safeSocket(
child.createSocket(p1, p2, p3, p4)
)

def createSocket(p1: InetAddress, p2: Int): Socket = safeSocket(
child.createSocket(p1, p2)
)

def createSocket(p1: InetAddress, p2: Int, p3: InetAddress, p4: Int) =
def createSocket(p1: InetAddress, p2: Int, p3: InetAddress, p4: Int): Socket =
safeSocket(child.createSocket(p1, p2, p3, p4))

def safeSocket(sock: Socket) = sock match {
def safeSocket(sock: Socket): Socket = sock match {
case ssl: SSLSocket =>
ssl.setEnabledCipherSuites(safeCiphers); ssl
case other => other
Expand Down
24 changes: 11 additions & 13 deletions src/main/scala/org/scoverage/coveralls/CoverallsPlugin.scala
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package org.scoverage.coveralls

import _root_.sbt.ScopeFilter
import _root_.sbt.ThisProject
import com.fasterxml.jackson.core.JsonEncoding
import _root_.sbt.{ScopeFilter, ThisProject, _}
import sbt.Keys._
import sbt._
import sbt.internal.util.ManagedLogger

import scala.io.Source
import java.io.File
import scala.io.Source

object Imports {
object CoverallsKeys {
Expand Down Expand Up @@ -35,7 +33,7 @@ object Imports {
object CoverallsPlugin extends AutoPlugin {
override def trigger = allRequirements

val autoImport = Imports
val autoImport: Imports.type = Imports
import autoImport._
import CoverallsKeys._

Expand Down Expand Up @@ -67,7 +65,7 @@ object CoverallsPlugin extends AutoPlugin {
) // must be outside of the 'coverageAggregate' task (see: https://github.com/sbt/sbt/issues/1095 or https://github.com/sbt/sbt/issues/780)

def coverallsTask = Def.task {
implicit val log = streams.value.log
implicit val log: ManagedLogger = streams.value.log

if (!coberturaFile.value.exists) {
sys.error(
Expand Down Expand Up @@ -167,13 +165,13 @@ object CoverallsPlugin extends AutoPlugin {
}
}

def apiHttpClient = new ScalaJHttpClient
def apiHttpClient: ScalaJHttpClient = new ScalaJHttpClient

def travisJobIdent = sys.env.get("TRAVIS_JOB_ID")
def travisJobIdent: Option[String] = sys.env.get("TRAVIS_JOB_ID")

def githubActionsRunIdent = sys.env.get("GITHUB_RUN_ID")
def githubActionsRunIdent: Option[String] = sys.env.get("GITHUB_RUN_ID")

def repoTokenFromFile(path: String) = {
def repoTokenFromFile(path: String): Option[String] = {
try {
val source = Source.fromFile(path)
val repoToken = source.mkString.trim
Expand All @@ -187,13 +185,13 @@ object CoverallsPlugin extends AutoPlugin {
def userRepoToken(
coverallsToken: Option[String],
coverallsTokenFile: Option[String]
) =
): Option[String] =
sys.env
.get("COVERALLS_REPO_TOKEN")
.orElse(coverallsToken)
.orElse(coverallsTokenFile.flatMap(repoTokenFromFile))

def userEndpoint(coverallsEndpoint: Option[String]) =
def userEndpoint(coverallsEndpoint: Option[String]): Option[String] =
sys.env
.get("COVERALLS_ENDPOINT")
.orElse(coverallsEndpoint)
Expand Down
16 changes: 9 additions & 7 deletions src/main/scala/org/scoverage/coveralls/GitClient.scala
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
package org.scoverage.coveralls

import java.io.File
import java.nio.file.Files.lines

import org.eclipse.jgit.api.Git
import org.eclipse.jgit.lib.{Repository, StoredConfig}
import org.eclipse.jgit.storage.file.FileRepositoryBuilder
import org.scoverage.coveralls.GitClient.GitRevision
import sbt.Logger

import java.io.File
import java.nio.file.Files.lines
import scala.util.matching.Regex

object GitClient {
case class GitRevision(
id: String,
Expand All @@ -23,11 +25,11 @@ class GitClient(cwd: File)(implicit log: Logger) {

import scala.collection.JavaConverters._

val gitDirLineRegex = """^gitdir: (.*)""".r
val gitDirLineRegex: Regex = """^gitdir: (.*)""".r

val gitFile = new File(cwd, ".git")

val resolvedGitDir =
val resolvedGitDir: File =
if (gitFile.isFile)
lines(gitFile.toPath)
.iterator()
Expand All @@ -44,8 +46,8 @@ class GitClient(cwd: File)(implicit log: Logger) {
else
gitFile

val repository = FileRepositoryBuilder.create(resolvedGitDir)
val storedConfig = repository.getConfig
val repository: Repository = FileRepositoryBuilder.create(resolvedGitDir)
val storedConfig: StoredConfig = repository.getConfig
log.info("Repository = " + repository.getDirectory)

def remotes: Seq[String] = {
Expand Down
2 changes: 2 additions & 0 deletions src/main/scala/org/scoverage/coveralls/Utils.scala
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package org.scoverage.coveralls

import java.io.File
import scala.annotation.tailrec

object Utils {
def mkFileFromPath(path: Seq[String]): File = {
Expand All @@ -9,6 +10,7 @@ object Utils {
mkFileFromPath(new File(p), ps)
}

@tailrec
def mkFileFromPath(base: File, path: Seq[String]): File = path match {
case p :: ps => mkFileFromPath(new File(base, p), ps)
case _ => base
Expand Down
5 changes: 2 additions & 3 deletions src/main/scala/org/scoverage/coveralls/XmlHelper.scala
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
package org.scoverage.coveralls

import java.io.{File, FileInputStream}
import javax.xml.parsers.SAXParserFactory

import org.xml.sax.InputSource

import java.io.{File, FileInputStream}
import javax.xml.parsers.SAXParserFactory
import scala.util.Try
import scala.xml.XML

Expand Down
6 changes: 1 addition & 5 deletions src/test/scala/org/scoverage/coveralls/CIServiceTest.scala
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
package org.scoverage.coveralls

import org.scalatest.wordspec.AnyWordSpec
import org.scalatest.matchers.should.Matchers

import sbt.ConsoleLogger

import scala.Option
import org.scalatest.wordspec.AnyWordSpec

class CIServiceTest extends AnyWordSpec with Matchers {

Expand Down
Loading

0 comments on commit 9514264

Please sign in to comment.