cipherstash_config/column/index/
ste_vec_mode.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Copy, Clone, Debug, Default, Serialize, Deserialize, PartialEq, Eq)]
4#[serde(rename_all = "kebab-case")]
5pub enum SteVecMode {
6 Compat,
7 #[default]
8 Standard,
9}
10
11#[cfg(test)]
12mod tests {
13 use super::SteVecMode;
14 use serde_json::json;
15
16 #[test]
17 fn test_default_is_standard() {
18 assert_eq!(SteVecMode::default(), SteVecMode::Standard);
19 }
20
21 #[test]
22 fn test_serializes_kebab_case() {
23 assert_eq!(
24 serde_json::to_value(SteVecMode::Compat).unwrap(),
25 json!("compat")
26 );
27 assert_eq!(
28 serde_json::to_value(SteVecMode::Standard).unwrap(),
29 json!("standard")
30 );
31 }
32
33 #[test]
34 fn test_deserializes_kebab_case() {
35 let compat: SteVecMode = serde_json::from_value(json!("compat")).unwrap();
36 let standard: SteVecMode = serde_json::from_value(json!("standard")).unwrap();
37 assert_eq!(compat, SteVecMode::Compat);
38 assert_eq!(standard, SteVecMode::Standard);
39 }
40}