commit
8285fe629c
|
@ -285,7 +285,7 @@ module.exports = Class( 'BaseQuote' )
|
||||||
|| ( !post_rate && !this._program.lockTimeout.preRateExpiration )
|
|| ( !post_rate && !this._program.lockTimeout.preRateExpiration )
|
||||||
|| ( post_rate && !this._program.lockTimeout.postRateExpiration ))
|
|| ( post_rate && !this._program.lockTimeout.postRateExpiration ))
|
||||||
{
|
{
|
||||||
return Number.POSITIVE_INFINITY;
|
return Infinity;
|
||||||
}
|
}
|
||||||
|
|
||||||
var reference_date = ( post_rate ) ? this._initialRatedDate : this._startDate;
|
var reference_date = ( post_rate ) ? this._initialRatedDate : this._startDate;
|
||||||
|
@ -294,8 +294,8 @@ module.exports = Class( 'BaseQuote' )
|
||||||
: this._program.lockTimeout.preRateExpiration;
|
: this._program.lockTimeout.preRateExpiration;
|
||||||
|
|
||||||
// Use Date.setDate to accommodate leap seconds, leap years, DST, etc.
|
// Use Date.setDate to accommodate leap seconds, leap years, DST, etc.
|
||||||
var expiration_date = new Date( reference_date );
|
var expiration_date = new Date( reference_date * 1000 );
|
||||||
expiration_date.setDate( expiration_date.getDate() + expiration_period );
|
expiration_date.setDate( expiration_date.getDate() + +( expiration_period ) );
|
||||||
|
|
||||||
return expiration_date.getTime();
|
return expiration_date.getTime();
|
||||||
},
|
},
|
||||||
|
@ -320,16 +320,16 @@ module.exports = Class( 'BaseQuote' )
|
||||||
|
|
||||||
var expiration_timestamp = this.getExpirationDate();
|
var expiration_timestamp = this.getExpirationDate();
|
||||||
|
|
||||||
// If the timestamp is INFINITY, the quote will never expire
|
// If the timestamp is infinite, the quote will never expire
|
||||||
// NOTE: The Date constructor does not support INFINITY as the timestamp
|
// NOTE: The Date constructor does not support `Infinity` as the timestamp
|
||||||
if ( expiration_timestamp === Number.POSITIVE_INFINITY )
|
if ( expiration_timestamp === Infinity )
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Use Date.setDate to accommodate leap seconds, leap years, DST, etc.
|
// Use Date.setDate to accommodate leap seconds, leap years, DST, etc.
|
||||||
var expiration_date = new Date( expiration_timestamp );
|
var expiration_date = new Date( expiration_timestamp );
|
||||||
expiration_date.setDate( expiration_date.getDate() + grace_period );
|
expiration_date.setDate( expiration_date.getDate() + +( grace_period ));
|
||||||
|
|
||||||
return current_date.getTime() > expiration_date.getTime();
|
return current_date.getTime() > expiration_date.getTime();
|
||||||
},
|
},
|
||||||
|
|
|
@ -245,9 +245,9 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
expirationDate: 7862400000,
|
expirationDate: 7862400,
|
||||||
currentDate: 86400000,
|
currentDate: 86400,
|
||||||
expired: false
|
expired: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -258,9 +258,9 @@ describe( 'BaseQuote', () =>
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400000,
|
||||||
initialRatedDate: 172800000,
|
initialRatedDate: 172800,
|
||||||
expirationDate: 2764800000,
|
expirationDate: 2764800,
|
||||||
currentDate: 172800000,
|
currentDate: 172800,
|
||||||
expired: false
|
expired: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -271,9 +271,9 @@ describe( 'BaseQuote', () =>
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400,
|
startDate: 86400,
|
||||||
initialRatedDate: 172800000,
|
initialRatedDate: 172800,
|
||||||
expirationDate: 2764800000,
|
expirationDate: 2764800,
|
||||||
currentDate: 2851200000,
|
currentDate: 2851200,
|
||||||
expired: true
|
expired: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -286,9 +286,9 @@ describe( 'BaseQuote', () =>
|
||||||
postRateGracePeriod: 5
|
postRateGracePeriod: 5
|
||||||
},
|
},
|
||||||
startDate: 86400,
|
startDate: 86400,
|
||||||
initialRatedDate: 172800000,
|
initialRatedDate: 172800,
|
||||||
expirationDate: 2764800000,
|
expirationDate: 2764800,
|
||||||
currentDate: 2851200000,
|
currentDate: 2851200,
|
||||||
expired: false
|
expired: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -298,9 +298,9 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
expirationDate: 7862400000,
|
expirationDate: 7862400,
|
||||||
currentDate: 5356800000,
|
currentDate: 5356800,
|
||||||
expired: false
|
expired: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -310,10 +310,10 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
initialRatedDate: 172800000,
|
initialRatedDate: 172800,
|
||||||
expirationDate: 2764800000,
|
expirationDate: 2764800,
|
||||||
currentDate: 5356800000,
|
currentDate: 5356800,
|
||||||
expired: true
|
expired: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -323,9 +323,9 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
expirationDate: 7862400000,
|
expirationDate: 7862400,
|
||||||
currentDate: 7948800000,
|
currentDate: 7948800,
|
||||||
expired: true
|
expired: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -337,9 +337,9 @@ describe( 'BaseQuote', () =>
|
||||||
postRateExpiration: 30,
|
postRateExpiration: 30,
|
||||||
postRateGracePeriod: 5
|
postRateGracePeriod: 5
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
expirationDate: 7862400000,
|
expirationDate: 7862400,
|
||||||
currentDate: 7948800000,
|
currentDate: 7948800,
|
||||||
expired: false
|
expired: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -349,9 +349,9 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
expirationDate: 7862400000,
|
expirationDate: 7862400,
|
||||||
currentDate: 10540800000,
|
currentDate: 10540800,
|
||||||
expired: true
|
expired: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -361,10 +361,10 @@ describe( 'BaseQuote', () =>
|
||||||
preRateExpiration: 90,
|
preRateExpiration: 90,
|
||||||
postRateExpiration: 30
|
postRateExpiration: 30
|
||||||
},
|
},
|
||||||
startDate: 86400000,
|
startDate: 86400,
|
||||||
initialRatedDate: 172800000,
|
initialRatedDate: 172800,
|
||||||
expirationDate: 2764800000,
|
expirationDate: 2764800,
|
||||||
currentDate: 10540800000,
|
currentDate: 10540800,
|
||||||
expired: true
|
expired: true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -374,8 +374,9 @@ describe( 'BaseQuote', () =>
|
||||||
const description = "Expiration is correct for " + testCase.description;
|
const description = "Expiration is correct for " + testCase.description;
|
||||||
const start_date = testCase.startDate;
|
const start_date = testCase.startDate;
|
||||||
const initial_rated_date = testCase.initialRatedDate;
|
const initial_rated_date = testCase.initialRatedDate;
|
||||||
const current_date = testCase.currentDate;
|
const current_date = testCase.currentDate * 1000;
|
||||||
const expiration_date = testCase.expirationDate;
|
const expiration_date = ( typeof testCase.expirationDate === "number" )
|
||||||
|
? testCase.expirationDate * 1000 : undefined;
|
||||||
const expired = testCase.expired;
|
const expired = testCase.expired;
|
||||||
|
|
||||||
quote.setProgram( createStubProgram( testCase.lockTimeout ) );
|
quote.setProgram( createStubProgram( testCase.lockTimeout ) );
|
||||||
|
@ -394,10 +395,10 @@ describe( 'BaseQuote', () =>
|
||||||
|
|
||||||
if ( expiration_date !== undefined )
|
if ( expiration_date !== undefined )
|
||||||
{
|
{
|
||||||
expect( quote.getExpirationDate() ).to.equal( +expiration_date );
|
expect( quote.getExpirationDate() ).to.equal( expiration_date );
|
||||||
}
|
}
|
||||||
|
|
||||||
expect( quote.hasExpired( new Date( current_date ) ) ).to.equal( !!expired );
|
expect( quote.hasExpired( new Date( current_date ) ) ).to.equal( expired );
|
||||||
} );
|
} );
|
||||||
} );
|
} );
|
||||||
} );
|
} );
|
||||||
|
|
Loading…
Reference in New Issue