Skip to content

Commit

Permalink
fmt
Browse files Browse the repository at this point in the history
  • Loading branch information
billy1624 committed Jan 24, 2024
1 parent a19e88e commit 3141778
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 8 deletions.
5 changes: 4 additions & 1 deletion src/schema/entity.rs
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,10 @@ where
{
let orm_column_def = column.def();
let types = match orm_column_def.col_type {
ColumnType::Enum { ref name, ref variants } => match backend {
ColumnType::Enum {
ref name,
ref variants,
} => match backend {
DbBackend::MySql => {
let variants: Vec<String> = variants.iter().map(|v| v.to_string()).collect();
ColumnType::custom(format!("ENUM('{}')", variants.join("', '")).as_str())
Expand Down
37 changes: 30 additions & 7 deletions tests/relational_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use pretty_assertions::assert_eq;
pub use rust_decimal::prelude::*;
pub use rust_decimal_macros::dec;
use sea_orm::{entity::*, query::*, DbErr, DerivePartialModel, FromQueryResult};
use sea_query::{Expr, Func, SimpleExpr, Alias};
use sea_query::{Alias, Expr, Func, SimpleExpr};
pub use uuid::Uuid;

// Run the test locally:
Expand Down Expand Up @@ -356,11 +356,31 @@ pub async fn group_by() {
.column(customer::Column::Name)
.column_as(order::Column::Total.count(), "number_orders");
if cfg!(feature = "sqlx-sqlite") {
select = select.column_as(Expr::expr(Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).sum()).cast_as(Alias::new("text")), "total_spent")
.column_as(Expr::expr(Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).min()).cast_as(Alias::new("text")), "min_spent")
.column_as(Expr::expr(Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).max()).cast_as(Alias::new("text")), "max_spent");
select = select
.column_as(
Expr::expr(
Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).sum(),
)
.cast_as(Alias::new("text")),
"total_spent",
)
.column_as(
Expr::expr(
Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).min(),
)
.cast_as(Alias::new("text")),
"min_spent",
)
.column_as(
Expr::expr(
Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).max(),
)
.cast_as(Alias::new("text")),
"max_spent",
);
} else {
select = select.column_as(order::Column::Total.sum(), "total_spent")
select = select
.column_as(order::Column::Total.sum(), "total_spent")
.column_as(order::Column::Total.min(), "min_spent")
.column_as(order::Column::Total.max(), "max_spent");
}
Expand Down Expand Up @@ -488,11 +508,14 @@ pub async fn having() {
.group_by(customer::Column::Name)
.group_by(order::Column::Total);
if cfg!(feature = "sqlx-sqlite") {
select = select.having(Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).gt(dec!(90.00)));
select = select.having(
Expr::expr(Expr::col(order::Column::Total).cast_as(Alias::new("real"))).gt(dec!(90.00)),
);
} else {
select = select.having(order::Column::Total.gt(dec!(90.00)));
}
let results = select.into_model::<SelectResult>()
let results = select
.into_model::<SelectResult>()
.all(&ctx.db)
.await
.unwrap();
Expand Down

0 comments on commit 3141778

Please sign in to comment.