jsverify rngState 8270695ec83abf412d was a false positive, due to incorrect test logic
This commit is contained in:
parent
8a6415ef5f
commit
9a4018bffe
1 changed files with 16 additions and 7 deletions
|
@ -33,7 +33,16 @@ describe('I18n', function () {
|
||||||
var fakeAlias = $.PrivateBin.I18n._(fake);
|
var fakeAlias = $.PrivateBin.I18n._(fake);
|
||||||
$.PrivateBin.I18n.reset();
|
$.PrivateBin.I18n.reset();
|
||||||
|
|
||||||
messageId = $.PrivateBin.Helper.htmlEntities(messageId);
|
if (messageId.indexOf('<a') === -1) {
|
||||||
|
messageId = $.PrivateBin.Helper.htmlEntities(messageId);
|
||||||
|
} else {
|
||||||
|
messageId = DOMPurify.sanitize(
|
||||||
|
messageId, {
|
||||||
|
ALLOWED_TAGS: ['a', 'br', 'i', 'span'],
|
||||||
|
ALLOWED_ATTR: ['href', 'id']
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
return messageId === result && messageId === alias &&
|
return messageId === result && messageId === alias &&
|
||||||
messageId === pluralResult && messageId === pluralAlias &&
|
messageId === pluralResult && messageId === pluralAlias &&
|
||||||
messageId === fakeResult && messageId === fakeAlias;
|
messageId === fakeResult && messageId === fakeAlias;
|
||||||
|
@ -45,9 +54,9 @@ describe('I18n', function () {
|
||||||
'(small nearray) string',
|
'(small nearray) string',
|
||||||
'string',
|
'string',
|
||||||
function (prefix, params, postfix) {
|
function (prefix, params, postfix) {
|
||||||
prefix = prefix.replace(/%(s|d)/g, '%%');
|
prefix = prefix.replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
||||||
params[0] = params[0].replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
params[0] = params[0].replace(/%(s|d)/g, '%%');
|
||||||
postfix = postfix.replace(/%(s|d)/g, '%%');
|
postfix = postfix.replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
||||||
const translation = $.PrivateBin.Helper.htmlEntities(prefix + params[0] + postfix);
|
const translation = $.PrivateBin.Helper.htmlEntities(prefix + params[0] + postfix);
|
||||||
params.unshift(prefix + '%s' + postfix);
|
params.unshift(prefix + '%s' + postfix);
|
||||||
const result = $.PrivateBin.I18n.translate.apply(this, params);
|
const result = $.PrivateBin.I18n.translate.apply(this, params);
|
||||||
|
@ -86,9 +95,9 @@ describe('I18n', function () {
|
||||||
'(small nearray) string',
|
'(small nearray) string',
|
||||||
'string',
|
'string',
|
||||||
function (prefix, params, postfix) {
|
function (prefix, params, postfix) {
|
||||||
prefix = prefix.replace(/%(s|d)/g, '%%');
|
prefix = prefix.replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
||||||
params[0] = params[0].replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
params[0] = params[0].replace(/%(s|d)/g, '%%');
|
||||||
postfix = postfix.replace(/%(s|d)/g, '%%');
|
postfix = postfix.replace(/%(s|d)/g, '%%').replace(/<a/g, '');
|
||||||
const translation = $('<textarea>').text((prefix + params[0] + postfix)).text();
|
const translation = $('<textarea>').text((prefix + params[0] + postfix)).text();
|
||||||
let args = Array.prototype.slice.call(params);
|
let args = Array.prototype.slice.call(params);
|
||||||
args.unshift(prefix + '%s' + postfix);
|
args.unshift(prefix + '%s' + postfix);
|
||||||
|
|
Loading…
Reference in a new issue