Skip to content

Commit

Permalink
add urlOptions to StandardQueryEvaluator and factory
Browse files Browse the repository at this point in the history
  • Loading branch information
freels committed Sep 8, 2010
1 parent 14f846e commit af23ca0
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,8 @@ class AutoDisablingQueryEvaluatorFactory(
disableDuration)
}

def apply(dbhosts: List[String], dbname: String, username: String, password: String) = {
chainEvaluator(queryEvaluatorFactory(dbhosts, dbname, username, password))
}

def apply(dbhosts: List[String], username: String, password: String) = {
chainEvaluator(queryEvaluatorFactory(dbhosts, username, password))
def apply(dbhosts: List[String], dbname: String, username: String, password: String, urlOptions: String) = {
chainEvaluator(queryEvaluatorFactory(dbhosts, dbname, username, password, urlOptions))
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,8 @@ class StandardQueryEvaluatorFactory(
databaseFactory: DatabaseFactory,
queryFactory: QueryFactory) extends QueryEvaluatorFactory {

def apply(dbhosts: List[String], dbname: String, username: String, password: String) = {
val database = databaseFactory(dbhosts, dbname, username, password)
new StandardQueryEvaluator(database, queryFactory)
}

def apply(dbhosts: List[String], username: String, password: String) = {
val database = databaseFactory(dbhosts, username, password)
def apply(dbhosts: List[String], dbname: String, username: String, password: String, urlOptions: String) = {
val database = databaseFactory(dbhosts, dbname, username, password, urlOptions)
new StandardQueryEvaluator(database, queryFactory)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ class QuerySpec extends Specification {
val urlOptions = config("url_options")

"Query" should {
val queryEvaluator = testEvaluatorFactory("localhost", username, password, urlOptions)
val queryEvaluator = testEvaluatorFactory("localhost", null, username, password, urlOptions)

"with too many arguments" >> {
queryEvaluator.select("SELECT 1 FROM DUAL WHERE 1 IN (?)", 1, 2, 3) { r => 1 } must throwA[TooManyQueryParametersException]
Expand All @@ -32,5 +32,13 @@ class QuerySpec extends Specification {
"with just the right number of arguments" >> {
queryEvaluator.select("SELECT 1 FROM DUAL WHERE 1 IN (?)", List(1, 2, 3))(_.getInt(1)).toList mustEqual List(1)
}

"be backwards compatible" >> {
val noOpts = testEvaluatorFactory("localhost", null, username, password)
noOpts.select("SELECT 1 FROM DUAL WHERE 1 IN (?)", List(1, 2, 3))(_.getInt(1)).toList mustEqual List(1)

val noDBNameOrOpts = testEvaluatorFactory("localhost", username, password)
noDBNameOrOpts.select("SELECT 1 FROM DUAL WHERE 1 IN (?)", List(1, 2, 3))(_.getInt(1)).toList mustEqual List(1)
}
}
}

0 comments on commit af23ca0

Please sign in to comment.