aboutsummaryrefslogtreecommitdiffstats
path: root/src/scrobbler.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/scrobbler.rs')
-rw-r--r--src/scrobbler.rs22
1 files changed, 1 insertions, 21 deletions
diff --git a/src/scrobbler.rs b/src/scrobbler.rs
index e133669..40d3ce6 100644
--- a/src/scrobbler.rs
+++ b/src/scrobbler.rs
@@ -162,7 +162,7 @@ impl Scrobbler {
162 } 162 }
163 } 163 }
164 164
165 fn sign_lastfm(params: &BTreeMap<&str, &str>, secret: &str) -> String { 165 pub fn sign_lastfm(params: &BTreeMap<&str, &str>, secret: &str) -> String {
166 let mut concat = String::new(); 166 let mut concat = String::new();
167 for (key, value) in params { 167 for (key, value) in params {
168 concat.push_str(key); 168 concat.push_str(key);
@@ -333,23 +333,3 @@ impl Scrobbler {
333 Ok(()) 333 Ok(())
334 } 334 }
335} 335}
336
337#[cfg(test)]
338mod tests {
339 use super::*;
340
341 #[test]
342 fn test_sign_lastfm() {
343 let params = BTreeMap::from([
344 ("api_key", "abc123"),
345 ("method", "track.scrobble"),
346 ("sk", "session_key"),
347 ("track", "Test Track"),
348 ("artist", "Test Artist"),
349 ("timestamp", "1234567890"),
350 ]);
351 let sig = Scrobbler::sign_lastfm(&params, "sekrit");
352 assert_eq!(sig.len(), 32);
353 assert!(sig.chars().all(|c| c.is_ascii_hexdigit()));
354 }
355}