summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tests.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/tests.rs b/src/tests.rs
new file mode 100644
index 0000000..4c2a049
--- /dev/null
+++ b/src/tests.rs
@@ -0,0 +1,30 @@
+#[cfg(test)]
+mod tests {
+ use crate::types::*;
+
+ #[test]
+ fn correct_hydruspermissions_url_encode() {
+ let perms: [HydrusPermissions; 3] = [
+ HydrusPermissions::ImportAndEditURLs,
+ HydrusPermissions::ImportAndEditFiles,
+ HydrusPermissions::SeeLocalPaths,
+ ];
+ let json_string = musli::json::to_string(&perms).unwrap();
+ let encoded = urlencoding::encode(&json_string);
+
+ assert_eq!(encoded, "%5B0%2C1%2C13%5D")
+ }
+
+ #[test]
+ fn correct_hydruspermissions_decode() {
+ let perms: [HydrusPermissions; 3] = [
+ HydrusPermissions::ImportAndEditURLs,
+ HydrusPermissions::ImportAndEditFiles,
+ HydrusPermissions::SeeLocalPaths,
+ ];
+ let json_string = musli::json::to_string(&perms).unwrap();
+
+ let res: [HydrusPermissions; 3] = musli::json::from_str(&json_string).unwrap();
+ assert_eq!(res, perms)
+ }
+}