From 06c631db053c4d4157d6d7dc994c78e9a6f30f45 Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Sat, 25 Feb 2017 11:01:31 -0800 Subject: [PATCH] Bring in the tests --- serde_codegen_internals/src/case.rs | 21 +++++++++++++++++++++ serde_codegen_internals/tests/test.rs | 25 ------------------------- 2 files changed, 21 insertions(+), 25 deletions(-) delete mode 100644 serde_codegen_internals/tests/test.rs diff --git a/serde_codegen_internals/src/case.rs b/serde_codegen_internals/src/case.rs index 91044c68..2a702b1a 100644 --- a/serde_codegen_internals/src/case.rs +++ b/serde_codegen_internals/src/case.rs @@ -95,3 +95,24 @@ impl FromStr for RenameRule { } } } + +#[test] +fn test_rename_rule_variant_strs() { + let variants = vec!["Outcome", "VeryTastyVegetables", "A", "Z42", "bad_snake_case"]; + let variants_renamed_expected = vec![ + (PascalCase, vec![Ok("Outcome"), Ok("VeryTastyVegetables"), Ok("A"), Ok("Z42"), Err(())]), + (CamelCase, vec![Ok("outcome"), Ok("veryTastyVegetables"), Ok("a"), Ok("z42"), Err(())]), + (SnakeCase, vec![Ok("outcome"), Ok("very_tasty_vegetables"), Ok("a"), Ok("z42"), Err(())]), + (ScreamingSnakeCase, vec![Ok("OUTCOME"), Ok("VERY_TASTY_VEGETABLES"), Ok("A"), Ok("Z42"), Err(())]), + (KebabCase, vec![Ok("outcome"), Ok("very-tasty-vegetables"), Ok("a"), Ok("z42"), Err(())]), + ]; + + for variant in variants.iter() { + assert_eq!(RenameRule::None.apply_to_variant(variant.to_string()), Ok(variant.to_string())); + } + for (rule, expected) in variants_renamed_expected.into_iter().map(|(rule, expected)| (rule, expected.into_iter().map(|expect| expect.map(|str| str.to_string())))) { + for (variant, expected) in variants.iter().zip(expected) { + assert_eq!(rule.apply_to_variant(variant.to_string()).map_err(|_| ()), expected); + } + } +} diff --git a/serde_codegen_internals/tests/test.rs b/serde_codegen_internals/tests/test.rs deleted file mode 100644 index f006be12..00000000 --- a/serde_codegen_internals/tests/test.rs +++ /dev/null @@ -1,25 +0,0 @@ -extern crate serde_codegen_internals; - -use serde_codegen_internals::attr::RenameRule; -use RenameRule::*; - -#[test] -fn test_rename_rule_variant_strs() { - let variants = vec!["Outcome", "VeryTastyVegetables", "A", "Z42", "bad_snake_case"]; - let variants_renamed_expected = vec![ - (PascalCase, vec![Ok("Outcome"), Ok("VeryTastyVegetables"), Ok("A"), Ok("Z42"), Err(())]), - (CamelCase, vec![Ok("outcome"), Ok("veryTastyVegetables"), Ok("a"), Ok("z42"), Err(())]), - (SnakeCase, vec![Ok("outcome"), Ok("very_tasty_vegetables"), Ok("a"), Ok("z42"), Err(())]), - (ScreamingSnakeCase, vec![Ok("OUTCOME"), Ok("VERY_TASTY_VEGETABLES"), Ok("A"), Ok("Z42"), Err(())]), - (KebabCase, vec![Ok("outcome"), Ok("very-tasty-vegetables"), Ok("a"), Ok("z42"), Err(())]), - ]; - - for variant in variants.iter() { - assert_eq!(RenameRule::None.apply_to_variant(variant.to_string()), Ok(variant.to_string())); - } - for (rule, expected) in variants_renamed_expected.into_iter().map(|(rule, expected)| (rule, expected.into_iter().map(|expect| expect.map(|str| str.to_string())))) { - for (variant, expected) in variants.iter().zip(expected) { - assert_eq!(rule.apply_to_variant(variant.to_string()).map_err(|_| ()), expected); - } - } -}