stringqb/src/drivers/mssql.rs

50 lines
1.1 KiB
Rust

use super::*;
#[derive(Debug)]
pub struct MSSQL;
impl DatabaseDriver for MSSQL {
/// Get which characters are used to delimit identifiers
/// such as tables, and columns
fn _quotes(&self) -> (char, char) {
('[', ']')
}
fn query(&self, _query: &str) -> Result<(), ()> {
Ok(())
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_quote_identifier_bracket_quote() {
let driver = MSSQL {};
assert_eq!(
driver.quote_identifier("foo, bar, baz"),
"[foo],[bar],[baz]"
);
assert_eq!(
driver.quote_identifier("foo.bar, baz, fizz"),
"[foo].[bar],[baz],[fizz]"
);
}
#[test]
fn test_quote_identifiers_bracket_quote() {
let driver = MSSQL {};
assert_eq!(
driver.quote_identifiers(vec!["\tfoo. bar", "baz", "fizz.\n\tbuzz.baz",]),
vec![
"[foo].[bar]".to_string(),
"[baz]".to_string(),
"[fizz].[buzz].[baz]".to_string(),
]
);
}
}