diff options
| author | 2023-03-07 12:14:07 +0100 | |
|---|---|---|
| committer | 2023-03-13 14:41:05 +0100 | |
| commit | 40be079d5d0ea988303cd70034d11c92fbb8fa39 (patch) | |
| tree | de3ddcb2ec3a3c11d521e6bc5568f3ec2c8e546a /askama_derive | |
| parent | 3ea521d6e88150dd4307ad610cabfe0fb8f30f9d (diff) | |
| download | askama-40be079d5d0ea988303cd70034d11c92fbb8fa39.tar.gz askama-40be079d5d0ea988303cd70034d11c92fbb8fa39.tar.bz2 askama-40be079d5d0ea988303cd70034d11c92fbb8fa39.zip | |
Add tests for whitespace argument in template derive proc-macro
Diffstat (limited to 'askama_derive')
| -rw-r--r-- | askama_derive/src/config.rs | 30 | 
1 files changed, 30 insertions, 0 deletions
| diff --git a/askama_derive/src/config.rs b/askama_derive/src/config.rs index 22aada7..cf22a72 100644 --- a/askama_derive/src/config.rs +++ b/askama_derive/src/config.rs @@ -549,4 +549,34 @@ mod tests {          .unwrap();          assert_eq!(config.whitespace, WhitespaceHandling::Minimize);      } + +    #[cfg(feature = "toml")] +    #[test] +    fn test_whitespace_in_template() { +        // Checking that template arguments have precedence over general configuration. +        // So in here, in the template arguments, there is `whitespace = "minimize"` so +        // the `WhitespaceHandling` should be `Minimize` as well. +        let config = Config::new( +            r#" +            [general] +            whitespace = "suppress" +            "#, +            Some(&"minimize".to_owned()), +        ) +        .unwrap(); +        assert_eq!(config.whitespace, WhitespaceHandling::Minimize); + +        let config = Config::new(r#""#, Some(&"minimize".to_owned())).unwrap(); +        assert_eq!(config.whitespace, WhitespaceHandling::Minimize); +    } + +    #[test] +    fn test_config_whitespace_error() { +        let config = Config::new(r#""#, Some(&"trim".to_owned())); +        if let Err(err) = config { +            assert_eq!(err.msg, "invalid value for `whitespace`: \"trim\""); +        } else { +            panic!("Config::new should have return an error"); +        } +    }  } | 
