TestOwnable.sol 810 B

123456789101112131415161718192021222324
  1. import "truffle/Assert.sol";
  2. import "truffle/DeployedAddresses.sol";
  3. import "../contracts/Ownable.sol";
  4. contract TestOwnable {
  5. Ownable ownable = new Ownable();
  6. function testHasOwner() {
  7. Assert.isNotZero(ownable.owner(), "Ownable should have an owner upon creation.");
  8. }
  9. function testChangesOwner() {
  10. address originalOwner = ownable.owner();
  11. ownable.transfer(0x0);
  12. Assert.notEqual(originalOwner, ownable.owner(), "Ownable should change owners after transfer.");
  13. }
  14. function testOnlyOwnerCanChangeOwner() {
  15. Ownable deployedOwnable = Ownable(DeployedAddresses.Ownable());
  16. address originalOwner = deployedOwnable.owner();
  17. deployedOwnable.transfer(0x0);
  18. Assert.equal(originalOwner, deployedOwnable.owner(), "Ownable should prevent non-owners from transfering");
  19. }
  20. }