Skip to content

Commit f8099c3

Browse files
committed
Date checks return datetime verbatim & use seconds in test data.
1 parent d8f75b1 commit f8099c3

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

lib/index.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -613,14 +613,13 @@ export function _checkCredential({
613613
}
614614
// check if `now` is before `issuanceDate` on verification
615615
if(mode === 'verify') {
616-
let {issuanceDate} = credential;
617616
assertDateString({credential, prop: 'issuanceDate'});
618617
// check if `now` is before `issuanceDate`
619-
issuanceDate = new Date(issuanceDate);
618+
const issuanceDate = new Date(credential.issuanceDate);
620619
if(now < issuanceDate) {
621620
throw new Error(
622621
`The current date time (${now.toISOString()}) is before the ` +
623-
`"issuanceDate" (${issuanceDate.toISOString()}).`);
622+
`"issuanceDate" (${credential.issuanceDate}).`);
624623
}
625624
}
626625
}
@@ -634,7 +633,7 @@ export function _checkCredential({
634633
if(now > validUntil) {
635634
throw new Error(
636635
`The current date time (${now.toISOString()}) is after ` +
637-
`"validUntil" (${validUntil.toISOString()}).`);
636+
`"validUntil" (${credential.validUntil}).`);
638637
}
639638
}
640639
if(validFrom) {
@@ -644,7 +643,7 @@ export function _checkCredential({
644643
if(now < validFrom) {
645644
throw new Error(
646645
`The current date time (${now.toISOString()}) is before ` +
647-
`"validFrom" (${validFrom.toISOString()}).`);
646+
`"validFrom" (${credential.validFrom}).`);
648647
}
649648
}
650649
}

test/10-verify.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -784,7 +784,7 @@ for(const [version, mockCredential] of versionedCredentials) {
784784
const credential = jsonld.clone(mockCredential);
785785
credential.issuer = 'did:example:12345';
786786
credential.issuanceDate = createSkewedTimeStamp({skewYear: 1});
787-
const now = createSkewedTimeStamp({skewYear: 0});
787+
const now = new Date();
788788
let error;
789789
try {
790790
vc._checkCredential({credential, now});
@@ -794,7 +794,7 @@ for(const [version, mockCredential] of versionedCredentials) {
794794
should.exist(error,
795795
'Should throw error when "now" is before "issuanceDate"');
796796
error.message.should.contain(
797-
`The current date time (${now}) is before the ` +
797+
`The current date time (${now.toISOString()}) is before the ` +
798798
`"issuanceDate" (${credential.issuanceDate}).`);
799799
});
800800
}

test/helpers.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,6 @@
99
*/
1010
export function createSkewedTimeStamp({date = new Date(), skewYear}) {
1111
date.setFullYear(date.getFullYear() + skewYear);
12-
return date.toISOString();
12+
const isoString = date.toISOString();
13+
return isoString.substr(0, isoString.length - 5) + 'Z';
1314
}

0 commit comments

Comments
 (0)