Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
openzeppelin-contracts-upgradeable
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
俞永鹏
openzeppelin-contracts-upgradeable
Commits
5ea9bd44
Commit
5ea9bd44
authored
Nov 30, 2017
by
zava
Committed by
Alejandro Santander
Jan 18, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[Heritable] added HeirOwnershipClaimed event
parent
51c2c504
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
6 additions
and
1 deletions
+6
-1
Heritable.sol
contracts/ownership/Heritable.sol
+2
-0
Heritable.js
test/Heritable.js
+4
-1
No files found.
contracts/ownership/Heritable.sol
View file @
5ea9bd44
...
@@ -23,6 +23,7 @@ contract Heritable is Ownable {
...
@@ -23,6 +23,7 @@ contract Heritable is Ownable {
event HeirChanged(address indexed owner, address indexed newHeir);
event HeirChanged(address indexed owner, address indexed newHeir);
event OwnerHeartbeated(address indexed owner);
event OwnerHeartbeated(address indexed owner);
event OwnerProclaimedDead(address indexed owner, address indexed heir, uint timeOfDeath);
event OwnerProclaimedDead(address indexed owner, address indexed heir, uint timeOfDeath);
event HeirOwnershipClaimed(address indexed previousOwner, address indexed newOwner);
/**
/**
...
@@ -83,6 +84,7 @@ contract Heritable is Ownable {
...
@@ -83,6 +84,7 @@ contract Heritable is Ownable {
require(!ownerLives());
require(!ownerLives());
require(now >= timeOfDeath + heartbeatTimeout);
require(now >= timeOfDeath + heartbeatTimeout);
OwnershipTransferred(owner, heir);
OwnershipTransferred(owner, heir);
HeirOwnershipClaimed(owner, heir);
owner = heir;
owner = heir;
timeOfDeath = 0;
timeOfDeath = 0;
}
}
...
...
test/Heritable.js
View file @
5ea9bd44
...
@@ -67,7 +67,7 @@ contract('Heritable', function(accounts) {
...
@@ -67,7 +67,7 @@ contract('Heritable', function(accounts) {
it
(
'heir can
\'
t claim ownership if owner heartbeats'
,
async
function
()
{
it
(
'heir can
\'
t claim ownership if owner heartbeats'
,
async
function
()
{
const
heir
=
accounts
[
1
]
const
heir
=
accounts
[
1
]
await
heritable
.
setHeir
(
heir
,
{
from
:
owner
})
await
heritable
.
setHeir
(
heir
,
{
from
:
owner
})
await
heritable
.
proclaimDeath
({
from
:
heir
})
await
heritable
.
proclaimDeath
({
from
:
heir
})
await
heritable
.
heartbeat
({
from
:
owner
})
await
heritable
.
heartbeat
({
from
:
owner
})
await
expectThrow
(
heritable
.
claimHeirOwnership
({
from
:
heir
}))
await
expectThrow
(
heritable
.
claimHeirOwnership
({
from
:
heir
}))
...
@@ -101,9 +101,12 @@ contract('Heritable', function(accounts) {
...
@@ -101,9 +101,12 @@ contract('Heritable', function(accounts) {
await
increaseTime
(
4141
)
await
increaseTime
(
4141
)
const
claimHeirOwnershipLogs
=
(
await
heritable
.
claimHeirOwnership
({
from
:
heir
})).
logs
const
claimHeirOwnershipLogs
=
(
await
heritable
.
claimHeirOwnership
({
from
:
heir
})).
logs
const
ownershipTransferredEvent
=
claimHeirOwnershipLogs
.
find
(
e
=>
e
.
event
===
'OwnershipTransferred'
)
const
ownershipTransferredEvent
=
claimHeirOwnershipLogs
.
find
(
e
=>
e
.
event
===
'OwnershipTransferred'
)
const
heirOwnershipClaimedEvent
=
claimHeirOwnershipLogs
.
find
(
e
=>
e
.
event
===
'HeirOwnershipClaimed'
)
assert
.
isTrue
(
ownershipTransferredEvent
.
args
.
previousOwner
===
owner
)
assert
.
isTrue
(
ownershipTransferredEvent
.
args
.
previousOwner
===
owner
)
assert
.
isTrue
(
ownershipTransferredEvent
.
args
.
newOwner
===
heir
)
assert
.
isTrue
(
ownershipTransferredEvent
.
args
.
newOwner
===
heir
)
assert
.
isTrue
(
heirOwnershipClaimedEvent
.
args
.
previousOwner
===
owner
)
assert
.
isTrue
(
heirOwnershipClaimedEvent
.
args
.
newOwner
===
heir
)
})
})
})
})
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment