From 0e6f63db09206f37b3f69a6ac90f8b9ef2674ef1 Mon Sep 17 00:00:00 2001 From: everpcpc Date: Tue, 22 Aug 2023 15:59:15 +0800 Subject: [PATCH] chore(driver): add test for setting timezone (#188) --- driver/tests/driver/session.rs | 43 ++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 driver/tests/driver/session.rs diff --git a/driver/tests/driver/session.rs b/driver/tests/driver/session.rs new file mode 100644 index 00000000..309290b4 --- /dev/null +++ b/driver/tests/driver/session.rs @@ -0,0 +1,43 @@ +// Copyright 2021 Datafuse Labs +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +use databend_driver::Client; + +use crate::common::DEFAULT_DSN; + +#[tokio::test] +async fn set_timezone() { + let dsn = option_env!("TEST_DATABEND_DSN").unwrap_or(DEFAULT_DSN); + let client = Client::new(dsn.to_string()); + let conn = client.get_conn().await.unwrap(); + + let row = conn + .querye_row("set timezone='Europe/London'") + .await + .unwrap(); + assert!(row.is_some()); + let row = row.unwrap(); + let (val,): (String,) = row.try_into().unwrap(); + assert_eq!(val, "UTC"); + + conn.exec("set timezone='Europe/London'").await.unwrap(); + let row = conn + .querye_row("set timezone='Europe/London'") + .await + .unwrap(); + assert!(row.is_some()); + let row = row.unwrap(); + let (val,): (String,) = row.try_into().unwrap(); + assert_eq!(val, "Europe/London"); +}