summaryrefslogtreecommitdiffstats
path: root/tests/integer_range.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integer_range.rs')
-rw-r--r--tests/integer_range.rs37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/integer_range.rs b/tests/integer_range.rs
new file mode 100644
index 0000000..626f159
--- /dev/null
+++ b/tests/integer_range.rs
@@ -0,0 +1,37 @@
+extern crate config;
+
+use config::*;
+
+#[test]
+fn wrapping_u16() {
+ let c = Config::builder()
+ .add_source(config::File::from_str(
+ r#"
+ [settings]
+ port = 66000
+ "#,
+ config::FileFormat::Toml,
+ ))
+ .build()
+ .unwrap();
+
+ let port: u16 = c.get("settings.port").unwrap();
+ assert_eq!(port, 464);
+}
+
+#[test]
+fn nonwrapping_u32() {
+ let c = Config::builder()
+ .add_source(config::File::from_str(
+ r#"
+ [settings]
+ port = 66000
+ "#,
+ config::FileFormat::Toml,
+ ))
+ .build()
+ .unwrap();
+
+ let port: u32 = c.get("settings.port").unwrap();
+ assert_eq!(port, 66000);
+}