|
|
@ -174,7 +174,7 @@ BOOST_AUTO_TEST_CASE(multisig_Solver1)
|
|
|
|
// one key that would satisfy an (a|b) or 2-of-3 keys needed
|
|
|
|
// one key that would satisfy an (a|b) or 2-of-3 keys needed
|
|
|
|
// to spend an escrow transaction.
|
|
|
|
// to spend an escrow transaction.
|
|
|
|
//
|
|
|
|
//
|
|
|
|
CBasicKeyStore keystore, emptykeystore;
|
|
|
|
CBasicKeyStore keystore, emptykeystore, partialkeystore;
|
|
|
|
CKey key[3];
|
|
|
|
CKey key[3];
|
|
|
|
CBitcoinAddress keyaddr[3];
|
|
|
|
CBitcoinAddress keyaddr[3];
|
|
|
|
for (int i = 0; i < 3; i++)
|
|
|
|
for (int i = 0; i < 3; i++)
|
|
|
@ -183,6 +183,7 @@ BOOST_AUTO_TEST_CASE(multisig_Solver1)
|
|
|
|
keystore.AddKey(key[i]);
|
|
|
|
keystore.AddKey(key[i]);
|
|
|
|
keyaddr[i].SetPubKey(key[i].GetPubKey());
|
|
|
|
keyaddr[i].SetPubKey(key[i].GetPubKey());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
partialkeystore.AddKey(key[0]);
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
{
|
|
|
|
vector<valtype> solutions;
|
|
|
|
vector<valtype> solutions;
|
|
|
@ -221,6 +222,7 @@ BOOST_AUTO_TEST_CASE(multisig_Solver1)
|
|
|
|
BOOST_CHECK(!ExtractAddress(s, addr));
|
|
|
|
BOOST_CHECK(!ExtractAddress(s, addr));
|
|
|
|
BOOST_CHECK(IsMine(keystore, s));
|
|
|
|
BOOST_CHECK(IsMine(keystore, s));
|
|
|
|
BOOST_CHECK(!IsMine(emptykeystore, s));
|
|
|
|
BOOST_CHECK(!IsMine(emptykeystore, s));
|
|
|
|
|
|
|
|
BOOST_CHECK(!IsMine(partialkeystore, s));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{
|
|
|
|
{
|
|
|
|
vector<valtype> solutions;
|
|
|
|
vector<valtype> solutions;
|
|
|
@ -237,6 +239,7 @@ BOOST_AUTO_TEST_CASE(multisig_Solver1)
|
|
|
|
BOOST_CHECK(nRequired = 1);
|
|
|
|
BOOST_CHECK(nRequired = 1);
|
|
|
|
BOOST_CHECK(IsMine(keystore, s));
|
|
|
|
BOOST_CHECK(IsMine(keystore, s));
|
|
|
|
BOOST_CHECK(!IsMine(emptykeystore, s));
|
|
|
|
BOOST_CHECK(!IsMine(emptykeystore, s));
|
|
|
|
|
|
|
|
BOOST_CHECK(!IsMine(partialkeystore, s));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{
|
|
|
|
{
|
|
|
|
vector<valtype> solutions;
|
|
|
|
vector<valtype> solutions;
|
|
|
|