diff options
author | saturneric <[email protected]> | 2024-11-18 14:31:25 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-11-18 14:31:25 +0000 |
commit | 91b3a5950f0d3243ad514f0832faf1549f222d3a (patch) | |
tree | fce00a530f6b66d30855d6ce4dcd2087e56f4de4 /src/test | |
parent | feat: use keys.openpgp.org as default for key publishing and refreshing (diff) | |
download | GpgFrontend-91b3a5950f0d3243ad514f0832faf1549f222d3a.tar.gz GpgFrontend-91b3a5950f0d3243ad514f0832faf1549f222d3a.zip |
feat: support export a single subkey
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/core/GpgCoreTestImportExport.cpp | 60 |
1 files changed, 57 insertions, 3 deletions
diff --git a/src/test/core/GpgCoreTestImportExport.cpp b/src/test/core/GpgCoreTestImportExport.cpp index e67abe78..87e13252 100644 --- a/src/test/core/GpgCoreTestImportExport.cpp +++ b/src/test/core/GpgCoreTestImportExport.cpp @@ -26,13 +26,67 @@ * */ -#include <vector> - #include "GpgCoreTest.h" #include "core/GpgConstants.h" +#include "core/function/gpg/GpgKeyImportExporter.h" +#include "core/utils/GpgUtils.h" namespace GpgFrontend::Test { -// TEST_F(GpgCoreTest, CoreExportSecretTest) {} +TEST_F(GpgCoreTest, CoreExportSubkeyTestA) { + auto [err, gf_buffer] = GpgKeyImportExporter::GetInstance().ExportSubkey( + "F89C95A05088CC93", true); + + ASSERT_EQ(CheckGpgError(err), GPG_ERR_NO_ERROR); + ASSERT_FALSE(gf_buffer.Empty()); + ASSERT_EQ( + QCryptographicHash::hash(gf_buffer.ConvertToQByteArray(), + QCryptographicHash::Sha256) + .toHex(), + QByteArray( + "6e3375060aa889d9eb61e2966eabb31eb6b5359a7742ee7adeedec09e6afa36a")); +} + +TEST_F(GpgCoreTest, CoreExportSubkeyTestB) { + auto [err, gf_buffer] = GpgKeyImportExporter::GetInstance().ExportSubkey( + "F89C95A05088CC93!", true); + + ASSERT_EQ(CheckGpgError(err), GPG_ERR_NO_ERROR); + ASSERT_FALSE(gf_buffer.Empty()); + ASSERT_EQ( + QCryptographicHash::hash(gf_buffer.ConvertToQByteArray(), + QCryptographicHash::Sha256) + .toHex(), + QByteArray( + "6e3375060aa889d9eb61e2966eabb31eb6b5359a7742ee7adeedec09e6afa36a")); +} + +TEST_F(GpgCoreTest, CoreExportSubkeyTestC) { + auto [err, gf_buffer] = GpgKeyImportExporter::GetInstance().ExportSubkey( + "CFF986E51BBC2F46064C2136F89C95A05088CC93", true); + + ASSERT_EQ(CheckGpgError(err), GPG_ERR_NO_ERROR); + ASSERT_FALSE(gf_buffer.Empty()); + ASSERT_EQ( + QCryptographicHash::hash(gf_buffer.ConvertToQByteArray(), + QCryptographicHash::Sha256) + .toHex(), + QByteArray( + "6e3375060aa889d9eb61e2966eabb31eb6b5359a7742ee7adeedec09e6afa36a")); +} + +TEST_F(GpgCoreTest, CoreExportSubkeyTestD) { + auto [err, gf_buffer] = GpgKeyImportExporter::GetInstance().ExportSubkey( + "CFF986E51BBC2F46064C2136F89C95A05088CC93!", true); + + ASSERT_EQ(CheckGpgError(err), GPG_ERR_NO_ERROR); + ASSERT_FALSE(gf_buffer.Empty()); + ASSERT_EQ( + QCryptographicHash::hash(gf_buffer.ConvertToQByteArray(), + QCryptographicHash::Sha256) + .toHex(), + QByteArray( + "6e3375060aa889d9eb61e2966eabb31eb6b5359a7742ee7adeedec09e6afa36a")); +} } // namespace GpgFrontend::Test
\ No newline at end of file |