Add ZeroTest self-testing routine
authoralex <alex@alex-VirtualBox.(none)>
Sun, 8 Sep 2013 16:45:36 +0000 (20:45 +0400)
committeralex <alex@alex-VirtualBox.(none)>
Sun, 8 Sep 2013 16:45:36 +0000 (20:45 +0400)
Allows user to run basic tests upon initialization. It's available when -zerotest option is used, results are written into debug.log file.

novacoin-qt.pro
src/init.cpp
src/makefile.bsd
src/makefile.linux-mingw
src/makefile.mingw
src/makefile.osx
src/makefile.unix

index 663f808..569ac1c 100644 (file)
@@ -177,6 +177,7 @@ HEADERS += src/qt/bitcoingui.h \
     src/zerocoin/Params.h \
     src/zerocoin/SerialNumberSignatureOfKnowledge.h \
     src/zerocoin/SpendMetaData.h \
+    src/zerocoin/ZeroTest.h \
     src/zerocoin/Zerocoin.h \
     src/serialize.h \
     src/strlcpy.h \
@@ -306,7 +307,8 @@ SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \
     src/zerocoin/ParamGeneration.cpp \
     src/zerocoin/Params.cpp \
     src/zerocoin/SerialNumberSignatureOfKnowledge.cpp \
-    src/zerocoin/SpendMetaData.cpp
+    src/zerocoin/SpendMetaData.cpp \
+    src/zerocoin/ZeroTest.cpp
 
 RESOURCES += \
     src/qt/bitcoin.qrc
index 9dfdc63..0f18b57 100644 (file)
@@ -10,6 +10,7 @@
 #include "util.h"
 #include "ui_interface.h"
 #include "checkpoints.h"
+#include "zerocoin/ZeroTest.h"
 #include <boost/filesystem.hpp>
 #include <boost/filesystem/fstream.hpp>
 #include <boost/filesystem/convenience.hpp>
@@ -21,6 +22,7 @@
 #include <signal.h>
 #endif
 
+
 using namespace std;
 using namespace boost;
 
@@ -359,6 +361,11 @@ bool AppInit2()
     nNodeLifespan = GetArg("-addrlifespan", 7);
     fStakeUsePooledKeys = GetBoolArg("-stakepooledkeys", false);
 
+    if (GetBoolArg("-zerotest", false))
+    {
+        Test_RunAllTests();
+    }
+
     CheckpointsMode = Checkpoints::STRICT;
     std::string strCpMode = GetArg("-cppolicy", "strict");
 
index 8ab520e..c003999 100644 (file)
@@ -144,7 +144,8 @@ OBJS= \
     obj/zerocoin/ParamGeneration.o \
     obj/zerocoin/Params.o \
     obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
-    obj/zerocoin/SpendMetaData.o
+    obj/zerocoin/SpendMetaData.o \
+    obj/zerocoin/ZeroTest.o
 
 
 all: novacoind
index 6ff42d6..5e9f9d0 100644 (file)
@@ -105,7 +105,8 @@ OBJS= \
     obj/zerocoin/ParamGeneration.o \
     obj/zerocoin/Params.o \
     obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
-    obj/zerocoin/SpendMetaData.o
+    obj/zerocoin/SpendMetaData.o \
+    obj/zerocoin/ZeroTest.o
 
 all: novacoind.exe
 
index 80a6801..a9b83a7 100644 (file)
@@ -94,7 +94,8 @@ OBJS= \
     obj/zerocoin/ParamGeneration.o \
     obj/zerocoin/Params.o \
     obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
-    obj/zerocoin/SpendMetaData.o
+    obj/zerocoin/SpendMetaData.o \
+    obj/zerocoin/ZeroTest.o
 
 all: novacoind.exe
 
index a5fb4ac..c3a40b9 100644 (file)
@@ -112,7 +112,8 @@ OBJS= \
     obj/zerocoin/ParamGeneration.o \
     obj/zerocoin/Params.o \
     obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
-    obj/zerocoin/SpendMetaData.o
+    obj/zerocoin/SpendMetaData.o \
+    obj/zerocoin/ZeroTest.o
 
 ifndef USE_UPNP
        override USE_UPNP = -
index 8aca367..8f5e786 100644 (file)
@@ -143,7 +143,8 @@ OBJS= \
     obj/zerocoin/ParamGeneration.o \
     obj/zerocoin/Params.o \
     obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
-    obj/zerocoin/SpendMetaData.o
+    obj/zerocoin/SpendMetaData.o \
+    obj/zerocoin/ZeroTest.o
 
 all: novacoind