66 lines
2.2 KiB
66 lines
2.2 KiB
/* Copyright 2017 Mozilla Foundation |
|
* |
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
* you may not use this file except in compliance with the License. |
|
* You may obtain a copy of the License at |
|
* |
|
* http://www.apache.org/licenses/LICENSE-2.0 |
|
* |
|
* Unless required by applicable law or agreed to in writing, software |
|
* distributed under the License is distributed on an "AS IS" BASIS, |
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
* See the License for the specific language governing permissions and |
|
* limitations under the License. |
|
*/ |
|
'use strict'; |
|
|
|
(function (root, factory) { |
|
if (typeof define === 'function' && define.amd) { |
|
define('pdfjs-test/unit/util_spec', ['exports', |
|
'pdfjs/shared/util'], factory); |
|
} else if (typeof exports !== 'undefined') { |
|
factory(exports, require('../../src/shared/util.js')); |
|
} else { |
|
factory((root.pdfjsTestUnitUtilSpec = {}), root.pdfjsSharedUtil); |
|
} |
|
}(this, function (exports, sharedUtil) { |
|
|
|
var stringToPDFString = sharedUtil.stringToPDFString; |
|
var removeNullCharacters = sharedUtil.removeNullCharacters; |
|
|
|
describe('util', function() { |
|
describe('stringToPDFString', function() { |
|
it('handles ISO Latin 1 strings', function() { |
|
var str = '\x8Dstring\x8E'; |
|
expect(stringToPDFString(str)).toEqual('\u201Cstring\u201D'); |
|
}); |
|
|
|
it('handles UTF-16BE strings', function() { |
|
var str = '\xFE\xFF\x00\x73\x00\x74\x00\x72\x00\x69\x00\x6E\x00\x67'; |
|
expect(stringToPDFString(str)).toEqual('string'); |
|
}); |
|
|
|
it('handles empty strings', function() { |
|
// ISO Latin 1 |
|
var str1 = ''; |
|
expect(stringToPDFString(str1)).toEqual(''); |
|
|
|
// UTF-16BE |
|
var str2 = '\xFE\xFF'; |
|
expect(stringToPDFString(str2)).toEqual(''); |
|
}); |
|
}); |
|
|
|
describe('removeNullCharacters', function() { |
|
it('should not modify string without null characters', function() { |
|
var str = 'string without null chars'; |
|
expect(removeNullCharacters(str)).toEqual('string without null chars'); |
|
}); |
|
|
|
it('should modify string with null characters', function() { |
|
var str = 'string\x00With\x00Null\x00Chars'; |
|
expect(removeNullCharacters(str)).toEqual('stringWithNullChars'); |
|
}); |
|
}); |
|
}); |
|
}));
|
|
|