More rewards tests
This commit is contained in:
@@ -192,6 +192,20 @@ class CryptoConditionsTest (BitcoinTestFramework):
|
|||||||
rpc.generate(1)
|
rpc.generate(1)
|
||||||
result = rpc.rewardsinfo(txid)
|
result = rpc.rewardsinfo(txid)
|
||||||
assert_equal(result['result'], 'success')
|
assert_equal(result['result'], 'success')
|
||||||
|
assert_equal(result['name'], 'STUFF')
|
||||||
|
assert_equal(result['APR'], "5.00000000")
|
||||||
|
assert_equal(result['minseconds'], 86400)
|
||||||
|
assert_equal(result['maxseconds'], 864000)
|
||||||
|
assert_equal(result['funding'], "1000.00000000")
|
||||||
|
assert_equal(result['mindeposit'], "10.00000000")
|
||||||
|
assert_equal(result['fundingtxid'], txid)
|
||||||
|
|
||||||
|
# funding amount must be positive
|
||||||
|
result = rpc.rewardsaddfunding("STUFF", txid, "0")
|
||||||
|
assert_equal(result['result'], 'error')
|
||||||
|
|
||||||
|
result = rpc.rewardsaddfunding("STUFF", txid, "100")
|
||||||
|
assert_equal(result['result'], 'success')
|
||||||
|
|
||||||
def run_test (self):
|
def run_test (self):
|
||||||
print("Mining blocks...")
|
print("Mining blocks...")
|
||||||
|
|||||||
@@ -5024,7 +5024,7 @@ UniValue rewardslock(const UniValue& params, bool fHelp)
|
|||||||
|
|
||||||
UniValue rewardsaddfunding(const UniValue& params, bool fHelp)
|
UniValue rewardsaddfunding(const UniValue& params, bool fHelp)
|
||||||
{
|
{
|
||||||
UniValue result(UniValue::VOBJ); char *name; uint256 fundingtxid; uint64_t amount; std::string hex;
|
UniValue result(UniValue::VOBJ); char *name; uint256 fundingtxid; int64_t amount; std::string hex;
|
||||||
if ( fHelp || params.size() != 3 )
|
if ( fHelp || params.size() != 3 )
|
||||||
throw runtime_error("rewardsaddfunding name fundingtxid amount\n");
|
throw runtime_error("rewardsaddfunding name fundingtxid amount\n");
|
||||||
if ( ensure_CCrequirements() < 0 )
|
if ( ensure_CCrequirements() < 0 )
|
||||||
@@ -5035,11 +5035,19 @@ UniValue rewardsaddfunding(const UniValue& params, bool fHelp)
|
|||||||
fundingtxid = Parseuint256((char *)params[1].get_str().c_str());
|
fundingtxid = Parseuint256((char *)params[1].get_str().c_str());
|
||||||
amount = atof(params[2].get_str().c_str()) * COIN;
|
amount = atof(params[2].get_str().c_str()) * COIN;
|
||||||
hex = RewardsAddfunding(0,name,fundingtxid,amount);
|
hex = RewardsAddfunding(0,name,fundingtxid,amount);
|
||||||
if ( hex.size() > 0 )
|
if (amount > 0) {
|
||||||
{
|
if ( hex.size() > 0 )
|
||||||
result.push_back(Pair("result", "success"));
|
{
|
||||||
result.push_back(Pair("hex", hex));
|
result.push_back(Pair("result", "success"));
|
||||||
} else result.push_back(Pair("error", "couldnt create rewards addfunding transaction"));
|
result.push_back(Pair("hex", hex));
|
||||||
|
} else {
|
||||||
|
result.push_back(Pair("result", "error"));
|
||||||
|
result.push_back(Pair("error", "couldnt create rewards addfunding transaction"));
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
result.push_back(Pair("result", "error"));
|
||||||
|
result.push_back(Pair("error", "funding amount must be positive"));
|
||||||
|
}
|
||||||
return(result);
|
return(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user