gnunet-svn
[Top][All Lists]
Advanced

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

[taler-exchange] branch master updated: move function to libtalerexchang


From: gnunet
Subject: [taler-exchange] branch master updated: move function to libtalerexchangedb, as planned
Date: Thu, 16 Jan 2020 22:40:15 +0100

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

grothoff pushed a commit to branch master
in repository exchange.

The following commit(s) were added to refs/heads/master by this push:
     new 0305cf5f move function to libtalerexchangedb, as planned
0305cf5f is described below

commit 0305cf5f9eb904e7a3ab3e8d39f4974a92a9a0b3
Author: Christian Grothoff <address@hidden>
AuthorDate: Thu Jan 16 22:40:12 2020 +0100

    move function to libtalerexchangedb, as planned
---
 src/auditor/taler-auditor.c                      |   2 +-
 src/auditor/taler-wire-auditor.c                 |   2 +-
 src/bank-lib/fakebank.c                          |   1 +
 src/exchange-tools/taler-exchange-dbinit.c       |   2 +-
 src/exchange/taler-exchange-aggregator.c         |   2 +-
 src/exchange/taler-exchange-httpd_db.c           | 119 -----
 src/exchange/taler-exchange-httpd_db.h           |  18 -
 src/exchange/taler-exchange-httpd_deposit.c      |   6 +-
 src/exchange/taler-exchange-httpd_payback.c      |   6 +-
 src/exchange/taler-exchange-httpd_refresh_melt.c |   6 +-
 src/exchangedb/Makefile.am                       |   3 +-
 src/exchangedb/exchangedb_fees.c                 |   2 +-
 src/exchangedb/exchangedb_transactions.c         | 142 ++++++
 src/include/taler_exchangedb_lib.h               |  97 +----
 src/include/taler_exchangedb_plugin.h            |  77 +++-
 src/include/taler_testing_lib.h                  |  16 +-
 src/lib/test_taler_exchange_aggregator.c         | 530 ++++++++++++-----------
 src/lib/testing_api_cmd_insert_deposit.c         |  23 +-
 18 files changed, 546 insertions(+), 508 deletions(-)

diff --git a/src/auditor/taler-auditor.c b/src/auditor/taler-auditor.c
index afce190e..42724efb 100644
--- a/src/auditor/taler-auditor.c
+++ b/src/auditor/taler-auditor.c
@@ -39,7 +39,7 @@
 #include "platform.h"
 #include <gnunet/gnunet_util_lib.h>
 #include "taler_auditordb_plugin.h"
-#include "taler_exchangedb_plugin.h"
+#include "taler_exchangedb_lib.h"
 #include "taler_json_lib.h"
 #include "taler_bank_service.h"
 #include "taler_signatures.h"
diff --git a/src/auditor/taler-wire-auditor.c b/src/auditor/taler-wire-auditor.c
index ffbbfd71..d8da36d0 100644
--- a/src/auditor/taler-wire-auditor.c
+++ b/src/auditor/taler-wire-auditor.c
@@ -29,7 +29,7 @@
 #include <gnunet/gnunet_util_lib.h>
 #include <gnunet/gnunet_curl_lib.h>
 #include "taler_auditordb_plugin.h"
-#include "taler_exchangedb_plugin.h"
+#include "taler_exchangedb_lib.h"
 #include "taler_json_lib.h"
 #include "taler_bank_service.h"
 #include "taler_signatures.h"
diff --git a/src/bank-lib/fakebank.c b/src/bank-lib/fakebank.c
index 8dc268bb..15b21ba3 100644
--- a/src/bank-lib/fakebank.c
+++ b/src/bank-lib/fakebank.c
@@ -1293,6 +1293,7 @@ schedule_httpd (struct TALER_FAKEBANK_Handle *h)
                                    h);
 }
 
+
 #else
 /**
  * Schedule MHD.  This function should be called initially when an
diff --git a/src/exchange-tools/taler-exchange-dbinit.c 
b/src/exchange-tools/taler-exchange-dbinit.c
index e9a1e334..50c8c483 100644
--- a/src/exchange-tools/taler-exchange-dbinit.c
+++ b/src/exchange-tools/taler-exchange-dbinit.c
@@ -20,7 +20,7 @@
  */
 #include "platform.h"
 #include <gnunet/gnunet_util_lib.h>
-#include "taler_exchangedb_plugin.h"
+#include "taler_exchangedb_lib.h"
 
 
 /**
diff --git a/src/exchange/taler-exchange-aggregator.c 
b/src/exchange/taler-exchange-aggregator.c
index 37ac5336..264cbf62 100644
--- a/src/exchange/taler-exchange-aggregator.c
+++ b/src/exchange/taler-exchange-aggregator.c
@@ -1835,7 +1835,7 @@ run_transfers (void *cls)
   if (GNUNET_OK !=
       db_plugin->start (db_plugin->cls,
                         session,
-                       "aggregator run transfer"))
+                        "aggregator run transfer"))
   {
     GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                 "Failed to start database transaction!\n");
diff --git a/src/exchange/taler-exchange-httpd_db.c 
b/src/exchange/taler-exchange-httpd_db.c
index be7a0300..bc6f1ca6 100644
--- a/src/exchange/taler-exchange-httpd_db.c
+++ b/src/exchange/taler-exchange-httpd_db.c
@@ -165,123 +165,4 @@ TEH_DB_run_transaction (struct MHD_Connection *connection,
 }
 
 
-/**
- * Calculate the total value of all transactions performed.
- * Stores @a off plus the cost of all transactions in @a tl
- * in @a ret.
- *
- * @param tl transaction list to process
- * @param off offset to use as the starting value
- * @param[out] ret where the resulting total is to be stored
- * @return #GNUNET_OK on success, #GNUNET_SYSERR on errors
- */
-// FIXME: maybe move to another module, i.e. exchangedb???
-int
-TEH_DB_calculate_transaction_list_totals (struct
-                                          TALER_EXCHANGEDB_TransactionList *tl,
-                                          const struct TALER_Amount *off,
-                                          struct TALER_Amount *ret)
-{
-  struct TALER_Amount spent = *off;
-  struct TALER_Amount refunded;
-
-  GNUNET_assert (GNUNET_OK ==
-                 TALER_amount_get_zero (spent.currency,
-                                        &refunded));
-  for (struct TALER_EXCHANGEDB_TransactionList *pos = tl; NULL != pos; pos =
-         pos->next)
-  {
-    switch (pos->type)
-    {
-    case TALER_EXCHANGEDB_TT_DEPOSIT:
-      /* spent += pos->amount_with_fee */
-      if (GNUNET_OK !=
-          TALER_amount_add (&spent,
-                            &spent,
-                            &pos->details.deposit->amount_with_fee))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    case TALER_EXCHANGEDB_TT_REFRESH_MELT:
-      /* spent += pos->amount_with_fee */
-      if (GNUNET_OK !=
-          TALER_amount_add (&spent,
-                            &spent,
-                            &pos->details.melt->session.amount_with_fee))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    case TALER_EXCHANGEDB_TT_REFUND:
-      /* refunded += pos->refund_amount - pos->refund_fee */
-      if (GNUNET_OK !=
-          TALER_amount_add (&refunded,
-                            &refunded,
-                            &pos->details.refund->refund_amount))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      if (GNUNET_OK !=
-          TALER_amount_subtract (&refunded,
-                                 &refunded,
-                                 &pos->details.refund->refund_fee))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    case TALER_EXCHANGEDB_TT_OLD_COIN_PAYBACK:
-      /* refunded += pos->value */
-      if (GNUNET_OK !=
-          TALER_amount_add (&refunded,
-                            &refunded,
-                            &pos->details.old_coin_payback->value))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    case TALER_EXCHANGEDB_TT_PAYBACK:
-      /* spent += pos->value */
-      if (GNUNET_OK !=
-          TALER_amount_add (&spent,
-                            &spent,
-                            &pos->details.payback->value))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    case TALER_EXCHANGEDB_TT_PAYBACK_REFRESH:
-      /* spent += pos->value */
-      if (GNUNET_OK !=
-          TALER_amount_add (&spent,
-                            &spent,
-                            &pos->details.payback_refresh->value))
-      {
-        GNUNET_break (0);
-        return GNUNET_SYSERR;
-      }
-      break;
-    }
-  }
-  /* spent = spent - refunded */
-  if (GNUNET_SYSERR ==
-      TALER_amount_subtract (&spent,
-                             &spent,
-                             &refunded))
-  {
-    GNUNET_break (0);
-    return GNUNET_SYSERR;
-  }
-
-  *ret = spent;
-  return GNUNET_OK;
-}
-
-
 /* end of taler-exchange-httpd_db.c */
diff --git a/src/exchange/taler-exchange-httpd_db.h 
b/src/exchange/taler-exchange-httpd_db.h
index c63b3668..e6d38d7f 100644
--- a/src/exchange/taler-exchange-httpd_db.h
+++ b/src/exchange/taler-exchange-httpd_db.h
@@ -107,23 +107,5 @@ TEH_DB_run_transaction (struct MHD_Connection *connection,
                         void *cb_cls);
 
 
-/**
- * Calculate the total value of all transactions performed.
- * Stores @a off plus the cost of all transactions in @a tl
- * in @a ret.
- *
- * @param tl transaction list to process
- * @param off offset to use as the starting value
- * @param[out] ret where the resulting total is to be stored
- * @return #GNUNET_OK on success, #GNUNET_SYSERR on errors
- */
-// FIXME: maybe move to another module, i.e. exchangedb???
-int
-TEH_DB_calculate_transaction_list_totals (struct
-                                          TALER_EXCHANGEDB_TransactionList *tl,
-                                          const struct TALER_Amount *off,
-                                          struct TALER_Amount *ret);
-
-
 #endif
 /* TALER_EXCHANGE_HTTPD_DB_H */
diff --git a/src/exchange/taler-exchange-httpd_deposit.c 
b/src/exchange/taler-exchange-httpd_deposit.c
index 48504778..11f579ab 100644
--- a/src/exchange/taler-exchange-httpd_deposit.c
+++ b/src/exchange/taler-exchange-httpd_deposit.c
@@ -193,9 +193,9 @@ deposit_transaction (void *cls,
   if (0 > qs)
     return qs;
   if (GNUNET_OK !=
-      TEH_DB_calculate_transaction_list_totals (tl,
-                                                &spent,
-                                                &spent))
+      TALER_EXCHANGEDB_calculate_transaction_list_totals (tl,
+                                                          &spent,
+                                                          &spent))
   {
     TEH_plugin->free_coin_transaction_list (TEH_plugin->cls,
                                             tl);
diff --git a/src/exchange/taler-exchange-httpd_payback.c 
b/src/exchange/taler-exchange-httpd_payback.c
index b7fe593d..a05045b2 100644
--- a/src/exchange/taler-exchange-httpd_payback.c
+++ b/src/exchange/taler-exchange-httpd_payback.c
@@ -312,9 +312,9 @@ payback_transaction (void *cls,
                  TALER_amount_get_zero (pc->value.currency,
                                         &spent));
   if (GNUNET_OK !=
-      TEH_DB_calculate_transaction_list_totals (tl,
-                                                &spent,
-                                                &spent))
+      TALER_EXCHANGEDB_calculate_transaction_list_totals (tl,
+                                                          &spent,
+                                                          &spent))
   {
     GNUNET_break (0);
     TEH_plugin->free_coin_transaction_list (TEH_plugin->cls,
diff --git a/src/exchange/taler-exchange-httpd_refresh_melt.c 
b/src/exchange/taler-exchange-httpd_refresh_melt.c
index 8fbb5851..4f429012 100644
--- a/src/exchange/taler-exchange-httpd_refresh_melt.c
+++ b/src/exchange/taler-exchange-httpd_refresh_melt.c
@@ -225,9 +225,9 @@ refresh_check_melt (struct MHD_Connection *connection,
     }
   }
   if (GNUNET_OK !=
-      TEH_DB_calculate_transaction_list_totals (tl,
-                                                &spent,
-                                                &spent))
+      TALER_EXCHANGEDB_calculate_transaction_list_totals (tl,
+                                                          &spent,
+                                                          &spent))
   {
     GNUNET_break (0);
     TEH_plugin->free_coin_transaction_list (TEH_plugin->cls,
diff --git a/src/exchangedb/Makefile.am b/src/exchangedb/Makefile.am
index 1a866584..c0d6bc66 100644
--- a/src/exchangedb/Makefile.am
+++ b/src/exchangedb/Makefile.am
@@ -46,8 +46,9 @@ libtalerexchangedb_la_SOURCES = \
   exchangedb_auditorkeys.c \
   exchangedb_denomkeys.c \
   exchangedb_fees.c \
+  exchangedb_plugin.c \
   exchangedb_signkeys.c \
-  exchangedb_plugin.c
+  exchangedb_transactions.c
 
 libtalerexchangedb_la_LIBADD = \
   $(top_builddir)/src/util/libtalerutil.la \
diff --git a/src/exchangedb/exchangedb_fees.c b/src/exchangedb/exchangedb_fees.c
index 386c5de9..c025604f 100644
--- a/src/exchangedb/exchangedb_fees.c
+++ b/src/exchangedb/exchangedb_fees.c
@@ -1,6 +1,6 @@
 /*
   This file is part of TALER
-  Copyright (C) 2017 GNUnet e.V.
+  Copyright (C) 2017 Taler Systems SA
 
   TALER is free software; you can redistribute it and/or modify it under the
   terms of the GNU General Public License as published by the Free Software
diff --git a/src/exchangedb/exchangedb_transactions.c 
b/src/exchangedb/exchangedb_transactions.c
new file mode 100644
index 00000000..2891f0ad
--- /dev/null
+++ b/src/exchangedb/exchangedb_transactions.c
@@ -0,0 +1,142 @@
+/*
+  This file is part of TALER
+  Copyright (C) 2017-2020 Taler Systems SA
+
+  TALER is free software; you can redistribute it and/or modify it under the
+  terms of the GNU General Public License as published by the Free Software
+  Foundation; either version 3, or (at your option) any later version.
+
+  TALER is distributed in the hope that it will be useful, but WITHOUT ANY
+  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+  A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License along with
+  TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+*/
+/**
+ * @file exchangedb/exchangedb_transactions.c
+ * @brief Logic to compute transaction totals of a transaction list for a coin
+ * @author Christian Grothoff
+ */
+#include "platform.h"
+#include "taler_exchangedb_lib.h"
+
+
+/**
+ * Calculate the total value of all transactions performed.
+ * Stores @a off plus the cost of all transactions in @a tl
+ * in @a ret.
+ *
+ * @param tl transaction list to process
+ * @param off offset to use as the starting value
+ * @param[out] ret where the resulting total is to be stored
+ * @return #GNUNET_OK on success, #GNUNET_SYSERR on errors
+ */
+int
+TALER_EXCHANGEDB_calculate_transaction_list_totals (struct
+                                                    
TALER_EXCHANGEDB_TransactionList
+                                                    *tl,
+                                                    const struct
+                                                    TALER_Amount *off,
+                                                    struct TALER_Amount *ret)
+{
+  struct TALER_Amount spent = *off;
+  struct TALER_Amount refunded;
+
+  GNUNET_assert (GNUNET_OK ==
+                 TALER_amount_get_zero (spent.currency,
+                                        &refunded));
+  for (struct TALER_EXCHANGEDB_TransactionList *pos = tl; NULL != pos; pos =
+         pos->next)
+  {
+    switch (pos->type)
+    {
+    case TALER_EXCHANGEDB_TT_DEPOSIT:
+      /* spent += pos->amount_with_fee */
+      if (GNUNET_OK !=
+          TALER_amount_add (&spent,
+                            &spent,
+                            &pos->details.deposit->amount_with_fee))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    case TALER_EXCHANGEDB_TT_REFRESH_MELT:
+      /* spent += pos->amount_with_fee */
+      if (GNUNET_OK !=
+          TALER_amount_add (&spent,
+                            &spent,
+                            &pos->details.melt->session.amount_with_fee))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    case TALER_EXCHANGEDB_TT_REFUND:
+      /* refunded += pos->refund_amount - pos->refund_fee */
+      if (GNUNET_OK !=
+          TALER_amount_add (&refunded,
+                            &refunded,
+                            &pos->details.refund->refund_amount))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      if (GNUNET_OK !=
+          TALER_amount_subtract (&refunded,
+                                 &refunded,
+                                 &pos->details.refund->refund_fee))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    case TALER_EXCHANGEDB_TT_OLD_COIN_PAYBACK:
+      /* refunded += pos->value */
+      if (GNUNET_OK !=
+          TALER_amount_add (&refunded,
+                            &refunded,
+                            &pos->details.old_coin_payback->value))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    case TALER_EXCHANGEDB_TT_PAYBACK:
+      /* spent += pos->value */
+      if (GNUNET_OK !=
+          TALER_amount_add (&spent,
+                            &spent,
+                            &pos->details.payback->value))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    case TALER_EXCHANGEDB_TT_PAYBACK_REFRESH:
+      /* spent += pos->value */
+      if (GNUNET_OK !=
+          TALER_amount_add (&spent,
+                            &spent,
+                            &pos->details.payback_refresh->value))
+      {
+        GNUNET_break (0);
+        return GNUNET_SYSERR;
+      }
+      break;
+    }
+  }
+  /* spent = spent - refunded */
+  if (GNUNET_SYSERR ==
+      TALER_amount_subtract (&spent,
+                             &spent,
+                             &refunded))
+  {
+    GNUNET_break (0);
+    return GNUNET_SYSERR;
+  }
+
+  *ret = spent;
+  return GNUNET_OK;
+}
diff --git a/src/include/taler_exchangedb_lib.h 
b/src/include/taler_exchangedb_lib.h
index 1681c45a..f820d1a2 100644
--- a/src/include/taler_exchangedb_lib.h
+++ b/src/include/taler_exchangedb_lib.h
@@ -23,9 +23,8 @@
 #ifndef TALER_EXCHANGEDB_LIB_H
 #define TALER_EXCHANGEDB_LIB_H
 
-
 #include "taler_signatures.h"
-
+#include "taler_exchangedb_plugin.h"
 
 /**
  * Subdirectroy under the exchange's base directory which contains
@@ -40,81 +39,6 @@
 #define TALER_EXCHANGEDB_DIR_DENOMINATION_KEYS "denomkeys"
 
 
-GNUNET_NETWORK_STRUCT_BEGIN
-
-/**
- * @brief On disk format used for a exchange signing key.  Signing keys are 
used
- * by the exchange to affirm its messages, but not to create coins.
- * Includes the private key followed by the public information about
- * the signing key.
- */
-struct TALER_EXCHANGEDB_PrivateSigningKeyInformationP
-{
-  /**
-   * Private key part of the exchange's signing key.
-   */
-  struct TALER_ExchangePrivateKeyP signkey_priv;
-
-  /**
-   * Signature over @e issue
-   */
-  struct TALER_MasterSignatureP master_sig;
-
-  /**
-   * Public information about a exchange signing key.
-   */
-  struct TALER_ExchangeSigningKeyValidityPS issue;
-
-};
-
-
-/**
- * Information about a denomination key.
- */
-struct TALER_EXCHANGEDB_DenominationKeyInformationP
-{
-
-  /**
-   * Signature over this struct to affirm the validity of the key.
-   */
-  struct TALER_MasterSignatureP signature;
-
-  /**
-   * Signed properties of the denomination key.
-   */
-  struct TALER_DenominationKeyValidityPS properties;
-};
-
-
-GNUNET_NETWORK_STRUCT_END
-
-
-/**
- * @brief All information about a denomination key (which is used to
- * sign coins into existence).
- */
-struct TALER_EXCHANGEDB_DenominationKeyIssueInformation
-{
-  /**
-   * The private key of the denomination.  Will be NULL if the private
-   * key is not available (this is the case after the key has expired
-   * for signing coins, but is still valid for depositing coins).
-   */
-  struct TALER_DenominationPrivateKey denom_priv;
-
-  /**
-   * Decoded denomination public key (the hash of it is in
-   * @e issue, but we sometimes need the full public key as well).
-   */
-  struct TALER_DenominationPublicKey denom_pub;
-
-  /**
-   * Signed public information about a denomination key.
-   */
-  struct TALER_EXCHANGEDB_DenominationKeyInformationP issue;
-};
-
-
 /**
  * @brief Iterator over signing keys.
  *
@@ -525,4 +449,23 @@ TALER_EXCHANGEDB_find_accounts (const struct 
GNUNET_CONFIGURATION_Handle *cfg,
                                 void *cb_cls);
 
 
+/**
+ * Calculate the total value of all transactions performed.
+ * Stores @a off plus the cost of all transactions in @a tl
+ * in @a ret.
+ *
+ * @param tl transaction list to process
+ * @param off offset to use as the starting value
+ * @param[out] ret where the resulting total is to be stored
+ * @return #GNUNET_OK on success, #GNUNET_SYSERR on errors
+ */
+int
+TALER_EXCHANGEDB_calculate_transaction_list_totals (struct
+                                                    
TALER_EXCHANGEDB_TransactionList
+                                                    *tl,
+                                                    const struct
+                                                    TALER_Amount *off,
+                                                    struct TALER_Amount *ret);
+
+
 #endif
diff --git a/src/include/taler_exchangedb_plugin.h 
b/src/include/taler_exchangedb_plugin.h
index 06be27e0..cb5d6cc6 100644
--- a/src/include/taler_exchangedb_plugin.h
+++ b/src/include/taler_exchangedb_plugin.h
@@ -24,7 +24,82 @@
 #include <jansson.h>
 #include <gnunet/gnunet_util_lib.h>
 #include <gnunet/gnunet_db_lib.h>
-#include "taler_exchangedb_lib.h"
+#include "taler_signatures.h"
+
+
+GNUNET_NETWORK_STRUCT_BEGIN
+
+/**
+ * @brief On disk format used for a exchange signing key.  Signing keys are 
used
+ * by the exchange to affirm its messages, but not to create coins.
+ * Includes the private key followed by the public information about
+ * the signing key.
+ */
+struct TALER_EXCHANGEDB_PrivateSigningKeyInformationP
+{
+  /**
+   * Private key part of the exchange's signing key.
+   */
+  struct TALER_ExchangePrivateKeyP signkey_priv;
+
+  /**
+   * Signature over @e issue
+   */
+  struct TALER_MasterSignatureP master_sig;
+
+  /**
+   * Public information about a exchange signing key.
+   */
+  struct TALER_ExchangeSigningKeyValidityPS issue;
+
+};
+
+
+/**
+ * Information about a denomination key.
+ */
+struct TALER_EXCHANGEDB_DenominationKeyInformationP
+{
+
+  /**
+   * Signature over this struct to affirm the validity of the key.
+   */
+  struct TALER_MasterSignatureP signature;
+
+  /**
+   * Signed properties of the denomination key.
+   */
+  struct TALER_DenominationKeyValidityPS properties;
+};
+
+
+GNUNET_NETWORK_STRUCT_END
+
+
+/**
+ * @brief All information about a denomination key (which is used to
+ * sign coins into existence).
+ */
+struct TALER_EXCHANGEDB_DenominationKeyIssueInformation
+{
+  /**
+   * The private key of the denomination.  Will be NULL if the private
+   * key is not available (this is the case after the key has expired
+   * for signing coins, but is still valid for depositing coins).
+   */
+  struct TALER_DenominationPrivateKey denom_priv;
+
+  /**
+   * Decoded denomination public key (the hash of it is in
+   * @e issue, but we sometimes need the full public key as well).
+   */
+  struct TALER_DenominationPublicKey denom_pub;
+
+  /**
+   * Signed public information about a denomination key.
+   */
+  struct TALER_EXCHANGEDB_DenominationKeyInformationP issue;
+};
 
 
 /**
diff --git a/src/include/taler_testing_lib.h b/src/include/taler_testing_lib.h
index 9b0ca422..783aa596 100644
--- a/src/include/taler_testing_lib.h
+++ b/src/include/taler_testing_lib.h
@@ -104,7 +104,7 @@ struct TALER_TESTING_DatabaseConnection
    * Database plugin.
    */
   struct TALER_EXCHANGEDB_Plugin *plugin;
-  
+
   /**
    * Session with the database.
    */
@@ -1679,6 +1679,7 @@ TALER_TESTING_cmd_serialize_keys (const char *label);
 struct TALER_TESTING_Command
 TALER_TESTING_cmd_connect_with_state (const char *label,
                                       const char *state_reference);
+
 /**
  * Make the "insert-deposit" CMD.
  *
@@ -1694,12 +1695,13 @@ TALER_TESTING_cmd_connect_with_state (const char *label,
  */
 struct TALER_TESTING_Command
 TALER_TESTING_cmd_insert_deposit (const char *label,
-                                 const struct TALER_TESTING_DatabaseConnection 
*dbc,
-                                 const char *merchant_name,
-                                 const char *merchant_account,
-                                 struct GNUNET_TIME_Relative wire_deadline,
-                                 const char *amount_with_fee,
-                                 const char *deposit_fee);
+                                  const struct
+                                  TALER_TESTING_DatabaseConnection *dbc,
+                                  const char *merchant_name,
+                                  const char *merchant_account,
+                                  struct GNUNET_TIME_Relative wire_deadline,
+                                  const char *amount_with_fee,
+                                  const char *deposit_fee);
 
 /* *** Generic trait logic for implementing traits ********* */
 
diff --git a/src/lib/test_taler_exchange_aggregator.c 
b/src/lib/test_taler_exchange_aggregator.c
index 6f97a71d..e9f96a6d 100644
--- a/src/lib/test_taler_exchange_aggregator.c
+++ b/src/lib/test_taler_exchange_aggregator.c
@@ -63,7 +63,7 @@ static char *config_filename;
  */
 static int
 prepare_database (void *cls,
-                 const struct GNUNET_CONFIGURATION_Handle *cfg)
+                  const struct GNUNET_CONFIGURATION_Handle *cfg)
 {
 
   // connect to the database.
@@ -103,424 +103,436 @@ run (void *cls,
 
     // check no aggregation happens on a empty database
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-on-empty-db",
-                                      config_filename),
+                                       config_filename),
     TALER_TESTING_cmd_check_bank_empty ("expect-empty-transactions-on-start"),
 
     // check aggregation happens on the simplest case:
     // one deposit into the database.
     TALER_TESTING_cmd_insert_deposit ("do-deposit-1",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-on-deposit-1",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-1",
-                                          ec.exchange_url,
-                                          "EUR:0.89",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.89",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
     TALER_TESTING_cmd_check_bank_empty ("expect-empty-transactions-after-1"),
 
     // check aggregation accumulates well.
     TALER_TESTING_cmd_insert_deposit ("do-deposit-2a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-2b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-2",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-2",
-                                          ec.exchange_url,
-                                          "EUR:1.79",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:1.79",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
     TALER_TESTING_cmd_check_bank_empty ("expect-empty-transactions-after-2"),
-    
+
     // check that different merchants stem different aggregations.
-    
+
     TALER_TESTING_cmd_insert_deposit ("do-deposit-3a",
-                                     &dbc,
-                                     "bob",
-                                     "4",
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      "4",
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-3b",
-                                     &dbc,
-                                     "bob",
-                                     "5",
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      "5",
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-3c",
-                                     &dbc,
-                                     "alice",
-                                     "4",
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:1",
-                                     "EUR:0.1"),
-    
+                                      &dbc,
+                                      "alice",
+                                      "4",
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:1",
+                                      "EUR:0.1"),
+
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-3",
-                                      config_filename),
+                                       config_filename),
 
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-3a",
-                                          ec.exchange_url,
-                                          "EUR:0.89",
-                                          bc.exchange_payto,
-                                          TALER_payto_xtalerbank_make 
(bc.bank_url, "4")),
+                                           ec.exchange_url,
+                                           "EUR:0.89",
+                                           bc.exchange_payto,
+                                           TALER_payto_xtalerbank_make (
+                                             bc.bank_url, "4")),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-3b",
-                                          ec.exchange_url,
-                                          "EUR:0.89",
-                                          bc.exchange_payto,
-                                          TALER_payto_xtalerbank_make 
(bc.bank_url, "4")),
+                                           ec.exchange_url,
+                                           "EUR:0.89",
+                                           bc.exchange_payto,
+                                           TALER_payto_xtalerbank_make (
+                                             bc.bank_url, "4")),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-3c",
-                                          ec.exchange_url,
-                                          "EUR:0.89",
-                                          bc.exchange_payto,
-                                          TALER_payto_xtalerbank_make 
(bc.bank_url, "5")),
+                                           ec.exchange_url,
+                                           "EUR:0.89",
+                                           bc.exchange_payto,
+                                           TALER_payto_xtalerbank_make (
+                                             bc.bank_url, "5")),
     TALER_TESTING_cmd_check_bank_empty ("expect-empty-transactions-after-3"),
 
     // checking that aggregator waits for the deadline.
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-4a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.2",
-                                     "EUR:0.1"),
+                                      "EUR:0.2",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-4b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.2",
-                                     "EUR:0.1"),
+                                      "EUR:0.2",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-4-early",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-4-fast"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-4-fast"),
 
     TALER_TESTING_cmd_sleep ("wait (5s)", 5),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-4-delayed",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-4",
-                                          ec.exchange_url,
-                                          "EUR:0.19",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.19",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
     // test picking all deposits at earliest deadline
     TALER_TESTING_cmd_insert_deposit ("do-deposit-5a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        10),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        10),
 
-                                     "EUR:0.2",
-                                     "EUR:0.1"),
+                                      "EUR:0.2",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-5b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.2",
-                                     "EUR:0.1"),
+                                      "EUR:0.2",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-5-early",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-5-early"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-5-early"),
 
     TALER_TESTING_cmd_sleep ("wait (5s)", 5),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-5-delayed",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-5",
-                                          ec.exchange_url,
-                                          "EUR:0.19",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.19",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
     // Test NEVER running 'tiny' unless they make up minimum unit
     TALER_TESTING_cmd_insert_deposit ("do-deposit-6a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.102",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.102",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-6a-tiny",
-                                      config_filename),
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-6a-tiny"),
+                                       config_filename),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-6a-tiny"),
     TALER_TESTING_cmd_insert_deposit ("do-deposit-6b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.102",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.102",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-6c",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.102",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.102",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-6c-tiny",
-                                      config_filename),
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-6c-tiny"),
+                                       config_filename),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-6c-tiny"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-6d",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.102",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.102",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-6d-tiny",
-                                      config_filename),
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-6d-tiny"),
+                                       config_filename),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-6d-tiny"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-6e",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.112",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.112",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-6e",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-6",
-                                          ec.exchange_url,
-                                          "EUR:0.01",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.01",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
 
     // Test profiteering if wire deadline is short
-    
+
     TALER_TESTING_cmd_insert_deposit ("do-deposit-7a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.109",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.109",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-7a-tiny",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-7a-tiny"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-7a-tiny"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-7b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.119",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.119",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-7-profit",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-7",
-                                          ec.exchange_url,
-                                          "EUR:0.01",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.01",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
     // Now check profit was actually taken
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-7c",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.122",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.122",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-7-loss",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-7",
-                                          ec.exchange_url,
-                                          "EUR:0.01",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.01",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
     // Test that aggregation would happen fully if wire deadline is long
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-8a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.109",
-                                     "EUR:0.1"),
+                                      "EUR:0.109",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-8a-tiny",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-8a-tiny"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-8a-tiny"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-8b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.109",
-                                     "EUR:0.1"),
+                                      "EUR:0.109",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-8b-tiny",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-8b-tiny"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-8b-tiny"),
 
 
     // now trigger aggregate with large transaction and short deadline
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-8c",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.122",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.122",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-8",
-                                      config_filename),
+                                       config_filename),
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-8",
-                                          ec.exchange_url,
-                                          "EUR:0.03",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
+                                           ec.exchange_url,
+                                           "EUR:0.03",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
 
 
     // Test aggregation with fees and rounding profits.
-    
+
     TALER_TESTING_cmd_insert_deposit ("do-deposit-9a",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.104",
-                                     "EUR:0.1"),
+                                      "EUR:0.104",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-9a-tiny",
-                                      config_filename),
+                                       config_filename),
 
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-9a-tiny"),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-9a-tiny"),
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-9b",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
 
-                                     GNUNET_TIME_relative_multiply
-                                       (GNUNET_TIME_UNIT_SECONDS,
-                                        5),
+                                      GNUNET_TIME_relative_multiply
+                                        (GNUNET_TIME_UNIT_SECONDS,
+                                        5),
 
-                                     "EUR:0.105",
-                                     "EUR:0.1"),
+                                      "EUR:0.105",
+                                      "EUR:0.1"),
 
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-9b-tiny",
-                                      config_filename),
-    TALER_TESTING_cmd_check_bank_empty 
("expect-empty-transactions-after-9b-tiny"),
-
-
+                                       config_filename),
+    TALER_TESTING_cmd_check_bank_empty (
+      "expect-empty-transactions-after-9b-tiny"),
 
 
     // now trigger aggregate with large transaction and short deadline
 
     TALER_TESTING_cmd_insert_deposit ("do-deposit-9c",
-                                     &dbc,
-                                     "bob",
-                                     USER42_ACCOUNT,
-                                     GNUNET_TIME_UNIT_ZERO,
-                                     "EUR:0.112",
-                                     "EUR:0.1"),
+                                      &dbc,
+                                      "bob",
+                                      USER42_ACCOUNT,
+                                      GNUNET_TIME_UNIT_ZERO,
+                                      "EUR:0.112",
+                                      "EUR:0.1"),
 
     TALER_TESTING_cmd_exec_aggregator ("run-aggregator-deposit-9",
-                                      config_filename),
+                                       config_filename),
 
     // 0.009 + 0.009 + 0.022 - 0.001 - 0.002 - 0.008 = 0.029 => 0.02
 
     TALER_TESTING_cmd_check_bank_transfer ("expect-deposit-9",
-                                          ec.exchange_url,
-                                          "EUR:0.01",
-                                          bc.exchange_payto,
-                                          bc.user42_payto),
-    TALER_TESTING_cmd_end () 
+                                           ec.exchange_url,
+                                           "EUR:0.01",
+                                           bc.exchange_payto,
+                                           bc.user42_payto),
+    TALER_TESTING_cmd_end ()
   };
-  
+
   TALER_TESTING_run_with_fakebank (is,
-                                  all,
-                                  bc.bank_url);
+                                   all,
+                                   bc.bank_url);
 }
 
+
 int
 main (int argc,
       char *const argv[])
@@ -552,22 +564,22 @@ main (int argc,
   TALER_TESTING_cleanup_files (config_filename);
 
   if (GNUNET_OK != TALER_TESTING_prepare_exchange (config_filename,
-                                                  &ec))
+                                                   &ec))
   {
     TALER_LOG_WARNING ("Could not prepare the exchange.\n");
     return 77;
   }
 
   if (GNUNET_OK != TALER_TESTING_prepare_fakebank (config_filename,
-                                                  "account-1",
-                                                  &bc))
+                                                   "account-1",
+                                                   &bc))
   {
     TALER_LOG_WARNING ("Could not prepare the fakebank\n");
     return 77;
   }
 
   if (GNUNET_OK != GNUNET_CONFIGURATION_parse_and_run (config_filename,
-                                                      &prepare_database,
+                                                       &prepare_database,
                                                        NULL))
   {
     TALER_LOG_WARNING ("Could not prepare database for tests.\n");
@@ -575,10 +587,10 @@ main (int argc,
   }
 
   result = TALER_TESTING_setup (&run,
-                               NULL,
-                               config_filename,
-                               NULL, // no exchange process handle.
-                               GNUNET_NO); // do not try to connect to the 
exchange
+                                NULL,
+                                config_filename,
+                                NULL, // no exchange process handle.
+                                GNUNET_NO); // do not try to connect to the 
exchange
 
   GNUNET_free (config_filename);
   GNUNET_free (testname);
diff --git a/src/lib/testing_api_cmd_insert_deposit.c 
b/src/lib/testing_api_cmd_insert_deposit.c
index a5a285b0..47729a0a 100644
--- a/src/lib/testing_api_cmd_insert_deposit.c
+++ b/src/lib/testing_api_cmd_insert_deposit.c
@@ -98,8 +98,6 @@ fake_issue (struct 
TALER_EXCHANGEDB_DenominationKeyInformationP *issue)
 }
 
 
-
-
 /**
  * Run the command.
  *
@@ -147,7 +145,7 @@ insert_deposit_run (void *cls,
   // prepare and store deposit now.
   memset (&deposit,
           0,
-         sizeof (deposit));
+          sizeof (deposit));
 
   GNUNET_CRYPTO_kdf (&merchant_priv,
                      sizeof (struct TALER_MerchantPrivateKeyP),
@@ -156,7 +154,7 @@ insert_deposit_run (void *cls,
                      ids->merchant_name,
                      strlen (ids->merchant_name),
                      NULL,
-                    0);
+                     0);
   GNUNET_CRYPTO_eddsa_key_get_public (&merchant_priv.eddsa_priv,
                                       &deposit.merchant_pub.eddsa_pub);
   GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK,
@@ -173,7 +171,7 @@ insert_deposit_run (void *cls,
   }
 
   GNUNET_CRYPTO_rsa_public_key_hash (dpk.rsa_public_key,
-                                    &deposit.coin.denom_pub_hash);
+                                     &deposit.coin.denom_pub_hash);
 
   GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK,
                                     &hc);
@@ -244,7 +242,7 @@ insert_deposit_cleanup (void *cls,
                         const struct TALER_TESTING_Command *cmd)
 {
   struct InsertDepositState *ids = cls;
-  
+
   GNUNET_free (ids);
 }
 
@@ -283,12 +281,13 @@ insert_deposit_traits (void *cls,
  */
 struct TALER_TESTING_Command
 TALER_TESTING_cmd_insert_deposit (const char *label,
-                                  const struct 
TALER_TESTING_DatabaseConnection *dbc,
-                                 const char *merchant_name,
-                                 const char *merchant_account,
-                                 struct GNUNET_TIME_Relative wire_deadline,
-                                 const char *amount_with_fee,
-                                 const char *deposit_fee)
+                                  const struct
+                                  TALER_TESTING_DatabaseConnection *dbc,
+                                  const char *merchant_name,
+                                  const char *merchant_account,
+                                  struct GNUNET_TIME_Relative wire_deadline,
+                                  const char *amount_with_fee,
+                                  const char *deposit_fee)
 {
   struct TALER_TESTING_Command cmd;
   struct InsertDepositState *ids;

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

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