* Added inTransaction tests.
* Added expectEvent.inConstructor.
* Changed inTransaction, removed decodeLogs.
* Flipped comparison to improve the error message.
* Improved expectEvent tests.
* Migrated tests to use expectEvent.
* Added roles constructor tests.
* Fixed linter errors.
* Made lodash a dev dependency.
* Added more inLogs tests.
* Update expectEvent.test.js
* Removed lodash.
* Moved role constructor tests to public role behavior.
* Revert "Flipped comparison to improve the error message."
This reverts commit 438c57833d.
* Replaced chai-as-promised with shouldFail.
74 lines
1.9 KiB
Solidity
74 lines
1.9 KiB
Solidity
pragma solidity ^0.4.24;
|
|
|
|
contract EventEmitter {
|
|
event Argumentless();
|
|
event ShortUint(uint8 value);
|
|
event ShortInt(int8 value);
|
|
event LongUint(uint256 value);
|
|
event LongInt(int256 value);
|
|
event Address(address value);
|
|
event Boolean(bool value);
|
|
event String(string value);
|
|
event LongUintBooleanString(uint256 uintValue, bool booleanValue, string stringValue);
|
|
|
|
constructor (uint8 uintValue, bool booleanValue, string stringValue) public {
|
|
emit ShortUint(uintValue);
|
|
emit Boolean(booleanValue);
|
|
emit String(stringValue);
|
|
}
|
|
|
|
function emitArgumentless() public {
|
|
emit Argumentless();
|
|
}
|
|
|
|
function emitShortUint(uint8 value) public {
|
|
emit ShortUint(value);
|
|
}
|
|
|
|
function emitShortInt(int8 value) public {
|
|
emit ShortInt(value);
|
|
}
|
|
|
|
function emitLongUint(uint256 value) public {
|
|
emit LongUint(value);
|
|
}
|
|
|
|
function emitLongInt(int256 value) public {
|
|
emit LongInt(value);
|
|
}
|
|
|
|
function emitAddress(address value) public {
|
|
emit Address(value);
|
|
}
|
|
|
|
function emitBoolean(bool value) public {
|
|
emit Boolean(value);
|
|
}
|
|
|
|
function emitString(string value) public {
|
|
emit String(value);
|
|
}
|
|
|
|
function emitLongUintBooleanString(uint256 uintValue, bool booleanValue, string stringValue) public {
|
|
emit LongUintBooleanString(uintValue, booleanValue, stringValue);
|
|
}
|
|
|
|
function emitLongUintAndBoolean(uint256 uintValue, bool boolValue) public {
|
|
emit LongUint(uintValue);
|
|
emit Boolean(boolValue);
|
|
}
|
|
|
|
function emitStringAndEmitIndirectly(string value, IndirectEventEmitter emitter) public {
|
|
emit String(value);
|
|
emitter.emitStringIndirectly(value);
|
|
}
|
|
}
|
|
|
|
contract IndirectEventEmitter {
|
|
event IndirectString(string value);
|
|
|
|
function emitStringIndirectly(string value) public {
|
|
emit IndirectString(value);
|
|
}
|
|
}
|