feat: make region request derive strum (#87)

* feat: derive "strum"

* rebase main
This commit is contained in:
LFC
2023-08-28 15:41:50 +08:00
committed by GitHub
parent 39b0ea8d08
commit 73eeb12704
3 changed files with 18 additions and 0 deletions
+2
View File
@@ -8,6 +8,8 @@ license = "Apache-2.0"
prost = "0.11" prost = "0.11"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0" serde_json = "1.0"
strum = "0.25"
strum_macros = "0.25"
tonic = "0.9" tonic = "0.9"
[build-dependencies] [build-dependencies]
+4
View File
@@ -26,6 +26,10 @@ fn main() {
"SemanticType", "SemanticType",
"#[derive(::serde::Serialize, ::serde::Deserialize)]", "#[derive(::serde::Serialize, ::serde::Deserialize)]",
) )
.enum_attribute(
"region.RegionRequest.body",
"#[derive(strum_macros::AsRefStr)]",
)
.compile( .compile(
&[ &[
"proto/greptime/v1/database.proto", "proto/greptime/v1/database.proto",
+12
View File
@@ -13,3 +13,15 @@
// limitations under the License. // limitations under the License.
tonic::include_proto!("greptime.v1.region"); tonic::include_proto!("greptime.v1.region");
#[cfg(test)]
mod test {
use crate::v1::region::region_request::Body as RegionRequest;
use crate::v1::region::InsertRequests;
#[test]
fn test_region_request_name() {
let request = RegionRequest::Inserts(InsertRequests { requests: vec![] });
assert_eq!("Inserts", request.as_ref());
}
}