From 96d6103e0b70c5a09005bc77cf5bb9310fb90ac3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Venturo?= Date: Thu, 18 Oct 2018 10:47:35 -0300 Subject: [PATCH] Made some inherit-only contracts internal. (#1433) * Made some inherit-only contracts internal. * Added OwnableMock. --- contracts/access/roles/CapperRole.sol | 2 +- contracts/access/roles/MinterRole.sol | 2 +- contracts/access/roles/PauserRole.sol | 2 +- contracts/access/roles/SignerRole.sol | 2 +- contracts/drafts/SignatureBouncer.sol | 2 ++ contracts/introspection/ERC165.sol | 2 +- contracts/lifecycle/Pausable.sol | 2 +- contracts/mocks/OwnableMock.sol | 6 ++++++ contracts/ownership/Ownable.sol | 2 +- contracts/ownership/Secondary.sol | 2 +- contracts/payment/PullPayment.sol | 2 +- contracts/utils/ReentrancyGuard.sol | 2 +- test/ownership/Ownable.test.js | 2 +- 13 files changed, 19 insertions(+), 11 deletions(-) create mode 100644 contracts/mocks/OwnableMock.sol diff --git a/contracts/access/roles/CapperRole.sol b/contracts/access/roles/CapperRole.sol index a79e8e694..d6b2ba066 100644 --- a/contracts/access/roles/CapperRole.sol +++ b/contracts/access/roles/CapperRole.sol @@ -10,7 +10,7 @@ contract CapperRole { Roles.Role private cappers; - constructor() public { + constructor() internal { _addCapper(msg.sender); } diff --git a/contracts/access/roles/MinterRole.sol b/contracts/access/roles/MinterRole.sol index d908e3004..57f4a5a80 100644 --- a/contracts/access/roles/MinterRole.sol +++ b/contracts/access/roles/MinterRole.sol @@ -10,7 +10,7 @@ contract MinterRole { Roles.Role private minters; - constructor() public { + constructor() internal { _addMinter(msg.sender); } diff --git a/contracts/access/roles/PauserRole.sol b/contracts/access/roles/PauserRole.sol index d59839d6b..58bb6a313 100644 --- a/contracts/access/roles/PauserRole.sol +++ b/contracts/access/roles/PauserRole.sol @@ -10,7 +10,7 @@ contract PauserRole { Roles.Role private pausers; - constructor() public { + constructor() internal { _addPauser(msg.sender); } diff --git a/contracts/access/roles/SignerRole.sol b/contracts/access/roles/SignerRole.sol index bbf8fd36f..6a2bc602d 100644 --- a/contracts/access/roles/SignerRole.sol +++ b/contracts/access/roles/SignerRole.sol @@ -10,7 +10,7 @@ contract SignerRole { Roles.Role private signers; - constructor() public { + constructor() internal { _addSigner(msg.sender); } diff --git a/contracts/drafts/SignatureBouncer.sol b/contracts/drafts/SignatureBouncer.sol index ff596b006..4327a2bbe 100644 --- a/contracts/drafts/SignatureBouncer.sol +++ b/contracts/drafts/SignatureBouncer.sol @@ -36,6 +36,8 @@ contract SignatureBouncer is SignerRole { // Signature size is 65 bytes (tightly packed v + r + s), but gets padded to 96 bytes uint256 private constant _SIGNATURE_SIZE = 96; + constructor() internal {} + /** * @dev requires that a valid signature of a signer was provided */ diff --git a/contracts/introspection/ERC165.sol b/contracts/introspection/ERC165.sol index 60bcd53f3..5d083acdf 100644 --- a/contracts/introspection/ERC165.sol +++ b/contracts/introspection/ERC165.sol @@ -25,7 +25,7 @@ contract ERC165 is IERC165 { * implement ERC165 itself */ constructor() - public + internal { _registerInterface(_InterfaceId_ERC165); } diff --git a/contracts/lifecycle/Pausable.sol b/contracts/lifecycle/Pausable.sol index a6cae2a55..0e7feb780 100644 --- a/contracts/lifecycle/Pausable.sol +++ b/contracts/lifecycle/Pausable.sol @@ -12,7 +12,7 @@ contract Pausable is PauserRole { bool private _paused; - constructor() public { + constructor() internal { _paused = false; } diff --git a/contracts/mocks/OwnableMock.sol b/contracts/mocks/OwnableMock.sol new file mode 100644 index 000000000..e16a89012 --- /dev/null +++ b/contracts/mocks/OwnableMock.sol @@ -0,0 +1,6 @@ +pragma solidity ^0.4.24; + +import "../ownership/Ownable.sol"; + +contract OwnableMock is Ownable { +} diff --git a/contracts/ownership/Ownable.sol b/contracts/ownership/Ownable.sol index 5279d5d42..7b5b72102 100644 --- a/contracts/ownership/Ownable.sol +++ b/contracts/ownership/Ownable.sol @@ -17,7 +17,7 @@ contract Ownable { * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ - constructor() public { + constructor() internal { _owner = msg.sender; emit OwnershipTransferred(address(0), _owner); } diff --git a/contracts/ownership/Secondary.sol b/contracts/ownership/Secondary.sol index d602d67ec..02d2982a3 100644 --- a/contracts/ownership/Secondary.sol +++ b/contracts/ownership/Secondary.sol @@ -10,7 +10,7 @@ contract Secondary { /** * @dev Sets the primary account to the one that is creating the Secondary contract. */ - constructor() public { + constructor() internal { _primary = msg.sender; } diff --git a/contracts/payment/PullPayment.sol b/contracts/payment/PullPayment.sol index 4db11c089..f6d7e2c1e 100644 --- a/contracts/payment/PullPayment.sol +++ b/contracts/payment/PullPayment.sol @@ -10,7 +10,7 @@ import "./escrow/Escrow.sol"; contract PullPayment { Escrow private _escrow; - constructor() public { + constructor() internal { _escrow = new Escrow(); } diff --git a/contracts/utils/ReentrancyGuard.sol b/contracts/utils/ReentrancyGuard.sol index 4c10dc775..368f2720f 100644 --- a/contracts/utils/ReentrancyGuard.sol +++ b/contracts/utils/ReentrancyGuard.sol @@ -11,7 +11,7 @@ contract ReentrancyGuard { /// @dev counter to allow mutex lock with only one SSTORE operation uint256 private _guardCounter; - constructor() public { + constructor() internal { // The counter starts at one to prevent changing it from zero to a non-zero // value, which is a more expensive operation. _guardCounter = 1; diff --git a/test/ownership/Ownable.test.js b/test/ownership/Ownable.test.js index 9b9c1bf3e..6f8a813e5 100644 --- a/test/ownership/Ownable.test.js +++ b/test/ownership/Ownable.test.js @@ -1,6 +1,6 @@ const { shouldBehaveLikeOwnable } = require('./Ownable.behavior'); -const Ownable = artifacts.require('Ownable'); +const Ownable = artifacts.require('OwnableMock'); contract('Ownable', function ([_, owner, ...otherAccounts]) { beforeEach(async function () {