Skip to content

Commit bc7924d

Browse files
committed
Add unit tests for DIP3 and DIP4
1 parent d653ace commit bc7924d

File tree

6 files changed

+480
-0
lines changed

6 files changed

+480
-0
lines changed

src/Makefile.test.include

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ BITCOIN_TESTS =\
8989
test/crypto_tests.cpp \
9090
test/cuckoocache_tests.cpp \
9191
test/DoS_tests.cpp \
92+
test/evo_deterministicmns_tests.cpp \
93+
test/evo_simplifiedmns_tests.cpp \
9294
test/getarg_tests.cpp \
9395
test/governance_validators_tests.cpp \
9496
test/hash_tests.cpp \

src/evo/simplifiedmns.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,15 @@ void CSimplifiedMNListEntry::ToJson(UniValue& obj) const
4545
obj.push_back(Pair("isValid", isValid));
4646
}
4747

48+
CSimplifiedMNList::CSimplifiedMNList(const std::vector<CSimplifiedMNListEntry>& smlEntries)
49+
{
50+
mnList = smlEntries;
51+
52+
std::sort(mnList.begin(), mnList.end(), [&](const CSimplifiedMNListEntry& a, const CSimplifiedMNListEntry& b) {
53+
return a.proRegTxHash.Compare(b.proRegTxHash) < 0;
54+
});
55+
}
56+
4857
CSimplifiedMNList::CSimplifiedMNList(const CDeterministicMNList& dmnList)
4958
{
5059
mnList.reserve(dmnList.all_count());

src/evo/simplifiedmns.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ class CSimplifiedMNList
5454

5555
public:
5656
CSimplifiedMNList() {}
57+
CSimplifiedMNList(const std::vector<CSimplifiedMNListEntry>& smlEntries);
5758
CSimplifiedMNList(const CDeterministicMNList& dmnList);
5859

5960
uint256 CalcMerkleRoot(bool *pmutated = NULL) const;

0 commit comments

Comments
 (0)