aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorstoffu <stoffu@protonmail.ch>2019-09-09 11:44:06 +0900
committerstoffu <stoffu@protonmail.ch>2019-09-09 11:44:06 +0900
commitfdc00d090684bb2696e3fa8ea8600973310dc00e (patch)
tree593beec9e470b6427fbbc519f22fb6c4225cfb98 /tests
parentMerge pull request #5876 (diff)
downloadmonero-fdc00d090684bb2696e3fa8ea8600973310dc00e.tar.xz
unit tests: replace global var with lambda returning static local var
Fixes assertion failure (curstate == 1) in random.c in debug mode
Diffstat (limited to 'tests')
-rw-r--r--tests/unit_tests/multiexp.cpp8
-rw-r--r--tests/unit_tests/ringdb.cpp10
2 files changed, 9 insertions, 9 deletions
diff --git a/tests/unit_tests/multiexp.cpp b/tests/unit_tests/multiexp.cpp
index d8d79a7a2..f12dd6b49 100644
--- a/tests/unit_tests/multiexp.cpp
+++ b/tests/unit_tests/multiexp.cpp
@@ -32,10 +32,10 @@
#include "ringct/rctOps.h"
#include "ringct/multiexp.h"
-static const rct::key TESTSCALAR = rct::skGen();
-static const rct::key TESTPOW2SCALAR = {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-static const rct::key TESTSMALLSCALAR = {{5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
-static const rct::key TESTPOINT = rct::scalarmultBase(rct::skGen());
+#define TESTSCALAR []{ static const rct::key TESTSCALAR = rct::skGen(); return TESTSCALAR; }()
+#define TESTPOW2SCALAR []{ static const rct::key TESTPOW2SCALAR = {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}; return TESTPOW2SCALAR; }()
+#define TESTSMALLSCALAR []{ static const rct::key TESTSMALLSCALAR = {{5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}; return TESTSMALLSCALAR; }()
+#define TESTPOINT []{ static const rct::key TESTPOINT = rct::scalarmultBase(rct::skGen()); return TESTPOINT; }()
static rct::key basic(const std::vector<rct::MultiexpData> &data)
{
diff --git a/tests/unit_tests/ringdb.cpp b/tests/unit_tests/ringdb.cpp
index ab634ea82..626616acc 100644
--- a/tests/unit_tests/ringdb.cpp
+++ b/tests/unit_tests/ringdb.cpp
@@ -65,11 +65,11 @@ static std::pair<uint64_t, uint64_t> generate_output()
}
-static const crypto::chacha_key KEY_1 = generate_chacha_key();
-static const crypto::chacha_key KEY_2 = generate_chacha_key();
-static const crypto::key_image KEY_IMAGE_1 = generate_key_image();
-static const std::pair<uint64_t, uint64_t> OUTPUT_1 = generate_output();
-static const std::pair<uint64_t, uint64_t> OUTPUT_2 = generate_output();
+#define KEY_1 []{ static const crypto::chacha_key KEY_1 = generate_chacha_key(); return KEY_1; }()
+#define KEY_2 []{ static const crypto::chacha_key KEY_2 = generate_chacha_key(); return KEY_2; }()
+#define KEY_IMAGE_1 []{ static const crypto::key_image KEY_IMAGE_1 = generate_key_image(); return KEY_IMAGE_1; }()
+#define OUTPUT_1 []{ static const std::pair<uint64_t, uint64_t> OUTPUT_1 = generate_output(); return OUTPUT_1; }()
+#define OUTPUT_2 []{ static const std::pair<uint64_t, uint64_t> OUTPUT_2 = generate_output(); return OUTPUT_2; }()
class RingDB: public tools::ringdb
{