diff options
Diffstat (limited to 'src/test/scala/xyz/driver/pdsuicommon/Mocks.scala')
-rw-r--r-- | src/test/scala/xyz/driver/pdsuicommon/Mocks.scala | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/src/test/scala/xyz/driver/pdsuicommon/Mocks.scala b/src/test/scala/xyz/driver/pdsuicommon/Mocks.scala deleted file mode 100644 index 51d39e5..0000000 --- a/src/test/scala/xyz/driver/pdsuicommon/Mocks.scala +++ /dev/null @@ -1,88 +0,0 @@ -package xyz.driver.pdsuicommon - -import java.io.{Closeable, PrintWriter} -import java.net.URL -import java.sql.Connection -import java.util.logging.Logger -import javax.sql.DataSource - -import com.typesafe.config.ConfigFactory -import xyz.driver.pdsuicommon.db._ -import xyz.driver.pdsuicommon.http.HttpFetcher - -import scala.concurrent.Future - -class MockDataSource extends DataSource with Closeable { - override def getConnection: Connection = throw new NotImplementedError("MockDataSource.getConnection") - override def getConnection(username: String, password: String): Connection = { - throw new NotImplementedError(s"MockDataSource.getConnection($username, $password)") - } - override def close(): Unit = throw new NotImplementedError("MockDataSource.close") - override def setLogWriter(out: PrintWriter): Unit = throw new NotImplementedError("MockDataSource.setLogWriter") - override def getLoginTimeout: Int = throw new NotImplementedError("MockDataSource.getLoginTimeout") - override def setLoginTimeout(seconds: Int): Unit = throw new NotImplementedError("MockDataSource.setLoginTimeout") - override def getParentLogger: Logger = throw new NotImplementedError("MockDataSource.getParentLogger") - override def getLogWriter: PrintWriter = throw new NotImplementedError("MockDataSource.getLogWriter") - override def unwrap[T](iface: Class[T]): T = throw new NotImplementedError("MockDataSource.unwrap") - override def isWrapperFor(iface: Class[_]): Boolean = throw new NotImplementedError("MockDataSource.isWrapperFor") -} - -object MockMySqlContext { - - val Settings = MySqlContext.Settings( - credentials = MySqlContext.DbCredentials( - user = "test", - password = "test", - host = "localhost", - port = 3248, - dbName = "test", - dbCreateFlag = false, - dbContext = "test", - connectionParams = "", - url = "" - ), - connection = ConfigFactory.empty(), - threadPoolSize = 10 - ) -} - -class MockMySqlContext() extends MySqlContext(new MockDataSource, MockMySqlContext.Settings) { - override protected def withConnection[T](f: Connection => T): Nothing = { - throw new NotImplementedError("MockSqlContext.withConnection") - } -} - -class MockFactory()(implicit val sqlContext: MySqlContext) { - val MockHttpFetcher: HttpFetcher = { (url: URL) => - Future.successful(Array.empty[Byte]) - } -} - -object MockQueryBuilder { - - type MockRunnerIn = (SearchFilterExpr, Sorting, Option[Pagination]) - type MockRunnerOut[T] = Seq[T] - type MockCountRunnerOut = QueryBuilder.CountResult - - def apply[T](matcher: PartialFunction[MockRunnerIn, MockRunnerOut[T]])( - countMatcher: PartialFunction[MockRunnerIn, MockCountRunnerOut])( - implicit context: MySqlContext): MysqlQueryBuilder[T] = { - - val runner: QueryBuilder.Runner[T] = { parameters => - matcher((parameters.filter, parameters.sorting, parameters.pagination)) - } - - val countRunner: QueryBuilder.CountRunner = { parameters => - countMatcher((parameters.filter, parameters.sorting, parameters.pagination)) - } - - MysqlQueryBuilder[T]( - tableName = "", - lastUpdateFieldName = Option.empty[String], - nullableFields = Set.empty[String], - links = Set.empty[TableLink], - runner = runner, - countRunner = countRunner - ) - } -} |