1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-20 15:18:08 +02:00

Reject getDestination, in the API, for non-string inputs

Note how e.g. the `getPage` method does basic validation of the input.
This commit is contained in:
Jonas Jenwald 2018-08-11 16:00:48 +02:00
parent b74c813353
commit 1179584fd6
2 changed files with 30 additions and 1 deletions

View file

@ -583,6 +583,32 @@ describe('api', function() {
});
});
it('gets non-string destination', function(done) {
let numberPromise = doc.getDestination(4.3);
let booleanPromise = doc.getDestination(true);
let arrayPromise = doc.getDestination([
{ num: 17, gen: 0, }, { name: 'XYZ', }, 0, 841.89, null]);
numberPromise = numberPromise.then(function() {
throw new Error('shall fail for non-string destination.');
}, function(reason) {
expect(reason instanceof Error).toEqual(true);
});
booleanPromise = booleanPromise.then(function() {
throw new Error('shall fail for non-string destination.');
}, function(reason) {
expect(reason instanceof Error).toEqual(true);
});
arrayPromise = arrayPromise.then(function() {
throw new Error('shall fail for non-string destination.');
}, function(reason) {
expect(reason instanceof Error).toEqual(true);
});
Promise.all([numberPromise, booleanPromise, arrayPromise]).then(
done, done.fail);
});
it('gets non-existent page labels', function (done) {
var promise = doc.getPageLabels();
promise.then(function (data) {