Skip to content

Commit

Permalink
finagle/finagle-mysql: Move HandshakeSettingsTest into Bazel target a…
Browse files Browse the repository at this point in the history
…nd fix tests

Problem

The HandshakeSettingsTest was outside of the mysql testing targets, so it didn't run
as part of Bazel testing. This lead to a failing test being committed.

Solution

Fix the test and move it into the `unit` target.

Differential Revision: https://phabricator.twitter.biz/D1140246
  • Loading branch information
jcrossley authored and jenkins committed Apr 29, 2024
1 parent d1468ba commit 8859688
Showing 1 changed file with 13 additions and 20 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package com.twitter.finagle.mysql
package com.twitter.finagle.mysql.unit

import com.twitter.finagle.Stack
import com.twitter.finagle.mysql.Capability
import com.twitter.finagle.mysql.HandshakeSettings
import com.twitter.finagle.mysql.MysqlCharset
import com.twitter.finagle.mysql.param.Charset
import com.twitter.finagle.mysql.param.Credentials
import com.twitter.finagle.mysql.param.Database
Expand All @@ -14,40 +17,31 @@ class HandshakeSettingsTest extends AnyFunSuite {
Capability.Transactions,
Capability.MultiResults
)
private val withFoundRows = initial + Capability.FoundRows
private val withInteractive = initial + Capability.Interactive

test("HandshakeSettings adds FoundRows by default") {
val settings = HandshakeSettings(clientCapabilities = initial)
assert(settings.calculatedClientCapabilities == withFoundRows)
assert(settings.calculatedClientCapabilities.has(Capability.FoundRows))
}

test("HandshakeSettings returns initial when found rows is disabled") {
test("HandshakeSettings does not add FoundRows when found rows is disabled") {
val settings = HandshakeSettings(clientCapabilities = initial, enableFoundRows = false)
assert(settings.calculatedClientCapabilities == initial)
assert(!settings.calculatedClientCapabilities.has(Capability.FoundRows))
}

test("HandshakeSettings adds Interactive by default") {
val settings = HandshakeSettings(clientCapabilities = initial)
assert(settings.calculatedClientCapabilities == withInteractive)
assert(settings.calculatedClientCapabilities.has(Capability.Interactive))
}

test("HandshakeSettings returns initial when interactive is disabled") {
test("HandshakeSettings does not add Interactive when interactive is disabled") {
val settings = HandshakeSettings(clientCapabilities = initial, interactive = false)
assert(settings.calculatedClientCapabilities == initial)
assert(!settings.calculatedClientCapabilities.has(Capability.Interactive))
}

test("HandshakeSettings adds ConnectWithDB if database is defined") {
test("HandshakeSettings adds ConnectWithDB and SSL settings if database is defined") {
val settings = HandshakeSettings(clientCapabilities = initial, database = Some("test"))
val withDB = withFoundRows + Capability.ConnectWithDB
assert(settings.calculatedClientCapabilities == withDB)
}

test("HandshakeSettings can calculate settings for SSL/TLS") {
val settings = HandshakeSettings(clientCapabilities = initial, database = Some("test"))
val withDB = withFoundRows + Capability.ConnectWithDB
val withSSL = withDB + Capability.SSL
assert(settings.sslCalculatedClientCapabilities == withSSL)
assert(settings.calculatedClientCapabilities.has(Capability.ConnectWithDB))
assert(settings.sslCalculatedClientCapabilities.has(Capability.SSL))
}

test("HandshakeSettings can read values from Stack params") {
Expand All @@ -65,5 +59,4 @@ class HandshakeSettingsTest extends AnyFunSuite {
assert(!settings.enableFoundRows)
assert(!settings.interactive)
}

}

0 comments on commit 8859688

Please sign in to comment.