WIP:
diff --git a/src/client.rs b/src/client.rs
index 813de08..c67ef55 100644
--- a/src/client.rs
+++ b/src/client.rs
@@ -8,6 +8,7 @@
     Request, Response,
 };
 
+#[derive(Debug, PartialEq)]
 pub struct Credentials {
     access_key: String,
     access_secret: String,
@@ -24,10 +25,10 @@
 }
 
 impl StaticCredentialProvider {
-    pub fn new(access_key: String, access_secret: String) -> Self {
+    pub fn new(access_key: &str, access_secret: &str) -> Self {
         Self {
-            access_key,
-            access_secret,
+            access_key: access_key.to_owned(),
+            access_secret: access_secret.to_owned(),
         }
     }
 }
@@ -36,7 +37,7 @@
     fn get_credentials(&self) -> Credentials {
         Credentials {
             access_key: self.access_key.clone(),
-            access_secret: self.access_key.clone(),
+            access_secret: self.access_secret.clone(),
             session_token: None,
         }
     }
@@ -158,6 +159,20 @@
         assert_eq!(route_response.status.unwrap().code, Code::Ok as i32);
     }
 
+    #[test]
+    fn test_static_credentials_provider() {
+        let provider = StaticCredentialProvider::new("ak", "as");
+        let credentials = provider.get_credentials();
+        assert_eq!(
+            credentials,
+            Credentials {
+                access_key: String::from("ak"),
+                access_secret: String::from("as"),
+                session_token: None,
+            }
+        );
+    }
+
     #[tokio::test]
     async fn test_periodic_task() {
         let client_manager = ClientManager::default();