Questions tagged [assert]

An assertion is a statement, which aborts a program when it evaluates to false. Assert is typically used for debugging and situations which should never happen.

Filter by
Sorted by
Tagged with
0 votes
0 answers
19 views

Assertion Error - Why is my assertion asserting a transaction instead of an integer? Brownie Solidity

I've been trying to create a simple voting contract in solidity using brownie/python to test and deploy my contract. I am trying to call the "getNumSupporters" method from my smart contract, ...
user avatar
1 vote
1 answer
48 views

Testing address(this) generates exception, how to obtain the correct value for address(this)

I have modified the following code from a michalzalecki website https://michalzalecki.com/ethereum-test-driven-introduction-to-solidity/ to test address(this): pragma solidity 0.5.16; import "...
user avatar
  • 1,215
0 votes
1 answer
732 views

Fail with error 'TransferHelper: TRANSFER_FROM_FAILED', all gas used up

I'm trying to buy some CHY with USDT on Uniswap main net, fails with error 'TransferHelper: TRANSFER_FROM_FAILED', This is my failed tx link. This is a successful tx link from someone else. I notice ...
user avatar
  • 193
0 votes
2 answers
131 views

Truffle script: how to run multiple assertions without stopping the program?

I am trying to run multiple assertion using a single script. My script stops after the first assertion: My output is: t$ truffle exec ts4_for_forum.js Using network 'development'. acc2 balance ...
user avatar
  • 1,215
0 votes
1 answer
97 views

address payable[] public causing SWC 110 and execption state

This is the output of mythril ==== Exception State ==== SWC ID: 110 Severity: Medium Contract: XXXXXXX Function name: recipients(uint256) PC address: 2067 Estimated Gas Usage: 1089 - 1184 An assertion ...
user avatar
  • 1,492
0 votes
1 answer
334 views

I want to understand something with BigNumber assertions

I have create a truffle project with a smartcontract and a test file. Here is an extract of the test file: expect(ret).to.be.bignumber.equal(new BN('42')); ret is a value returned by a smartcontract'...
user avatar
  • 1,089
0 votes
1 answer
296 views

Truffle console: assert.equal, how to use exception for testing purposes?

I want to check the value returned by getName() function: pragma solidity >= 0.5.0 < 0.7.0; contract SimpleContract { string public name; constructor() public { name = 'abs'; } ...
user avatar
  • 1,215
0 votes
0 answers
31 views

Are assertions removed in release build?

Are assert() removed in release build? Please show an authoritative document documenting that they are removed or no removed.
user avatar
  • 1,344
3 votes
2 answers
1k views

Read message of require / revert statement in app.js

In my App.js I have called the smart contract function and the require statement in the function is not satisfied, so how do I get the message of that require statement in my App.js?
user avatar
2 votes
1 answer
886 views

How to handle require/revert/assert errors properly

I'm trying to find an easy pattern to revert/rollback a write transaction. The first idea was to log a GenericErrorEvent but then I noticed that it will never be emited if any require/revert/assert ...
user avatar
  • 516
3 votes
1 answer
153 views

Access require message

I am using JavaScript to run some tests on my solidity contract. Since solidity ^0.4.22 you can have a message in require such as: function Hello { require(msg.sender == 0x001234, "msg.sender ...
user avatar
  • 564
1 vote
1 answer
485 views

How to use require() with stings

I am trying to run this code on remix IDE: pragma solidity ^0.4.24; contract Aa { string public result; function feedData(string _result) public { require(_result = "e" , "...
user avatar
  • 1,353
3 votes
1 answer
51 views

Contract design by contract -> correctness and maximum gas consumption

This question is a general design question that regards contract correctness and the functions I list here are just examples. As I develop on Ethereum, it becomes aparent to me that it might be ...
user avatar
1 vote
1 answer
788 views

Better ways to test bytes32 type using truffle testing framework

small quick question, when I store a bytes32 and retrieve it from truffle console, why is it showing in 64 bits? Ex: 0x74657374737472696e6700000000000000000000000000000000000000000000 because this ...
user avatar
6 votes
2 answers
1k views

Why not use require() in place of assert()?

Even though require() is used substantially more than assert(), there are places where assert() gets used. One example would be in the widely adopted SafeMath library by OpenZeppelin: function add(...
user avatar
  • 108
1 vote
2 answers
751 views

Handling require/assert failure errors correctly from a Node.JS app?

I have a getter function in my smart contract that returns one of the string values in statically defined string array. Upon entry to the function, it does a bounds check on the incoming index using ...
user avatar
3 votes
1 answer
233 views

Call a zero-initialized variable of internal function type

I was reading solidity documentation about when an assert-style exception is generated. In the 6th point it says: "If you call a zero-initialized variable of internal function type." I don't ...
user avatar
0 votes
1 answer
178 views

Issue with Assert statement in solidity

I am probably missing something very obvious but I cannot get the simplest assert statement to work! What am I doing wrong? My goal is to simply confirm that I am within a start date and end date ...
user avatar
  • 379
0 votes
1 answer
983 views

Remix Warning : Assert

I am trying to compile a contract on remix and have run into the following warning : Use assert(x) if you never ever want x to be false, not in any circumstance (apart from a bug in your code). ...
user avatar
  • 1,178
4 votes
4 answers
710 views

Why using assert, since it would consume all gas

Since assert would consume all gas and require would return all gas, is there any reason to use assert not require? Using require to refund gas seems always a better choice than consuming them? I saw ...
user avatar
0 votes
1 answer
141 views

'Assert' and 'require' atomicity while internally calling another contract

contract one{ unint number; function saveNumber(unint _number){ number = _number; } } contract two{ function callOtherFunctionAndAlsoTransferFunds(){ oneContract = one('contractaddress'); ...
user avatar
  • 123
0 votes
1 answer
306 views

Control structure with truffle (assert and require)

When I'm trying to deploy contracts that contain assert and require using truffle I receive Error: Undeclared identifier. e.g: pragma solidity ^0.4.8; contract Owned{ address public owner = ...
user avatar
  • 1,081
96 votes
5 answers
39k views

Difference between require and assert and the difference between revert and throw

I was looking at the docs and I'm looking for clarification on the difference between require and assert and throw and revert. assert(bool condition): abort execution and revert state changes if ...
user avatar
  • 1,481