From 500e761a683ae721694e6f90bf8d223e76d22f7b Mon Sep 17 00:00:00 2001 From: Chris Tsang Date: Thu, 13 Jul 2023 16:00:37 +0100 Subject: [PATCH] Changelog --- CHANGELOG.md | 7 ++++--- src/entity/active_enum.rs | 14 ++++++++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 41ea7b33..11a1ab05 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -183,13 +183,13 @@ pub struct StringVec(pub Vec); * Add `DeriveDisplay` derive macro to implements `std::fmt::Display` for active enum https://github.com/SeaQL/sea-orm/pull/1726 ```rust #[derive(DeriveDisplay)] -pub enum DisplayTea { +enum DisplayTea { EverydayTea, - #[sea_orm(display_value = "Breakfast")] + #[sea_orm(display_value = "Breakfast Tea")] BreakfastTea, } assert_eq!(format!("{}", DisplayTea::EverydayTea), "EverydayTea"); -assert_eq!(format!("{}", DisplayTea::BreakfastTea), "Breakfast"); +assert_eq!(format!("{}", DisplayTea::BreakfastTea), "Breakfast Tea"); ``` * Added `UpdateMany::exec_with_returning()` https://github.com/SeaQL/sea-orm/pull/1677 ```rust @@ -328,6 +328,7 @@ assert!(matches!(res, Ok(TryInsertResult::Conflicted))); ### Bug Fixes +* `DeriveActiveEnum` no longer impl `Display` * Fixed `DeriveActiveEnum` throwing errors because `string_value` consists non-UAX#31 compliant characters https://github.com/SeaQL/sea-orm/pull/1374 For example, diff --git a/src/entity/active_enum.rs b/src/entity/active_enum.rs index 0f56bd71..6ac81f11 100644 --- a/src/entity/active_enum.rs +++ b/src/entity/active_enum.rs @@ -490,4 +490,18 @@ mod tests { assert_eq!(EnumVariant::A0x24B.to_string(), "A$B"); assert_eq!(EnumVariant::_0x300x20123.to_string(), "0 123"); } + + #[test] + fn test_derive_display() { + use crate::DeriveDisplay; + + #[derive(DeriveDisplay)] + enum DisplayTea { + EverydayTea, + #[sea_orm(display_value = "Breakfast Tea")] + BreakfastTea, + } + assert_eq!(format!("{}", DisplayTea::EverydayTea), "EverydayTea"); + assert_eq!(format!("{}", DisplayTea::BreakfastTea), "Breakfast Tea"); + } }