From e1e1834cbddca1e97ac762b64e48c61b35ee0937 Mon Sep 17 00:00:00 2001
From: cgeek <cem.moreau@gmail.com>
Date: Tue, 21 Sep 2021 18:42:16 +0200
Subject: [PATCH] refact: move Signable and duniter keys

---
 src/cli/certify.rs                                 |  4 ++--
 src/crypto/{ => duniter_key}/base58_duniter_key.rs |  0
 src/crypto/{duniter_key.rs => duniter_key/mod.rs}  | 14 ++++++++++----
 src/crypto/{ => duniter_key}/scrypt_duniter_key.rs |  0
 src/crypto/{ => duniter_key}/seed_duniter_key.rs   |  0
 src/crypto/mod.rs                                  |  7 -------
 src/dubp/documents/certification.rs                |  2 +-
 src/dubp/mod.rs                                    |  4 +++-
 src/{crypto => dubp}/signable.rs                   |  0
 src/lib.rs                                         |  6 +++---
 10 files changed, 19 insertions(+), 18 deletions(-)
 rename src/crypto/{ => duniter_key}/base58_duniter_key.rs (100%)
 rename src/crypto/{duniter_key.rs => duniter_key/mod.rs} (84%)
 rename src/crypto/{ => duniter_key}/scrypt_duniter_key.rs (100%)
 rename src/crypto/{ => duniter_key}/seed_duniter_key.rs (100%)
 rename src/{crypto => dubp}/signable.rs (100%)

diff --git a/src/cli/certify.rs b/src/cli/certify.rs
index a51a4cb..84b8052 100644
--- a/src/cli/certify.rs
+++ b/src/cli/certify.rs
@@ -1,9 +1,9 @@
 use crate::bma::BmaNode;
 use crate::bma::lookup_identity::{LookupResult, lookup2identities, lookup_print};
-use crate::crypto::scrypt_duniter_key::ScryptDuniterKey;
+use crate::crypto::duniter_key::scrypt_duniter_key::ScryptDuniterKey;
 use crate::crypto::duniter_key::ToDuniterKey;
 use crate::dubp::documents::certification::Certification;
-use crate::crypto::signable::Signable;
+use crate::dubp::signable::Signable;
 
 pub fn certify(node: BmaNode, uid_or_pub: String) -> Result<(), String> {
     let address = node.get_address();
diff --git a/src/crypto/base58_duniter_key.rs b/src/crypto/duniter_key/base58_duniter_key.rs
similarity index 100%
rename from src/crypto/base58_duniter_key.rs
rename to src/crypto/duniter_key/base58_duniter_key.rs
diff --git a/src/crypto/duniter_key.rs b/src/crypto/duniter_key/mod.rs
similarity index 84%
rename from src/crypto/duniter_key.rs
rename to src/crypto/duniter_key/mod.rs
index 63b8e75..c2e393d 100644
--- a/src/crypto/duniter_key.rs
+++ b/src/crypto/duniter_key/mod.rs
@@ -3,10 +3,16 @@ use std::fmt::Formatter;
 use bs58;
 use cryptoxide::ed25519;
 
+pub use scrypt_duniter_key::ScryptDuniterKey;
+pub use seed_duniter_key::SeedDuniterKey;
+
 use crate::crypto::duniter_signature::DuniterSignature;
-pub use crate::crypto::scrypt_duniter_key::ScryptDuniterKey;
-pub use crate::crypto::seed_duniter_key::SeedDuniterKey;
-use crate::crypto::signable::Signable;
+use crate::dubp::signable::Signable;
+
+/// The implementations
+pub mod scrypt_duniter_key;
+pub mod seed_duniter_key;
+pub mod base58_duniter_key;
 
 pub const PUBLIC_KEY_LEN: usize = 32;
 pub const SECRET_KEY_LEN: usize = 64;
@@ -45,4 +51,4 @@ impl DuniterKey {
     pub fn verify(&self, message: &str, signature: &DuniterSignature) -> bool {
         ed25519::verify(message.as_bytes(), &self.public, &signature.as_bytes())
     }
-}
\ No newline at end of file
+}
diff --git a/src/crypto/scrypt_duniter_key.rs b/src/crypto/duniter_key/scrypt_duniter_key.rs
similarity index 100%
rename from src/crypto/scrypt_duniter_key.rs
rename to src/crypto/duniter_key/scrypt_duniter_key.rs
diff --git a/src/crypto/seed_duniter_key.rs b/src/crypto/duniter_key/seed_duniter_key.rs
similarity index 100%
rename from src/crypto/seed_duniter_key.rs
rename to src/crypto/duniter_key/seed_duniter_key.rs
diff --git a/src/crypto/mod.rs b/src/crypto/mod.rs
index 7a694a1..e838147 100644
--- a/src/crypto/mod.rs
+++ b/src/crypto/mod.rs
@@ -2,10 +2,3 @@ mod duniter_signature;
 
 /// The API of crypto module.
 pub mod duniter_key;
-/// The implementations
-pub mod scrypt_duniter_key;
-pub mod seed_duniter_key;
-pub mod base58_duniter_key;
-
-/// Other
-pub mod signable;
diff --git a/src/dubp/documents/certification.rs b/src/dubp/documents/certification.rs
index e132dab..953aefe 100644
--- a/src/dubp/documents/certification.rs
+++ b/src/dubp/documents/certification.rs
@@ -10,7 +10,7 @@ pub struct Certification {
     pub cert_blockstamp: String,
 }
 
-impl crate::crypto::signable::Signable for Certification {
+impl crate::dubp::signable::Signable for Certification {
     fn to_signable(self: &Self) -> String {
         format!("Version: {}
 Type: Certification
diff --git a/src/dubp/mod.rs b/src/dubp/mod.rs
index 4066f97..a956969 100644
--- a/src/dubp/mod.rs
+++ b/src/dubp/mod.rs
@@ -1,9 +1,11 @@
 pub mod documents;
 
+pub mod signable;
+
 #[cfg(test)]
 mod tests {
     use crate::dubp::documents::certification::Certification;
-    use crate::crypto::signable::Signable;
+    use crate::dubp::signable::Signable;
 
     #[test]
     fn test_signable_cert() {
diff --git a/src/crypto/signable.rs b/src/dubp/signable.rs
similarity index 100%
rename from src/crypto/signable.rs
rename to src/dubp/signable.rs
diff --git a/src/lib.rs b/src/lib.rs
index ea003ab..a232714 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -22,9 +22,9 @@ mod tests {
 
     use crate::*;
     use crate::crypto::duniter_key::SeedDuniterKey;
-    use crate::crypto::base58_duniter_key::Base58DuniterKey;
-    use crate::crypto::scrypt_duniter_key::{ScryptDuniterKey};
-    use crate::crypto::signable::Signable;
+    use crate::crypto::duniter_key::base58_duniter_key::Base58DuniterKey;
+    use crate::crypto::duniter_key::scrypt_duniter_key::{ScryptDuniterKey};
+    use crate::dubp::signable::Signable;
 
     const SALT: &str = "test_salt";
     const PASSWD: &str = "test_passwd";
-- 
GitLab