@ -167,14 +167,14 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '5678' ) ;
const b = new BN ( '1234' ) ;
await testCommutative ( this . safeMath . a dd, a , b , a . add ( b ) ) ;
await testCommutative ( this . safeMath . doA dd, a , b , a . add ( b ) ) ;
} ) ;
it ( 'reverts on addition overflow' , async function ( ) {
const a = MAX _UINT256 ;
const b = new BN ( '1' ) ;
await testFailsCommutative ( this . safeMath . a dd, a , b , 'SafeMath: addition overflow' ) ;
await testFailsCommutative ( this . safeMath . doA dd, a , b , 'SafeMath: addition overflow' ) ;
} ) ;
} ) ;
@ -183,14 +183,14 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '5678' ) ;
const b = new BN ( '1234' ) ;
expect ( await this . safeMath . s ub( a , b ) ) . to . be . bignumber . equal ( a . sub ( b ) ) ;
expect ( await this . safeMath . doS ub( a , b ) ) . to . be . bignumber . equal ( a . sub ( b ) ) ;
} ) ;
it ( 'reverts if subtraction result would be negative' , async function ( ) {
const a = new BN ( '1234' ) ;
const b = new BN ( '5678' ) ;
await expectRevert ( this . safeMath . s ub( a , b ) , 'SafeMath: subtraction overflow' ) ;
await expectRevert ( this . safeMath . doS ub( a , b ) , 'SafeMath: subtraction overflow' ) ;
} ) ;
} ) ;
@ -199,21 +199,21 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '1234' ) ;
const b = new BN ( '5678' ) ;
await testCommutative ( this . safeMath . m ul, a , b , a . mul ( b ) ) ;
await testCommutative ( this . safeMath . doM ul, a , b , a . mul ( b ) ) ;
} ) ;
it ( 'multiplies by zero correctly' , async function ( ) {
const a = new BN ( '0' ) ;
const b = new BN ( '5678' ) ;
await testCommutative ( this . safeMath . m ul, a , b , '0' ) ;
await testCommutative ( this . safeMath . doM ul, a , b , '0' ) ;
} ) ;
it ( 'reverts on multiplication overflow' , async function ( ) {
const a = MAX _UINT256 ;
const b = new BN ( '2' ) ;
await testFailsCommutative ( this . safeMath . m ul, a , b , 'SafeMath: multiplication overflow' ) ;
await testFailsCommutative ( this . safeMath . doM ul, a , b , 'SafeMath: multiplication overflow' ) ;
} ) ;
} ) ;
@ -222,28 +222,28 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '5678' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . div ( a , b ) ) . to . be . bignumber . equal ( a . div ( b ) ) ;
expect ( await this . safeMath . doD iv ( a , b ) ) . to . be . bignumber . equal ( a . div ( b ) ) ;
} ) ;
it ( 'divides zero correctly' , async function ( ) {
const a = new BN ( '0' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . div ( a , b ) ) . to . be . bignumber . equal ( '0' ) ;
expect ( await this . safeMath . doD iv ( a , b ) ) . to . be . bignumber . equal ( '0' ) ;
} ) ;
it ( 'returns complete number result on non-even division' , async function ( ) {
const a = new BN ( '7000' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . div ( a , b ) ) . to . be . bignumber . equal ( '1' ) ;
expect ( await this . safeMath . doD iv ( a , b ) ) . to . be . bignumber . equal ( '1' ) ;
} ) ;
it ( 'reverts on division by zero' , async function ( ) {
const a = new BN ( '5678' ) ;
const b = new BN ( '0' ) ;
await expectRevert ( this . safeMath . div ( a , b ) , 'SafeMath: division by zero' ) ;
await expectRevert ( this . safeMath . doD iv ( a , b ) , 'SafeMath: division by zero' ) ;
} ) ;
} ) ;
@ -253,28 +253,28 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '284' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . m od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
expect ( await this . safeMath . doM od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
} ) ;
it ( 'when the dividend is equal to the divisor' , async function ( ) {
const a = new BN ( '5678' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . m od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
expect ( await this . safeMath . doM od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
} ) ;
it ( 'when the dividend is larger than the divisor' , async function ( ) {
const a = new BN ( '7000' ) ;
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . m od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
expect ( await this . safeMath . doM od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
} ) ;
it ( 'when the dividend is a multiple of the divisor' , async function ( ) {
const a = new BN ( '17034' ) ; // 17034 == 5678 * 3
const b = new BN ( '5678' ) ;
expect ( await this . safeMath . m od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
expect ( await this . safeMath . doM od( a , b ) ) . to . be . bignumber . equal ( a . mod ( b ) ) ;
} ) ;
} ) ;
@ -282,7 +282,7 @@ contract('SafeMath', function (accounts) {
const a = new BN ( '5678' ) ;
const b = new BN ( '0' ) ;
await expectRevert ( this . safeMath . m od( a , b ) , 'SafeMath: modulo by zero' ) ;
await expectRevert ( this . safeMath . doM od( a , b ) , 'SafeMath: modulo by zero' ) ;
} ) ;
} ) ;
} ) ;