做完rust全链路
This commit is contained in:
1 parent
e428265357
commit
2a4b446252
34 files changed
+1756
-1031
No files matched your search
@@ -2,6 +2,10 @@ use chusql_storage::catalog::Catalog;
|
||||
use chusql_storage::protocol::{ColumnType, Row};
|
||||
use serde_json::json;
|
||||
|
||||
// 数据字典测试:补列、去重、未知表。
|
||||
|
||||
|
||||
|
||||
fn row(pairs: &[(&str, serde_json::Value)]) -> Row {
|
||||
let mut m = Row::new();
|
||||
for (k, v) in pairs {
|
||||
@@ -10,6 +14,7 @@ fn row(pairs: &[(&str, serde_json::Value)]) -> Row {
|
||||
m
|
||||
}
|
||||
|
||||
/// 空文件得到空字典
|
||||
#[test]
|
||||
fn empty_file_gives_empty_catalog() {
|
||||
let dir = tempfile::tempdir().unwrap();
|
||||
@@ -18,6 +23,7 @@ fn empty_file_gives_empty_catalog() {
|
||||
assert_eq!(c.table_names().len(), 0);
|
||||
}
|
||||
|
||||
/// 补列之后能查到 schema
|
||||
#[test]
|
||||
fn ensure_then_describe() {
|
||||
let dir = tempfile::tempdir().unwrap();
|
||||
@@ -39,6 +45,7 @@ fn ensure_then_describe() {
|
||||
assert_eq!(name_col.ty, ColumnType::Str);
|
||||
}
|
||||
|
||||
/// 再插入不会重复列
|
||||
#[test]
|
||||
fn second_insert_does_not_duplicate_columns() {
|
||||
let dir = tempfile::tempdir().unwrap();
|
||||
@@ -50,6 +57,7 @@ fn second_insert_does_not_duplicate_columns() {
|
||||
assert_eq!(c.describe("users").unwrap().columns.len(), 1);
|
||||
}
|
||||
|
||||
/// 未知表返回 None
|
||||
#[test]
|
||||
fn describe_unknown_returns_none() {
|
||||
let dir = tempfile::tempdir().unwrap();
|
||||
|
||||
Reference in new issue
Block a user