HasNoContracts.test.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import expectThrow from './helpers/expectThrow';
  2. import toPromise from './helpers/toPromise';
  3. const Ownable = artifacts.require('../contracts/ownership/Ownable.sol');
  4. const HasNoContracts = artifacts.require(
  5. '../contracts/ownership/HasNoContracts.sol',
  6. );
  7. contract('HasNoContracts', function (accounts) {
  8. let hasNoContracts = null;
  9. let ownable = null;
  10. beforeEach(async () => {
  11. // Create contract and token
  12. hasNoContracts = await HasNoContracts.new();
  13. ownable = await Ownable.new();
  14. // Force ownership into contract
  15. await ownable.transferOwnership(hasNoContracts.address);
  16. const owner = await ownable.owner();
  17. assert.equal(owner, hasNoContracts.address);
  18. });
  19. it('should allow owner to reclaim contracts', async function () {
  20. await hasNoContracts.reclaimContract(ownable.address);
  21. const owner = await ownable.owner();
  22. assert.equal(owner, accounts[0]);
  23. });
  24. it('should allow only owner to reclaim contracts', async function () {
  25. await expectThrow(
  26. hasNoContracts.reclaimContract(ownable.address, { from: accounts[1] }),
  27. );
  28. });
  29. });