gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-donau] branch master updated: work on db tests


From: gnunet
Subject: [taler-donau] branch master updated: work on db tests
Date: Thu, 25 Apr 2024 18:00:01 +0200

This is an automated email from the git hooks/post-receive script.

johannes-casaburi pushed a commit to branch master
in repository donau.

The following commit(s) were added to refs/heads/master by this push:
     new 0e96049  work on db tests
0e96049 is described below

commit 0e9604918293996b9a690bd6909538fb324123ca
Author: Casaburi Johannes <johannes.casaburi@students.bfh.ch>
AuthorDate: Thu Apr 25 17:59:30 2024 +0200

    work on db tests
---
 src/donaudb/pg_insert_submitted_receipts.c |   2 +-
 src/donaudb/pg_insert_submitted_receipts.h |   2 +-
 src/donaudb/test_donaudb.c                 | 151 +++++++++++++++++++++++++----
 src/include/donaudb_plugin.h               |  54 +++++------
 4 files changed, 161 insertions(+), 48 deletions(-)

diff --git a/src/donaudb/pg_insert_submitted_receipts.c 
b/src/donaudb/pg_insert_submitted_receipts.c
index 60d6370..913fd8b 100644
--- a/src/donaudb/pg_insert_submitted_receipts.c
+++ b/src/donaudb/pg_insert_submitted_receipts.c
@@ -29,7 +29,7 @@
 enum GNUNET_DB_QueryStatus
 DH_PG_insert_submitted_receipts (
   void *cls,
-  const struct DONAU_HashDonorTaxId *h_tax_number,
+  struct DONAU_HashDonorTaxId *h_tax_number,
   size_t num_dr,
   const struct DONAU_DonationReceipt donation_receipts[static num_dr],
   uint64_t donation_year)
diff --git a/src/donaudb/pg_insert_submitted_receipts.h 
b/src/donaudb/pg_insert_submitted_receipts.h
index afe8fa2..b5ac61e 100644
--- a/src/donaudb/pg_insert_submitted_receipts.h
+++ b/src/donaudb/pg_insert_submitted_receipts.h
@@ -38,7 +38,7 @@
 enum GNUNET_DB_QueryStatus
 DH_PG_insert_submitted_receipts (
   void *cls,
-  const struct DONAU_HashDonorTaxId *h_tax_number,
+  struct DONAU_HashDonorTaxId *h_tax_number,
   size_t num_dr,
   const struct DONAU_DonationReceipt donation_receipts[static num_dr],
   uint64_t donation_year
diff --git a/src/donaudb/test_donaudb.c b/src/donaudb/test_donaudb.c
index 94a520f..76b2e7c 100644
--- a/src/donaudb/test_donaudb.c
+++ b/src/donaudb/test_donaudb.c
@@ -65,6 +65,67 @@ static int result;
  */
 static struct DONAUDB_Plugin *plugin;
 
+/**
+ * Return charities information.
+ *
+ * @param cls closure
+ */
+static enum GNUNET_GenericReturnValue
+charities_cb (
+  void *cls,
+  const struct DONAU_CharityPublicKeyP charity_pub,
+  const char *charity_name,
+  const char *charity_url,
+  struct TALER_Amount max_per_year,
+  struct TALER_Amount receipts_to_date,
+  uint64_t current_year)
+{
+  fprintf (stderr,
+           "called charities_cb\n");
+  return GNUNET_OK;
+}
+
+
+/**
+ * Function called with information about the donau's donation_unit keys.
+ *
+ * @param cls NULL
+ * @param donation_unit_pub public key of the donation_unit
+ * @param h_donation_unit_pub hash of @a donation_unit_pub
+ * @param validity_year of the donation unit
+ * @param value of the donation unit
+ */
+static enum GNUNET_GenericReturnValue
+donation_unit_info_cb (
+  void *cls,
+  const struct DONAU_DonationUnitHashP *h_donation_unit_pub,
+  const struct DONAU_DonationUnitPublicKey *donation_unit_pub,
+  uint64_t validity_year,
+  struct TALER_Amount *value)
+{
+  fprintf (stderr,
+           "called donation_unit_info_cb\n");
+  return GNUNET_OK;
+}
+
+
+/**
+ * Function called with information about the donau's online signing keys.
+ *
+ * @param cls NULL
+ * @param donau_pub the public key
+ * @param meta meta data information about the denomination type (expirations)
+ */
+static void
+iterate_active_signing_keys_cb (
+  void *cls,
+  const struct DONAU_DonauPublicKeyP *donau_pub,
+  struct DONAUDB_SignkeyMetaData *meta)
+{
+  fprintf (stderr,
+           "called iterate_active_signing_keys_cb\n");
+}
+
 
 /**
  * Main function that will be run by the scheduler.
@@ -98,6 +159,19 @@ run (void *cls)
   struct DONAU_DonauPublicKeyP donau_pub;
   struct DONAUDB_SignkeyMetaData sk_meta;
 
+  // Issued receipts information
+  size_t num_b_sigs = 1;
+  struct DONAU_BlindedDonationUnitSignature du_sigs[num_b_sigs];
+  struct DONAU_DonationReceiptHashP h_receipt;
+  struct TALER_Amount amount_receipts;
+  bool smaller_than_max_per_year;
+  struct DONAUDB_IssuedReceiptsMetaData ir_meta;
+
+  // Submitted receipts information
+  struct DONAU_HashDonorTaxId h_tax_number;
+  size_t num_dr = 1;
+  struct DONAU_DonationReceipt donation_receipts[num_dr];
+
   if (NULL ==
       (plugin = DONAUDB_plugin_load (cfg)))
   {
@@ -124,10 +198,7 @@ run (void *cls)
            "Running DB tests\n");
 
   /* test DB is empty */
-  #ifdef SKIP
   charity_id = 1;
-  fprintf (stderr,
-           "Running lookup charity test...\n");
   FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
           plugin->lookup_charity (plugin->cls,
                                   charity_id,
@@ -145,7 +216,8 @@ run (void *cls)
   GNUNET_assert (GNUNET_OK ==
                  TALER_string_to_amount (CURRENCY ":0.000010",
                                          &receipts_to_date));
-  FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
+
+  FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
           plugin->insert_charity (plugin->cls,
                                   &charity_pub,
                                   charity_name,
@@ -153,12 +225,14 @@ run (void *cls)
                                   &max_per_year,
                                   &receipts_to_date,
                                   &current_year,
-                                  NULL));
+                                  &charity_id));
+
   /* test get charities */
   FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
           plugin->get_charities (plugin->cls,
-                                 NULL,
+                                 &charities_cb,
                                  charities));
+
   /* test delete charity */
   FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
           plugin->do_charity_delete (plugin->cls,
@@ -172,19 +246,26 @@ run (void *cls)
                  TALER_string_to_amount (CURRENCY ":1.000010",
                                          &du_value));
 
-  FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
-          plugin->insert_donation_unit (plugin->cls,
-                                        &h_donation_unit_pub,
-                                        &donation_unit_pub,
-                                        validity_year,
-                                        &du_value));
-
   /* test iterate donation units */
-  FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+  FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
           plugin->iterate_donation_units (plugin->cls,
-                                          NULL,
+                                          &donation_unit_info_cb,
                                           NULL));
 
+  // FIXME
+  // FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+  //         plugin->insert_donation_unit (plugin->cls,
+  //                                       &h_donation_unit_pub,
+  //                                       &donation_unit_pub,
+  //                                       validity_year,
+  //                                       &du_value));
+  //
+  // /* test iterate donation units */
+  // FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+  //         plugin->iterate_donation_units (plugin->cls,
+  //                                         &donation_unit_info_cb,
+  //                                         NULL));
+
   /* test insert signing key */
   RND_BLK (&donau_pub);
   now = GNUNET_TIME_timestamp_get ();
@@ -192,7 +273,7 @@ run (void *cls)
   sk_meta.expire_sign = now;
   sk_meta.valid_from = now;
 
-  FAILIF (GNUNET_DB_STATUS_SUCCESS_NO_RESULTS !=
+  FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
           plugin->insert_signing_key (plugin->cls,
                                       &donau_pub,
                                       &sk_meta));
@@ -200,10 +281,42 @@ run (void *cls)
   /* test iterate signing key */
   FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
           plugin->iterate_active_signing_keys (plugin->cls,
-                                               NULL,
+                                               &iterate_active_signing_keys_cb,
                                                NULL));
-  // TODO Add more tests
-  #endif
+
+  /* test insert issued receipt */
+  RND_BLK (&du_sigs[0]);
+  RND_BLK (&h_receipt);
+  smaller_than_max_per_year = false;
+  GNUNET_assert (GNUNET_OK ==
+                 TALER_string_to_amount (CURRENCY ":1.000010",
+                                         &amount_receipts));
+  FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+          plugin->insert_issued_receipt (plugin->cls,
+                                         1,
+                                         du_sigs,
+                                         charity_id,
+                                         &h_receipt,
+                                         &amount_receipts,
+                                         &smaller_than_max_per_year));
+
+  // FIXME
+  // FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+  //         plugin->lookup_issued_receipts (plugin->cls,
+  //                                         &h_receipt,
+  //                                         &ir_meta));
+
+  /* test insert submitted receipts */
+  // RND_BLK (&h_tax_number);
+  // RND_BLK (&donation_receipts[0].h_donation_unit_pub);
+  // RND_BLK (&donation_receipts[0].nonce);
+  // RND_BLK (&donation_receipts[0].donau_sig);
+  // FAILIF (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT !=
+  //         plugin->insert_submitted_receipts (plugin->cls,
+  //                                            &h_tax_number,
+  //                                            num_dr,
+  //                                            donation_receipts,
+  //                                            current_year));
 
   plugin->preflight (plugin->cls);
 
diff --git a/src/include/donaudb_plugin.h b/src/include/donaudb_plugin.h
index 9fc6bab..cda587d 100644
--- a/src/include/donaudb_plugin.h
+++ b/src/include/donaudb_plugin.h
@@ -216,7 +216,7 @@ struct DONAUDB_Plugin
    * @return #GNUNET_OK upon success; #GNUNET_SYSERR upon failure
    */
   enum GNUNET_GenericReturnValue
-  (*drop_tables)(void *cls);
+    (*drop_tables)(void *cls);
 
   /**
    * Create the necessary tables if they are not present
@@ -229,7 +229,7 @@ struct DONAUDB_Plugin
    * @return #GNUNET_OK upon success; #GNUNET_SYSERR upon failure
    */
   enum GNUNET_GenericReturnValue
-  (*create_tables)(void *cls);
+    (*create_tables)(void *cls);
 
 
   /**
@@ -241,8 +241,8 @@ struct DONAUDB_Plugin
    * @return #GNUNET_OK on success
    */
   enum GNUNET_GenericReturnValue
-  (*start)(void *cls,
-           const char *name);
+    (*start)(void *cls,
+             const char *name);
 
 
   /**
@@ -254,8 +254,8 @@ struct DONAUDB_Plugin
    * @return #GNUNET_OK on success
    */
   enum GNUNET_GenericReturnValue
-  (*start_read_committed)(void *cls,
-                          const char *name);
+    (*start_read_committed)(void *cls,
+                            const char *name);
 
   /**
    * Start a READ ONLY serializable transaction.
@@ -266,8 +266,8 @@ struct DONAUDB_Plugin
    * @return #GNUNET_OK on success
    */
   enum GNUNET_GenericReturnValue
-  (*start_read_only)(void *cls,
-                     const char *name);
+    (*start_read_only)(void *cls,
+                       const char *name);
 
 
   /**
@@ -277,7 +277,7 @@ struct DONAUDB_Plugin
    * @return transaction status
    */
   enum GNUNET_DB_QueryStatus
-  (*commit)(void *cls);
+    (*commit)(void *cls);
 
 
   /**
@@ -291,7 +291,7 @@ struct DONAUDB_Plugin
    *         #GNUNET_SYSERR on hard errors
    */
   enum GNUNET_GenericReturnValue
-  (*preflight)(void *cls);
+    (*preflight)(void *cls);
 
 
   /**
@@ -312,7 +312,7 @@ struct DONAUDB_Plugin
    *         #GNUNET_SYSERR on DB errors
    */
   enum GNUNET_GenericReturnValue
-  (*gc)(void *cls);
+    (*gc)(void *cls);
 
 
   /**
@@ -367,7 +367,7 @@ struct DONAUDB_Plugin
    * @return database transaction status
    */
   enum GNUNET_DB_QueryStatus
-  (*lookup_charity)(
+    (*lookup_charity)(
     void *cls,
     uint64_t charity_id,
     struct DONAUDB_CharityMetaData *meta);
@@ -382,7 +382,7 @@ struct DONAUDB_Plugin
    * @return database transaction status
    */
   enum GNUNET_DB_QueryStatus
-  (*do_charity_delete)(
+    (*do_charity_delete)(
     void *cls,
     uint64_t charity_id);
 
@@ -395,7 +395,7 @@ struct DONAUDB_Plugin
    * @return database transaction status
    */
   enum GNUNET_DB_QueryStatus
-  (*get_charities)(
+    (*get_charities)(
     void *cls,
     DONAUDB_GetCharitiesCallback cb,
     void *cb_cls);
@@ -409,7 +409,7 @@ struct DONAUDB_Plugin
    * @return database transaction status
    */
   enum GNUNET_DB_QueryStatus
-  (*insert_charity)(
+    (*insert_charity)(
     void *cls,
     const struct DONAU_CharityPublicKeyP *charity_pub,
     const char *charity_name,
@@ -428,7 +428,7 @@ struct DONAUDB_Plugin
     * @return database transaction status
     */
   enum GNUNET_DB_QueryStatus
-  (*iterate_donation_units)(
+    (*iterate_donation_units)(
     void *cls,
     DONAUDB_IterateDonationUnitsCallback cb,
     void *cb_cls);
@@ -442,7 +442,7 @@ struct DONAUDB_Plugin
     * @return database transaction status
     */
   enum GNUNET_DB_QueryStatus
-  (*get_history)(
+    (*get_history)(
     void *cls,
     DONAUDB_GetHistoryCallback cb,
     void *cb_cls);
@@ -456,7 +456,7 @@ struct DONAUDB_Plugin
     * @return database transaction status
     */
   enum GNUNET_DB_QueryStatus
-  (*lookup_history_entry)(
+    (*lookup_history_entry)(
     void *cls,
     const unsigned long long charity_id,
     const struct TALER_Amount *final_amount,
@@ -470,7 +470,7 @@ struct DONAUDB_Plugin
     * @return database transaction status
     */
   enum GNUNET_DB_QueryStatus
-  (*insert_donation_unit)(
+    (*insert_donation_unit)(
     void *cls,
     const struct DONAU_DonationUnitHashP *h_donation_unit_pub,
     const struct DONAU_DonationUnitPublicKey *donation_unit_pub,
@@ -487,7 +487,7 @@ struct DONAUDB_Plugin
     * @return transaction status code
     */
   enum GNUNET_DB_QueryStatus
-  (*insert_history_entry)(
+    (*insert_history_entry)(
     void *cls,
     const uint64_t charity_id,
     const struct TALER_Amount *final_amount,
@@ -506,7 +506,7 @@ struct DONAUDB_Plugin
     * @return transaction status code
     */
   enum GNUNET_DB_QueryStatus
-  (*insert_issued_receipt)(
+    (*insert_issued_receipt)(
     void *cls,
     const size_t num_blinded_sig,
     const struct DONAU_BlindedDonationUnitSignature 
signatures[num_blinded_sig],
@@ -527,9 +527,9 @@ struct DONAUDB_Plugin
     * @return transaction status code
     */
   enum GNUNET_DB_QueryStatus
-  (*insert_submitted_receipts)(
+    (*insert_submitted_receipts)(
     void *cls,
-    const struct DONAU_HashDonorTaxId *h_tax_number,
+    struct DONAU_HashDonorTaxId *h_tax_number,
     size_t num_dr,
     const struct DONAU_DonationReceipt donation_receipts[static num_dr],
     uint64_t donation_year);
@@ -543,7 +543,7 @@ struct DONAUDB_Plugin
   * @return transaction status code
   */
   enum GNUNET_DB_QueryStatus
-  (*lookup_issued_receipts)(
+    (*lookup_issued_receipts)(
     void *cls,
     struct DONAU_DonationReceiptHashP *h_receitps,
     struct DONAUDB_IssuedReceiptsMetaData *meta);
@@ -557,7 +557,7 @@ struct DONAUDB_Plugin
     * @return transaction status code
     */
   enum GNUNET_DB_QueryStatus
-  (*insert_signing_key)(
+    (*insert_signing_key)(
     void *cls,
     const struct DONAU_DonauPublicKeyP *donau_pub,
     struct DONAUDB_SignkeyMetaData *meta);
@@ -571,7 +571,7 @@ struct DONAUDB_Plugin
     * @return transaction status code
     */
   enum GNUNET_DB_QueryStatus
-  (*lookup_signing_key)(
+    (*lookup_signing_key)(
     void *cls,
     const struct DONAU_DonauPublicKeyP *donau_pub,
     struct DONAUDB_SignkeyMetaData *meta);
@@ -585,7 +585,7 @@ struct DONAUDB_Plugin
     * @return database transaction status
     */
   enum GNUNET_DB_QueryStatus
-  (*iterate_active_signing_keys)(
+    (*iterate_active_signing_keys)(
     void *cls,
     DONAUDB_IterateActiveSigningKeysCallback cb,
     void *cb_cls);

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]