mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge remote-tracking branch 'origin/develop' into breaking
This commit is contained in:
@@ -239,27 +239,27 @@ protected:
|
||||
{
|
||||
callString("reserve", _name);
|
||||
}
|
||||
u160 owner(string const& _name)
|
||||
h160 owner(string const& _name)
|
||||
{
|
||||
return callStringReturnsAddress("owner", _name);
|
||||
}
|
||||
void setAddress(string const& _name, u160 const& _address, bool _primary)
|
||||
void setAddress(string const& _name, h160 const& _address, bool _primary)
|
||||
{
|
||||
callStringAddressBool("setAddress", _name, _address, _primary);
|
||||
}
|
||||
u160 addr(string const& _name)
|
||||
h160 addr(string const& _name)
|
||||
{
|
||||
return callStringReturnsAddress("addr", _name);
|
||||
}
|
||||
string name(u160 const& _addr)
|
||||
string name(h160 const& _addr)
|
||||
{
|
||||
return callAddressReturnsString("name", _addr);
|
||||
}
|
||||
void setSubRegistrar(string const& _name, u160 const& _address)
|
||||
void setSubRegistrar(string const& _name, h160 const& _address)
|
||||
{
|
||||
callStringAddress("setSubRegistrar", _name, _address);
|
||||
}
|
||||
u160 subRegistrar(string const& _name)
|
||||
h160 subRegistrar(string const& _name)
|
||||
{
|
||||
return callStringReturnsAddress("subRegistrar", _name);
|
||||
}
|
||||
@@ -271,7 +271,7 @@ protected:
|
||||
{
|
||||
return callStringReturnsBytes32("content", _name);
|
||||
}
|
||||
void transfer(string const& _name, u160 const& _target)
|
||||
void transfer(string const& _name, h160 const& _target)
|
||||
{
|
||||
return callStringAddress("transfer", _name, _target);
|
||||
}
|
||||
@@ -304,12 +304,12 @@ BOOST_AUTO_TEST_CASE(reserve)
|
||||
|
||||
// should not work
|
||||
registrar.reserve("");
|
||||
BOOST_CHECK_EQUAL(registrar.owner(""), u160(0));
|
||||
BOOST_CHECK_EQUAL(registrar.owner(""), h160{});
|
||||
|
||||
for (auto const& name: names)
|
||||
{
|
||||
registrar.reserve(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), u160(m_sender));
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), m_sender);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -346,20 +346,20 @@ BOOST_AUTO_TEST_CASE(properties)
|
||||
// setting by sender works
|
||||
registrar.reserve(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), sender);
|
||||
registrar.setAddress(name, addr, true);
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), u160(addr));
|
||||
registrar.setSubRegistrar(name, addr + 20);
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), u160(addr + 20));
|
||||
registrar.setAddress(name, h160(addr), true);
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), h160(addr));
|
||||
registrar.setSubRegistrar(name, h160(addr + 20));
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), h160(addr + 20));
|
||||
registrar.setContent(name, h256(u256(addr + 90)));
|
||||
BOOST_CHECK_EQUAL(registrar.content(name), h256(u256(addr + 90)));
|
||||
|
||||
// but not by someone else
|
||||
m_sender = account(count - 1);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), sender);
|
||||
registrar.setAddress(name, addr + 1, true);
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), u160(addr));
|
||||
registrar.setSubRegistrar(name, addr + 20 + 1);
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), u160(addr + 20));
|
||||
registrar.setAddress(name, h160(addr + 1), true);
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), h160(addr));
|
||||
registrar.setSubRegistrar(name, h160(addr + 20 + 1));
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), h160(addr + 20));
|
||||
registrar.setContent(name, h256(u256(addr + 90 + 1)));
|
||||
BOOST_CHECK_EQUAL(registrar.content(name), h256(u256(addr + 90)));
|
||||
count++;
|
||||
@@ -373,8 +373,8 @@ BOOST_AUTO_TEST_CASE(transfer)
|
||||
RegistrarInterface registrar(*this);
|
||||
registrar.reserve(name);
|
||||
registrar.setContent(name, h256(u256(123)));
|
||||
registrar.transfer(name, u160(555));
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), u160(555));
|
||||
registrar.transfer(name, h160(555));
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), h160(555));
|
||||
BOOST_CHECK_EQUAL(registrar.content(name), h256(u256(123)));
|
||||
}
|
||||
|
||||
@@ -386,9 +386,9 @@ BOOST_AUTO_TEST_CASE(disown)
|
||||
RegistrarInterface registrar(*this);
|
||||
registrar.reserve(name);
|
||||
registrar.setContent(name, h256(u256(123)));
|
||||
registrar.setAddress(name, u160(124), true);
|
||||
registrar.setSubRegistrar(name, u160(125));
|
||||
BOOST_CHECK_EQUAL(registrar.name(u160(124)), name);
|
||||
registrar.setAddress(name, h160(124), true);
|
||||
registrar.setSubRegistrar(name, h160(125));
|
||||
BOOST_CHECK_EQUAL(registrar.name(h160(124)), name);
|
||||
|
||||
// someone else tries disowning
|
||||
sendEther(account(1), u256(10) * ether);
|
||||
@@ -398,11 +398,11 @@ BOOST_AUTO_TEST_CASE(disown)
|
||||
|
||||
m_sender = account(0);
|
||||
registrar.disown(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), h160());
|
||||
BOOST_CHECK_EQUAL(registrar.addr(name), h160());
|
||||
BOOST_CHECK_EQUAL(registrar.subRegistrar(name), h160());
|
||||
BOOST_CHECK_EQUAL(registrar.content(name), h256());
|
||||
BOOST_CHECK_EQUAL(registrar.name(u160(124)), "");
|
||||
BOOST_CHECK_EQUAL(registrar.name(h160(124)), "");
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(auction_simple)
|
||||
@@ -414,7 +414,7 @@ BOOST_AUTO_TEST_CASE(auction_simple)
|
||||
// initiate auction
|
||||
registrar.setNextValue(8);
|
||||
registrar.reserve(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), h160());
|
||||
// "wait" until auction end
|
||||
|
||||
m_evmcHost->tx_context.block_timestamp += m_biddingTime + 10;
|
||||
@@ -435,7 +435,7 @@ BOOST_AUTO_TEST_CASE(auction_bidding)
|
||||
// initiate auction
|
||||
registrar.setNextValue(8);
|
||||
registrar.reserve(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), h160());
|
||||
// overbid self
|
||||
m_evmcHost->tx_context.block_timestamp = startTime + m_biddingTime - 10;
|
||||
registrar.setNextValue(12);
|
||||
@@ -446,7 +446,7 @@ BOOST_AUTO_TEST_CASE(auction_bidding)
|
||||
m_evmcHost->tx_context.block_timestamp = startTime + 2 * m_biddingTime - 50;
|
||||
registrar.setNextValue(13);
|
||||
registrar.reserve(name);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), 0);
|
||||
BOOST_CHECK_EQUAL(registrar.owner(name), h160());
|
||||
// end auction by first bidder (which is not highest) trying to overbid again (too late)
|
||||
m_sender = account(0);
|
||||
m_evmcHost->tx_context.block_timestamp = startTime + 4 * m_biddingTime;
|
||||
|
||||
Reference in New Issue
Block a user