Skip to content

Commit ee806d9

Browse files
chrisirhcsqrrrl
authored andcommitted
add failing test
1 parent 40bdb39 commit ee806d9

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

test/test.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -416,6 +416,40 @@ describe('Service', () => {
416416
assert.equal(storedToken.refresh_token, 'bar');
417417
assert.equal(storedToken.refreshTokenExpiresAt, NOW_SECONDS + 360);
418418
});
419+
420+
it('should retain refresh expiry', () => {
421+
const NOW_SECONDS = OAuth2.getTimeInSeconds_(new Date());
422+
const ONE_HOUR_AGO_SECONDS = NOW_SECONDS - 360;
423+
var token = {
424+
granted_time: ONE_HOUR_AGO_SECONDS,
425+
expires_in: 100,
426+
refresh_token: 'bar',
427+
refresh_token_expires_in: 720
428+
};
429+
var properties = new MockProperties({
430+
'oauth2.test': JSON.stringify(token)
431+
});
432+
433+
mocks.UrlFetchApp.resultFunction = () => {
434+
return JSON.stringify({
435+
access_token: 'token'
436+
});
437+
};
438+
439+
OAuth2.createService('test')
440+
.setClientId('abc')
441+
.setClientSecret('def')
442+
.setTokenUrl('http://www.example.com')
443+
.setPropertyStore(properties)
444+
.setLock(new MockLock())
445+
.refresh();
446+
447+
var storedToken = JSON.parse(properties.getProperty('oauth2.test'));
448+
assert.equal(storedToken.access_token, 'token');
449+
assert.equal(storedToken.refresh_token, 'bar');
450+
assert.equal(storedToken.granted_time, NOW_SECONDS);
451+
assert.equal(storedToken.refresh_token_expires_in, 360);
452+
});
419453
});
420454

421455
describe('#exchangeGrant_()', () => {

0 commit comments

Comments
 (0)