morethantext-web/src/morethantext/fieldtype/mod.rs

42 lines
840 B
Rust

use std::fmt;
mod static_string;
use static_string::StaticString;
pub enum FieldType {
StaticString(StaticString),
}
impl fmt::Display for FieldType {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
FieldType::StaticString(data) => write!(f, "{}", data),
}
}
}
impl From<StaticString> for FieldType {
fn from(data: StaticString) -> Self {
FieldType::StaticString(data)
}
}
#[cfg(test)]
mod converstion {
use super::*;
#[test]
fn from_static_string() {
let data = "a static string";
let field = StaticString::new(data);
let ftype: FieldType = field.into();
assert!(
ftype.to_string() == data,
"\n\nGot: {}\nWant: {}",
ftype.to_string(),
data
);
}
}