extern crate conform;
#[macro_use]
extern crate conform_derive;
use conform::Conform;
#[test]
fn assert_trim() {
#[derive(Conform)]
struct Subject {
#[conform(trim)]
prop: String,
}
let mut subject = Subject {
prop: " Foo ".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "Foo".to_string());
}
#[test]
fn assert_trim_left() {
#[derive(Conform)]
struct Subject {
#[conform(trim_left)]
prop: String,
}
let mut subject = Subject {
prop: " Foo ".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "Foo ".to_string());
}
#[test]
fn assert_trim_right() {
#[derive(Conform)]
struct Subject {
#[conform(trim_right)]
prop: String,
}
let mut subject = Subject {
prop: " Foo ".to_string(),
};
subject.conform();
assert_eq!(subject.prop, " Foo".to_string());
}
#[test]
fn assert_lower() {
#[derive(Conform)]
struct Subject {
#[conform(lower)]
prop: String,
}
let mut subject = Subject {
prop: "Foo".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "foo".to_string());
}
#[test]
fn assert_upper() {
#[derive(Conform)]
struct Subject {
#[conform(upper)]
prop: String,
}
let mut subject = Subject {
prop: "Foo".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "FOO".to_string());
}
#[test]
fn assert_sentence() {
#[derive(Conform)]
struct Subject {
#[conform(sentence)]
prop: String,
}
let mut subject = Subject {
prop: "Foo Bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "foo bar".to_string());
}
#[test]
fn assert_title() {
#[derive(Conform)]
struct Subject {
#[conform(title)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "Foo Bar".to_string());
}
#[test]
fn assert_camel() {
#[derive(Conform)]
struct Subject {
#[conform(camel)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "fooBar".to_string());
}
#[test]
fn assert_pascal() {
#[derive(Conform)]
struct Subject {
#[conform(pascal)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "FooBar".to_string());
}
#[test]
fn assert_kebab() {
#[derive(Conform)]
struct Subject {
#[conform(kebab)]
prop: String,
}
let mut subject = Subject {
prop: "Foo Bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "foo-bar".to_string());
}
#[test]
fn assert_train() {
#[derive(Conform)]
struct Subject {
#[conform(train)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "Foo-Bar".to_string());
}
#[test]
fn assert_snake() {
#[derive(Conform)]
struct Subject {
#[conform(snake)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "foo_bar".to_string());
}
#[test]
fn assert_constant() {
#[derive(Conform)]
struct Subject {
#[conform(constant)]
prop: String,
}
let mut subject = Subject {
prop: "foo bar".to_string(),
};
subject.conform();
assert_eq!(subject.prop, "FOO_BAR".to_string());
}