mirror of
https://github.com/foliojs/pdfkit.git
synced 2025-12-08 20:15:54 +00:00
80 lines
2.1 KiB
JavaScript
80 lines
2.1 KiB
JavaScript
var { runDocTest } = require('./helpers');
|
|
var PDFDocument = require('../../lib/document').default;
|
|
var CryptoJS = require('crypto-js');
|
|
|
|
describe('pdfmake', function() {
|
|
let generateRandomWordArray = null;
|
|
|
|
beforeAll(function() {
|
|
const doc = new PDFDocument({ userPassword: 'user' });
|
|
generateRandomWordArray = Object.getPrototypeOf(doc._security).constructor
|
|
.generateRandomWordArray;
|
|
Object.getPrototypeOf(
|
|
doc._security
|
|
).constructor.generateRandomWordArray = function(bytes) {
|
|
return CryptoJS.lib.WordArray.create(null, bytes);
|
|
};
|
|
});
|
|
|
|
afterAll(function() {
|
|
const doc = new PDFDocument({ userPassword: 'user' });
|
|
Object.getPrototypeOf(
|
|
doc._security
|
|
).constructor.generateRandomWordArray = generateRandomWordArray;
|
|
});
|
|
|
|
test('encryption with RC-40 (PDF 1.3)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.3', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
|
|
test('encryption with RC-128 (PDF 1.4)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.4', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
|
|
test('encryption with RC-128 (PDF 1.5)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.5', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
|
|
test('encryption with AES-128 (PDF 1.6)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.6', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
|
|
test('encryption with AES-128 (PDF 1.7)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.7', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
|
|
test('encryption with AES-256 (PDF 1.7 extension 3)', function() {
|
|
return runDocTest(
|
|
{ pdfVersion: '1.7ext3', userPassword: 'user', ownerPassword: 'owner' },
|
|
function(doc) {
|
|
doc.text('test');
|
|
}
|
|
);
|
|
});
|
|
});
|