Merge pull request #7934 from porlan1/master
Unit test files as modules
This commit is contained in:
		
						commit
						049d7fa277
					
				
							
								
								
									
										22
									
								
								external/umdutils/verifier.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								external/umdutils/verifier.js
									
									
									
									
										vendored
									
									
								
							| @ -305,9 +305,30 @@ function validateFile(path, name, context) { | |||||||
|         parts.shift(); |         parts.shift(); | ||||||
|       } |       } | ||||||
|       while (parts[0] === '..') { |       while (parts[0] === '..') { | ||||||
|  |         if (base.length === 0) { | ||||||
|  |           error('Invalid relative CommonJS path'); | ||||||
|  |         } | ||||||
|         parts.shift(); |         parts.shift(); | ||||||
|         base.pop(); |         base.pop(); | ||||||
|       } |       } | ||||||
|  |       if (base.length === 0) { | ||||||
|  |         // Reached the project root -- finding prefix matching subpath.
 | ||||||
|  |         for (var prefix in context.paths) { | ||||||
|  |           if (!context.paths.hasOwnProperty(prefix)) { | ||||||
|  |             continue; | ||||||
|  |           } | ||||||
|  |           var prefixPath = context.paths[prefix]; | ||||||
|  |           if (!('./' + parts.join('/') + '/').startsWith(prefixPath + '/')) { | ||||||
|  |             continue; | ||||||
|  |           } | ||||||
|  |           parts.splice(0, prefixPath.split('/').length - 1); | ||||||
|  |           base.push(prefix); | ||||||
|  |           break; | ||||||
|  |         } | ||||||
|  |         if (base.length === 0) { | ||||||
|  |           error('Invalid relative CommonJS path prefix'); | ||||||
|  |         } | ||||||
|  |       } | ||||||
|       if (j !== base.concat(parts).join('/')) { |       if (j !== base.concat(parts).join('/')) { | ||||||
|         error('CommonJS path does not point to right AMD module: ' + |         error('CommonJS path does not point to right AMD module: ' + | ||||||
|           i + ' vs ' + j); |           i + ' vs ' + j); | ||||||
| @ -473,6 +494,7 @@ function validateFiles(paths, options) { | |||||||
|     exports: Object.create(null), |     exports: Object.create(null), | ||||||
|     imports: Object.create(null), |     imports: Object.create(null), | ||||||
|     dependencies: Object.create(null), |     dependencies: Object.create(null), | ||||||
|  |     paths: paths, | ||||||
|     errorCallback: errorCallback, |     errorCallback: errorCallback, | ||||||
|     warnCallback: warnCallback, |     warnCallback: warnCallback, | ||||||
|     infoCallback: infoCallback |     infoCallback: infoCallback | ||||||
|  | |||||||
| @ -541,7 +541,12 @@ gulp.task('lint', function (done) { | |||||||
|     console.log(); |     console.log(); | ||||||
|     console.log('### Checking UMD dependencies'); |     console.log('### Checking UMD dependencies'); | ||||||
|     var umd = require('./external/umdutils/verifier.js'); |     var umd = require('./external/umdutils/verifier.js'); | ||||||
|     if (!umd.validateFiles({'pdfjs': './src', 'pdfjs-web': './web'})) { |     var paths = { | ||||||
|  |       'pdfjs': './src', | ||||||
|  |       'pdfjs-web': './web', | ||||||
|  |       'pdfjs-test': './test' | ||||||
|  |     }; | ||||||
|  |     if (!umd.validateFiles(paths)) { | ||||||
|       done(new Error('UMD check failed.')); |       done(new Error('UMD check failed.')); | ||||||
|       return; |       return; | ||||||
|     } |     } | ||||||
|  | |||||||
| @ -1,10 +1,59 @@ | |||||||
| /* globals isRef, AnnotationFactory, Dict, Name, Ref, AnnotationType, | /* Copyright 2017 Mozilla Foundation | ||||||
|            AnnotationFlag, Annotation, AnnotationBorderStyle, |  * | ||||||
|            AnnotationBorderStyleType, StringStream, Lexer, Parser, |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|            stringToUTF8String, AnnotationFieldFlag, PDFJS, stringToBytes */ |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/annotation_layer_spec', ['exports', | ||||||
|  |            'pdfjs/core/primitives', 'pdfjs/core/annotation', | ||||||
|  |            'pdfjs/core/stream', 'pdfjs/core/parser', | ||||||
|  |            'pdfjs/shared/util', 'pdfjs/display/global'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/primitives.js'), | ||||||
|  |             require('../../src/core/annotation.js'), | ||||||
|  |             require('../../src/core/stream.js'), | ||||||
|  |             require('../../src/core/parser.js'), | ||||||
|  |             require('../../src/shared/util.js'), | ||||||
|  |             require('../../src/display/global.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitAnnotationLayerSpec = {}), | ||||||
|  |              root.pdfjsCorePrimitives, root.pdfjsCoreAnnotation, | ||||||
|  |              root.pdfjsCoreStream, root.pdfjsCoreParser, | ||||||
|  |              root.pdfjsSharedUtil, root.pdfjsDisplayGlobal); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, corePrimitives, coreAnnotation, coreStream, | ||||||
|  |                   coreParser, sharedUtil, displayGlobal) { | ||||||
|  | 
 | ||||||
|  | var Annotation = coreAnnotation.Annotation; | ||||||
|  | var AnnotationBorderStyle = coreAnnotation.AnnotationBorderStyle; | ||||||
|  | var AnnotationFactory = coreAnnotation.AnnotationFactory; | ||||||
|  | var Lexer = coreParser.Lexer; | ||||||
|  | var Parser = coreParser.Parser; | ||||||
|  | var isRef = corePrimitives.isRef; | ||||||
|  | var Dict = corePrimitives.Dict; | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var Ref = corePrimitives.Ref; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | var PDFJS = displayGlobal.PDFJS; | ||||||
|  | var AnnotationType = sharedUtil.AnnotationType; | ||||||
|  | var AnnotationFlag = sharedUtil.AnnotationFlag; | ||||||
|  | var AnnotationBorderStyleType = sharedUtil.AnnotationBorderStyleType; | ||||||
|  | var AnnotationFieldFlag = sharedUtil.AnnotationFieldFlag; | ||||||
|  | var stringToBytes = sharedUtil.stringToBytes; | ||||||
|  | var stringToUTF8String = sharedUtil.stringToUTF8String; | ||||||
|  | 
 | ||||||
| describe('Annotation layer', function() { | describe('Annotation layer', function() { | ||||||
|   function XRefMock(array) { |   function XRefMock(array) { | ||||||
|     this.map = Object.create(null); |     this.map = Object.create(null); | ||||||
| @ -349,9 +398,11 @@ describe('Annotation layer', function() { | |||||||
|       expect(data.annotationType).toEqual(AnnotationType.LINK); |       expect(data.annotationType).toEqual(AnnotationType.LINK); | ||||||
| 
 | 
 | ||||||
|       expect(data.url).toEqual( |       expect(data.url).toEqual( | ||||||
|         new URL(stringToUTF8String('http://www.example.com/üöä')).href); |         new URL(stringToUTF8String( | ||||||
|  |           'http://www.example.com/\xC3\xBC\xC3\xB6\xC3\xA4')).href); | ||||||
|       expect(data.unsafeUrl).toEqual( |       expect(data.unsafeUrl).toEqual( | ||||||
|         stringToUTF8String('http://www.example.com/üöä')); |         stringToUTF8String( | ||||||
|  |           'http://www.example.com/\xC3\xBC\xC3\xB6\xC3\xA4')); | ||||||
|       expect(data.dest).toBeUndefined(); |       expect(data.dest).toBeUndefined(); | ||||||
|     }); |     }); | ||||||
| 
 | 
 | ||||||
| @ -1178,3 +1229,4 @@ describe('Annotation layer', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,9 +1,44 @@ | |||||||
| /* globals PDFJS, createPromiseCapability, PDFDocumentProxy, | /* Copyright 2017 Mozilla Foundation | ||||||
|            InvalidPDFException, MissingPDFException, PasswordResponses, |  * | ||||||
|            PasswordException, PDFPageProxy, StreamType, FontType */ |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/api_spec', ['exports', 'pdfjs/shared/util', | ||||||
|  |            'pdfjs/display/global', 'pdfjs/display/api'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |       factory(exports, require('../../src/shared/util.js'), | ||||||
|  |               require('../../src/display/global.js'), | ||||||
|  |               require('../../src/display/api.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitApiSpec = {}), root.pdfjsSharedUtil, | ||||||
|  |              root.pdfjsDisplayGlobal, root.pdfjsDisplayApi); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, sharedUtil, displayGlobal, displayApi) { | ||||||
|  | 
 | ||||||
|  | var PDFJS = displayGlobal.PDFJS; | ||||||
|  | var createPromiseCapability = sharedUtil.createPromiseCapability; | ||||||
|  | var PDFDocumentProxy = displayApi.PDFDocumentProxy; | ||||||
|  | var InvalidPDFException = sharedUtil.InvalidPDFException; | ||||||
|  | var MissingPDFException = sharedUtil.MissingPDFException; | ||||||
|  | var PasswordResponses = sharedUtil.PasswordResponses; | ||||||
|  | var PasswordException = sharedUtil.PasswordException; | ||||||
|  | var PDFPageProxy = displayApi.PDFPageProxy; | ||||||
|  | var StreamType = sharedUtil.StreamType; | ||||||
|  | var FontType = sharedUtil.FontType; | ||||||
|  | 
 | ||||||
| describe('api', function() { | describe('api', function() { | ||||||
|   var basicApiUrl = new URL('../pdfs/basicapi.pdf', window.location).href; |   var basicApiUrl = new URL('../pdfs/basicapi.pdf', window.location).href; | ||||||
|   var basicApiFileLength = 105779; // bytes
 |   var basicApiFileLength = 105779; // bytes
 | ||||||
| @ -1135,3 +1170,4 @@ describe('api', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,8 +1,41 @@ | |||||||
| /* globals Stream, CFFParser, SEAC_ANALYSIS_ENABLED, CFFIndex, CFFParser, | /* Copyright 2017 Mozilla Foundation | ||||||
|            CFFStrings, CFFCompiler */ |  * | ||||||
| 
 |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/cff_parser_spec', ['exports', | ||||||
|  |            'pdfjs/core/cff_parser', 'pdfjs/core/fonts', | ||||||
|  |            'pdfjs/core/stream'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/cff_parser.js'), | ||||||
|  |             require('../../src/core/fonts.js'), | ||||||
|  |             require('../../src/core/stream.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitCFFParserSpec = {}), root.pdfjsCoreCFFParser, | ||||||
|  |              root.pdfjsCoreFonts, root.pdfjsCoreStream); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreCFFParser, coreFonts, coreStream) { | ||||||
|  | 
 | ||||||
|  | var CFFParser = coreCFFParser.CFFParser; | ||||||
|  | var CFFIndex = coreCFFParser.CFFIndex; | ||||||
|  | var CFFStrings = coreCFFParser.CFFStrings; | ||||||
|  | var CFFCompiler = coreCFFParser.CFFCompiler; | ||||||
|  | var SEAC_ANALYSIS_ENABLED = coreFonts.SEAC_ANALYSIS_ENABLED; | ||||||
|  | var Stream = coreStream.Stream; | ||||||
|  | 
 | ||||||
| describe('CFFParser', function() { | describe('CFFParser', function() { | ||||||
|   function createWithNullProto(obj) { |   function createWithNullProto(obj) { | ||||||
|     var result = Object.create(null); |     var result = Object.create(null); | ||||||
| @ -355,3 +388,4 @@ describe('CFFCompiler', function() { | |||||||
| 
 | 
 | ||||||
|   // TODO a lot more compiler tests
 |   // TODO a lot more compiler tests
 | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,39 @@ | |||||||
| /* globals StringStream, CMapFactory, CMap, IdentityCMap, Name */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/cmap_spec', ['exports', 'pdfjs/core/cmap', | ||||||
|  |            'pdfjs/core/primitives', 'pdfjs/core/stream'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |       factory(exports, require('../../src/core/cmap.js'), | ||||||
|  |               require('../../src/core/primitives.js'), | ||||||
|  |               require('../../src/core/stream.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitCMapSpec = {}), root.pdfjsCoreCMap, | ||||||
|  |              root.pdfjsCorePrimitives, root.pdfjsCoreStream); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreCMap, corePrimitives, coreStream) { | ||||||
|  | 
 | ||||||
|  | var CMapFactory = coreCMap.CMapFactory; | ||||||
|  | var CMap = coreCMap.CMap; | ||||||
|  | var IdentityCMap = coreCMap.IdentityCMap; | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | 
 | ||||||
| var cMapUrl = '../../external/bcmaps/'; | var cMapUrl = '../../external/bcmaps/'; | ||||||
| var cMapPacked = true; | var cMapPacked = true; | ||||||
| 
 | 
 | ||||||
| @ -187,3 +219,4 @@ describe('cmap', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,10 +1,49 @@ | |||||||
| /* globals stringToBytes, calculateMD5, ARCFourCipher, calculateSHA256, | /* Copyright 2017 Mozilla Foundation | ||||||
|            calculateSHA384, calculateSHA512, AES128Cipher, AES256Cipher, PDF17, |  * | ||||||
|            PDF20, Dict, CipherTransformFactory, PasswordException, |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|            PasswordResponses, Name */ |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/crypto_spec', ['exports', 'pdfjs/core/crypto', | ||||||
|  |            'pdfjs/core/primitives', 'pdfjs/shared/util'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/crypto.js'), | ||||||
|  |             require('../../src/core/primitives.js'), | ||||||
|  |             require('../../src/shared/util.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitCryptoSpec = {}), root.pdfjsCoreCrypto, | ||||||
|  |              root.pdfjsCorePrimitives, root.pdfjsSharedUtil); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreCrypto, corePrimitives, sharedUtil) { | ||||||
|  | 
 | ||||||
|  | var calculateMD5 = coreCrypto.calculateMD5; | ||||||
|  | var ARCFourCipher = coreCrypto.ARCFourCipher; | ||||||
|  | var calculateSHA256 = coreCrypto.calculateSHA256; | ||||||
|  | var calculateSHA384 = coreCrypto.calculateSHA384; | ||||||
|  | var calculateSHA512 = coreCrypto.calculateSHA512; | ||||||
|  | var AES128Cipher = coreCrypto.AES128Cipher; | ||||||
|  | var AES256Cipher = coreCrypto.AES256Cipher; | ||||||
|  | var PDF17 = coreCrypto.PDF17; | ||||||
|  | var PDF20 = coreCrypto.PDF20; | ||||||
|  | var CipherTransformFactory = coreCrypto.CipherTransformFactory; | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var Dict = corePrimitives.Dict; | ||||||
|  | var stringToBytes = sharedUtil.stringToBytes; | ||||||
|  | var PasswordException = sharedUtil.PasswordException; | ||||||
|  | var PasswordResponses = sharedUtil.PasswordResponses; | ||||||
|  | 
 | ||||||
| describe('crypto', function() { | describe('crypto', function() { | ||||||
|   function hex2binary(s) { |   function hex2binary(s) { | ||||||
|     var digits = '0123456789ABCDEF'; |     var digits = '0123456789ABCDEF'; | ||||||
| @ -669,3 +708,4 @@ describe('CipherTransformFactory', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,37 @@ | |||||||
| /* globals getFilenameFromUrl, PDFJS, LinkTarget, isExternalLinkTargetSet */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/dom_utils_spec', ['exports', | ||||||
|  |            'pdfjs/display/dom_utils', 'pdfjs/display/global'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/display/dom_utils.js'), | ||||||
|  |             require('../../src/display/global.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitDOMUtilsSpec = {}), root.pdfjsDisplayDOMUtils, | ||||||
|  |              root.pdfjsDisplayGlobal); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, displayDOMUtils, displayGlobal) { | ||||||
|  | 
 | ||||||
|  | var PDFJS = displayGlobal.PDFJS; | ||||||
|  | var getFilenameFromUrl = displayDOMUtils.getFilenameFromUrl; | ||||||
|  | var LinkTarget = displayDOMUtils.LinkTarget; | ||||||
|  | var isExternalLinkTargetSet = displayDOMUtils.isExternalLinkTargetSet; | ||||||
|  | 
 | ||||||
| describe('dom_utils', function() { | describe('dom_utils', function() { | ||||||
|   describe('getFilenameFromUrl', function() { |   describe('getFilenameFromUrl', function() { | ||||||
|     it('should get the filename from an absolute URL', function() { |     it('should get the filename from an absolute URL', function() { | ||||||
| @ -52,3 +82,4 @@ describe('dom_utils', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,8 +1,48 @@ | |||||||
| /* globals OperatorList, WorkerTask, PartialEvaluator, StringStream, OPS, Dict, | /* Copyright 2017 Mozilla Foundation | ||||||
|            Name, Stream */ |  * | ||||||
| 
 |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/evaluator_spec', ['exports', | ||||||
|  |            'pdfjs/core/evaluator', 'pdfjs/core/primitives', | ||||||
|  |            'pdfjs/core/stream', 'pdfjs/core/worker', | ||||||
|  |            'pdfjs/shared/util'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/evaluator.js'), | ||||||
|  |             require('../../src/core/primitives.js'), | ||||||
|  |             require('../../src/core/stream.js'), | ||||||
|  |             require('../../src/core/worker.js'), | ||||||
|  |             require('../../src/shared/util.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitEvaluatorSpec = {}), root.pdfjsCoreEvaluator, | ||||||
|  |              root.pdfjsCorePrimitives, root.pdfjsCoreStream, | ||||||
|  |              root.pdfjsCoreWorker, root.pdfjsSharedUtil); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreEvaluator, corePrimitives, coreStream, | ||||||
|  |                   coreWorker, sharedUtil) { | ||||||
|  | 
 | ||||||
|  | var OperatorList = coreEvaluator.OperatorList; | ||||||
|  | var PartialEvaluator = coreEvaluator.PartialEvaluator; | ||||||
|  | var Dict = corePrimitives.Dict; | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var Stream = coreStream.Stream; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | var WorkerTask = coreWorker.WorkerTask; | ||||||
|  | var OPS = sharedUtil.OPS; | ||||||
|  | 
 | ||||||
| describe('evaluator', function() { | describe('evaluator', function() { | ||||||
|   function XrefMock(queue) { |   function XrefMock(queue) { | ||||||
|     this.queue = queue || []; |     this.queue = queue || []; | ||||||
| @ -321,3 +361,4 @@ describe('evaluator', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,32 @@ | |||||||
| /* globals checkProblematicCharRanges */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/fonts_spec', ['exports', 'pdfjs/core/fonts'], | ||||||
|  |            factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/fonts.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitFontsSpec = {}), root.pdfjsCoreFonts); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreFonts) { | ||||||
|  | 
 | ||||||
|  | var checkProblematicCharRanges = coreFonts.checkProblematicCharRanges; | ||||||
|  | 
 | ||||||
| describe('Fonts', function() { | describe('Fonts', function() { | ||||||
|   it('checkProblematicCharRanges', function() { |   it('checkProblematicCharRanges', function() { | ||||||
|     var EXPECTED_PERCENTAGE = 45; |     var EXPECTED_PERCENTAGE = 45; | ||||||
| @ -10,3 +35,4 @@ describe('Fonts', function() { | |||||||
|     expect(result.percentage).toBeLessThan(EXPECTED_PERCENTAGE); |     expect(result.percentage).toBeLessThan(EXPECTED_PERCENTAGE); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,8 +1,43 @@ | |||||||
| /* globals isArray, StringStream, PostScriptParser, PostScriptLexer, | /* Copyright 2017 Mozilla Foundation | ||||||
|            PostScriptEvaluator, PostScriptCompiler */ |  * | ||||||
| 
 |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/function_spec', ['exports', | ||||||
|  |            'pdfjs/core/function', 'pdfjs/core/ps_parser', | ||||||
|  |            'pdfjs/core/stream', 'pdfjs/shared/util'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/function.js'), | ||||||
|  |             require('../../src/core/ps_parser.js'), | ||||||
|  |             require('../../src/core/stream.js'), | ||||||
|  |             require('../../src/shared/util.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitFunctionSpec = {}), | ||||||
|  |              root.pdfjsCoreFunction, root.pdfjsCorePsParser, | ||||||
|  |              root.pdfjsCoreStream, root.pdfjsSharedUtil); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreFunction, corePsParser, coreStream, sharedUtil) { | ||||||
|  | 
 | ||||||
|  | var PostScriptEvaluator = coreFunction.PostScriptEvaluator; | ||||||
|  | var PostScriptCompiler = coreFunction.PostScriptCompiler; | ||||||
|  | var PostScriptParser = corePsParser.PostScriptParser; | ||||||
|  | var PostScriptLexer = corePsParser.PostScriptLexer; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | var isArray = sharedUtil.isArray; | ||||||
|  | 
 | ||||||
| describe('function', function() { | describe('function', function() { | ||||||
|   beforeEach(function() { |   beforeEach(function() { | ||||||
|     jasmine.addMatchers({ |     jasmine.addMatchers({ | ||||||
| @ -528,3 +563,4 @@ describe('function', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| /* Copyright 2016 Mozilla Foundation | /* Copyright 2017 Mozilla Foundation | ||||||
|  * |  * | ||||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  * you may not use this file except in compliance with the License. |  * you may not use this file except in compliance with the License. | ||||||
| @ -43,58 +43,28 @@ | |||||||
| var pdfjsLibs; | var pdfjsLibs; | ||||||
| 
 | 
 | ||||||
| function initializePDFJS(callback) { | function initializePDFJS(callback) { | ||||||
|   require.config({paths: {'pdfjs': '../../src', 'pdfjs-web': '../../web'}}); |   require.config({paths: {'pdfjs': '../../src', 'pdfjs-web': '../../web', | ||||||
|   require(['pdfjs/shared/util', 'pdfjs/display/global', 'pdfjs/core/primitives', |                  'pdfjs-test': '..'}}); | ||||||
|       'pdfjs/core/annotation', 'pdfjs/core/crypto', 'pdfjs/core/stream', |   require(['pdfjs/display/global', 'pdfjs-test/unit/annotation_layer_spec', | ||||||
|       'pdfjs/core/fonts', 'pdfjs/core/ps_parser', 'pdfjs/core/function', |            'pdfjs-test/unit/api_spec', 'pdfjs-test/unit/cff_parser_spec', | ||||||
|       'pdfjs/core/parser', 'pdfjs/core/evaluator', 'pdfjs/core/cmap', |            'pdfjs-test/unit/cmap_spec', 'pdfjs-test/unit/crypto_spec', | ||||||
|       'pdfjs/core/worker', 'pdfjs/core/network', 'pdfjs/core/type1_parser', |            'pdfjs-test/unit/dom_utils_spec', 'pdfjs-test/unit/evaluator_spec', | ||||||
|       'pdfjs/core/cff_parser', 'pdfjs/core/murmurhash3', 'pdfjs/display/api', |            'pdfjs-test/unit/fonts_spec', 'pdfjs-test/unit/function_spec', | ||||||
|       'pdfjs/display/metadata', 'pdfjs/display/dom_utils', 'pdfjs-web/ui_utils', |            'pdfjs-test/unit/metadata_spec', 'pdfjs-test/unit/murmurhash3_spec', | ||||||
|       'pdfjs/core/unicode', 'pdfjs/core/glyphlist'], |            'pdfjs-test/unit/network_spec', 'pdfjs-test/unit/parser_spec', | ||||||
|     function (sharedUtil, displayGlobal, corePrimitives, coreAnnotation, |            'pdfjs-test/unit/primitives_spec', 'pdfjs-test/unit/stream_spec', | ||||||
|               coreCrypto, coreStream, coreFonts, corePsParser, coreFunction, |            'pdfjs-test/unit/type1_parser_spec', 'pdfjs-test/unit/ui_utils_spec', | ||||||
|               coreParser, coreEvaluator, coreCMap, coreWorker, coreNetwork, |            'pdfjs-test/unit/unicode_spec', 'pdfjs-test/unit/util_spec'], | ||||||
|               coreType1Parser, coreCFFParser, coreMurmurHash3, displayAPI, |     function (displayGlobal, testUnitAnnotationLayerSpec, | ||||||
|               displayMetadata, displayDOMUtils, webUIUtils, coreUnicode, |               testUnitApiSpec, testUnitCFFParserSpec, | ||||||
|               coreGlyphList) { |               testUnitCMapSpec, testUnitCryptoSpec, | ||||||
| 
 |               testUnitDOMUtilsSpec, testUnitEvaluatorSpec, | ||||||
|       pdfjsLibs = { |               testUnitFontsSpec, testUnitFunctionSpec, | ||||||
|         sharedUtil: sharedUtil, |               testUnitMetadataSpec, testUnitMurmurHash3Spec, | ||||||
|         displayGlobal: displayGlobal, |               testUnitNetworkSpec, testUnitParserSpec, | ||||||
|         corePrimitives: corePrimitives, |               testUnitPrimitivesSpec, testUnitStreamSpec, | ||||||
|         coreAnnotation: coreAnnotation, |               testUnitType1ParserSpec, testUnitUiUtilsSpec, | ||||||
|         coreCrypto: coreCrypto, |               testUnitUnicodeSpec, testUnitUtilSpec) { | ||||||
|         coreStream: coreStream, |  | ||||||
|         coreFonts: coreFonts, |  | ||||||
|         corePsParser: corePsParser, |  | ||||||
|         coreFunction: coreFunction, |  | ||||||
|         coreParser: coreParser, |  | ||||||
|         coreEvaluator: coreEvaluator, |  | ||||||
|         coreCMap: coreCMap, |  | ||||||
|         coreWorker: coreWorker, |  | ||||||
|         coreNetwork: coreNetwork, |  | ||||||
|         coreType1Parser: coreType1Parser, |  | ||||||
|         coreCFFParser: coreCFFParser, |  | ||||||
|         coreMurmurHash3: coreMurmurHash3, |  | ||||||
|         displayAPI: displayAPI, |  | ||||||
|         displayMetadata: displayMetadata, |  | ||||||
|         displayDOMUtils: displayDOMUtils, |  | ||||||
|         webUIUtils: webUIUtils, |  | ||||||
|         coreUnicode: coreUnicode, |  | ||||||
|         coreGlyphList: coreGlyphList, |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       // Expose all loaded internal exported members to global scope.
 |  | ||||||
|       Object.keys(pdfjsLibs).forEach(function (libName) { |  | ||||||
|         var lib = pdfjsLibs[libName]; |  | ||||||
|         Object.keys(lib).forEach(function (name) { |  | ||||||
|           if (Object.getOwnPropertyDescriptor(window, name)) { |  | ||||||
|             return; // ignoring if already set
 |  | ||||||
|           } |  | ||||||
|           window[name] = lib[name]; |  | ||||||
|         }); |  | ||||||
|       }); |  | ||||||
| 
 | 
 | ||||||
|       // Configure the worker.
 |       // Configure the worker.
 | ||||||
|       displayGlobal.PDFJS.workerSrc = '../../src/worker_loader.js'; |       displayGlobal.PDFJS.workerSrc = '../../src/worker_loader.js'; | ||||||
|  | |||||||
| @ -1,7 +1,32 @@ | |||||||
| /* globals Metadata */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/metadata_spec', ['exports', | ||||||
|  |            'pdfjs/display/metadata'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/display/metadata.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitMetadataSpec = {}), root.pdfjsDisplayMetadata); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, displayMetadata) { | ||||||
|  | 
 | ||||||
|  | var Metadata = displayMetadata.Metadata; | ||||||
|  | 
 | ||||||
| describe('metadata', function() { | describe('metadata', function() { | ||||||
|   describe('incorrect_xmp', function() { |   describe('incorrect_xmp', function() { | ||||||
|     it('should fix the incorrect XMP data', function() { |     it('should fix the incorrect XMP data', function() { | ||||||
| @ -15,3 +40,4 @@ describe('metadata', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,33 @@ | |||||||
| /* globals MurmurHash3_64 */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/murmurhash3_spec', ['exports', | ||||||
|  |            'pdfjs/core/murmurhash3'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/murmurhash3.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitMurmurHash3Spec = {}), | ||||||
|  |              root.pdfjsCoreMurmurHash3); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreMurmurHash3) { | ||||||
|  | 
 | ||||||
|  | var MurmurHash3_64 = coreMurmurHash3.MurmurHash3_64; | ||||||
|  | 
 | ||||||
| describe('MurmurHash3_64', function() { | describe('MurmurHash3_64', function() { | ||||||
|   it('instantiates without seed', function() { |   it('instantiates without seed', function() { | ||||||
|     var hash = new MurmurHash3_64(); |     var hash = new MurmurHash3_64(); | ||||||
| @ -50,3 +76,4 @@ describe('MurmurHash3_64', function() { | |||||||
|     expect(hexdigest1).not.toEqual(hexdigest2); |     expect(hexdigest1).not.toEqual(hexdigest2); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,32 @@ | |||||||
| /* globals PDFNetworkStream */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/network_spec', ['exports', 'pdfjs/core/network'], | ||||||
|  |            factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/network.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitNetworkSpec = {}), root.pdfjsCoreNetwork); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreNetwork) { | ||||||
|  | 
 | ||||||
|  | var PDFNetworkStream = coreNetwork.PDFNetworkStream; | ||||||
|  | 
 | ||||||
| describe('network', function() { | describe('network', function() { | ||||||
|   var pdf1 = new URL('../pdfs/tracemonkey.pdf', window.location).href; |   var pdf1 = new URL('../pdfs/tracemonkey.pdf', window.location).href; | ||||||
|   var pdf1Length = 1016315; |   var pdf1Length = 1016315; | ||||||
| @ -162,3 +187,4 @@ describe('network', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,38 @@ | |||||||
| /* globals StringStream, Lexer, Name, Linearization */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/parser_spec', ['exports', 'pdfjs/core/parser', | ||||||
|  |            'pdfjs/core/primitives', 'pdfjs/core/stream'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/parser.js'), | ||||||
|  |             require('../../src/core/primitives.js'), | ||||||
|  |             require('../../src/core/stream.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitParserSpec = {}), root.pdfjsCoreParser, | ||||||
|  |              root.pdfjsCorePrimitives, root.pdfjsCoreStream); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreParser, corePrimitives, coreStream) { | ||||||
|  | 
 | ||||||
|  | var Lexer = coreParser.Lexer; | ||||||
|  | var Linearization = coreParser.Linearization; | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | 
 | ||||||
| describe('parser', function() { | describe('parser', function() { | ||||||
|   describe('Lexer', function() { |   describe('Lexer', function() { | ||||||
|     it('should stop parsing numbers at the end of stream', function() { |     it('should stop parsing numbers at the end of stream', function() { | ||||||
| @ -263,3 +294,4 @@ describe('parser', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,8 +1,41 @@ | |||||||
| /* globals expect, it, describe, beforeAll, afterAll, jasmine, Name, Dict, Ref, | /* Copyright 2017 Mozilla Foundation | ||||||
|            RefSet, Cmd, isName, isCmd, isDict, isRef, isRefsEqual */ |  * | ||||||
| 
 |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/primitives_spec', ['exports', | ||||||
|  |            'pdfjs/core/primitives'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/primitives.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitPrimitivesSpec = {}), root.pdfjsCorePrimitives); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, corePrimitives) { | ||||||
|  | 
 | ||||||
|  | var Name = corePrimitives.Name; | ||||||
|  | var Dict = corePrimitives.Dict; | ||||||
|  | var Ref = corePrimitives.Ref; | ||||||
|  | var RefSet = corePrimitives.RefSet; | ||||||
|  | var Cmd = corePrimitives.Cmd; | ||||||
|  | var isName = corePrimitives.isName; | ||||||
|  | var isCmd = corePrimitives.isCmd; | ||||||
|  | var isDict = corePrimitives.isDict; | ||||||
|  | var isRef = corePrimitives.isRef; | ||||||
|  | var isRefsEqual = corePrimitives.isRefsEqual; | ||||||
|  | 
 | ||||||
| describe('primitives', function() { | describe('primitives', function() { | ||||||
|   function XRefMock(array) { |   function XRefMock(array) { | ||||||
|     this.map = Object.create(null); |     this.map = Object.create(null); | ||||||
| @ -371,3 +404,4 @@ describe('primitives', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,36 @@ | |||||||
| /* globals Stream, PredictorStream, Dict */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/stream_spec', ['exports', | ||||||
|  |            'pdfjs/core/primitives', 'pdfjs/core/stream'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/primitives.js'), | ||||||
|  |             require('../../src/core/stream.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitStreamSpec = {}), root.pdfjsCorePrimitives, | ||||||
|  |              root.pdfjsCoreStream); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, corePrimitives, coreStream) { | ||||||
|  | 
 | ||||||
|  | var Dict = corePrimitives.Dict; | ||||||
|  | var Stream = coreStream.Stream; | ||||||
|  | var PredictorStream = coreStream.PredictorStream; | ||||||
|  | 
 | ||||||
| describe('stream', function() { | describe('stream', function() { | ||||||
|   beforeEach(function() { |   beforeEach(function() { | ||||||
|     jasmine.addMatchers({ |     jasmine.addMatchers({ | ||||||
| @ -48,3 +77,4 @@ describe('stream', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,38 @@ | |||||||
| /* globals StringStream, Type1Parser, SEAC_ANALYSIS_ENABLED */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/type1_parser_spec', ['exports', | ||||||
|  |            'pdfjs/core/fonts', 'pdfjs/core/stream', 'pdfjs/core/type1_parser'], | ||||||
|  |            factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/fonts.js'), | ||||||
|  |             require('../../src/core/stream.js'), | ||||||
|  |             require('../../src/core/type1_parser.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitType1ParserSpec = {}), root.pdfjsCoreFonts, | ||||||
|  |              root.pdfjsCoreStream, root.pdfjsCoreType1Parser); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreFonts, coreStream, coreType1Parser) { | ||||||
|  | 
 | ||||||
|  | var SEAC_ANALYSIS_ENABLED = coreFonts.SEAC_ANALYSIS_ENABLED; | ||||||
|  | var StringStream = coreStream.StringStream; | ||||||
|  | var Type1Parser = coreType1Parser.Type1Parser; | ||||||
|  | 
 | ||||||
| describe('Type1Parser', function() { | describe('Type1Parser', function() { | ||||||
|   it('splits tokens', function() { |   it('splits tokens', function() { | ||||||
|     var stream = new StringStream('/BlueValues[-17 0]noaccess def'); |     var stream = new StringStream('/BlueValues[-17 0]noaccess def'); | ||||||
| @ -101,3 +132,4 @@ describe('Type1Parser', function() { | |||||||
|     expect(props.builtInEncoding[33]).toEqual('arrowright'); |     expect(props.builtInEncoding[33]).toEqual('arrowright'); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,7 +1,33 @@ | |||||||
| /* globals expect, it, describe, binarySearchFirstItem, EventBus */ | /* 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/ui_utils_spec', ['exports', | ||||||
|  |            'pdfjs-web/ui_utils'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../web/ui_utils.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitUiUtilsSpec = {}), root.pdfjsWebUiUtils); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, webUiUtils) { | ||||||
|  | 
 | ||||||
|  | var binarySearchFirstItem = webUiUtils.binarySearchFirstItem; | ||||||
|  | var EventBus = webUiUtils.EventBus; | ||||||
|  | 
 | ||||||
| describe('ui_utils', function() { | describe('ui_utils', function() { | ||||||
|   describe('binary search', function() { |   describe('binary search', function() { | ||||||
|     function isTrue(boolean) { |     function isTrue(boolean) { | ||||||
| @ -117,3 +143,4 @@ describe('ui_utils', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -1,9 +1,40 @@ | |||||||
| /* globals mapSpecialUnicodeValues, getUnicodeForGlyph, getGlyphsUnicode, | /* Copyright 2017 Mozilla Foundation | ||||||
|            getDingbatsGlyphsUnicode, getUnicodeRangeFor, getNormalizedUnicodes, |  * | ||||||
|            reverseIfRtl */ |  * 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'; | 'use strict'; | ||||||
| 
 | 
 | ||||||
|  | (function (root, factory) { | ||||||
|  |   if (typeof define === 'function' && define.amd) { | ||||||
|  |     define('pdfjs-test/unit/unicode_spec', ['exports', | ||||||
|  |            'pdfjs/core/glyphlist', 'pdfjs/core/unicode'], factory); | ||||||
|  |   } else if (typeof exports !== 'undefined') { | ||||||
|  |     factory(exports, require('../../src/core/glyphlist.js'), | ||||||
|  |             require('../../src/core/unicode.js')); | ||||||
|  |   } else { | ||||||
|  |     factory((root.pdfjsTestUnitUnicodeSpec = {}), | ||||||
|  |              root.pdfjsCoreGlyphList, root.pdfjsCoreUnicode); | ||||||
|  |   } | ||||||
|  | }(this, function (exports, coreGlyphList, coreUnicode) { | ||||||
|  | 
 | ||||||
|  | var getGlyphsUnicode = coreGlyphList.getGlyphsUnicode; | ||||||
|  | var getDingbatsGlyphsUnicode = coreGlyphList.getDingbatsGlyphsUnicode; | ||||||
|  | var mapSpecialUnicodeValues = coreUnicode.mapSpecialUnicodeValues; | ||||||
|  | var getUnicodeForGlyph = coreUnicode.getUnicodeForGlyph; | ||||||
|  | var getUnicodeRangeFor = coreUnicode.getUnicodeRangeFor; | ||||||
|  | var getNormalizedUnicodes = coreUnicode.getNormalizedUnicodes; | ||||||
|  | var reverseIfRtl = coreUnicode.reverseIfRtl; | ||||||
|  | 
 | ||||||
| describe('unicode', function () { | describe('unicode', function () { | ||||||
|   describe('mapSpecialUnicodeValues', function () { |   describe('mapSpecialUnicodeValues', function () { | ||||||
|     it('should not re-map normal Unicode values', function () { |     it('should not re-map normal Unicode values', function () { | ||||||
| @ -128,3 +159,4 @@ describe('unicode', function () { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
| @ -10,27 +10,6 @@ | |||||||
|   <script src="../../node_modules/jasmine-core/lib/jasmine-core/jasmine-html.js"></script> |   <script src="../../node_modules/jasmine-core/lib/jasmine-core/jasmine-html.js"></script> | ||||||
|   <script src="testreporter.js"></script> |   <script src="testreporter.js"></script> | ||||||
|   <script src="jasmine-boot.js"></script> |   <script src="jasmine-boot.js"></script> | ||||||
| 
 |  | ||||||
|   <!-- include spec files here... --> |  | ||||||
|   <script src="primitives_spec.js"></script> |  | ||||||
|   <script src="cff_parser_spec.js"></script> |  | ||||||
|   <script src="type1_parser_spec.js"></script> |  | ||||||
|   <script src="fonts_spec.js"></script> |  | ||||||
|   <script src="unicode_spec.js"></script> |  | ||||||
|   <script src="function_spec.js"></script> |  | ||||||
|   <script src="crypto_spec.js"></script> |  | ||||||
|   <script src="evaluator_spec.js"></script> |  | ||||||
|   <script src="stream_spec.js"></script> |  | ||||||
|   <script src="parser_spec.js"></script> |  | ||||||
|   <script src="api_spec.js"></script> |  | ||||||
|   <script src="metadata_spec.js"></script> |  | ||||||
|   <script src="ui_utils_spec.js"></script> |  | ||||||
|   <script src="util_spec.js"></script> |  | ||||||
|   <script src="cmap_spec.js"></script> |  | ||||||
|   <script src="annotation_layer_spec.js"></script> |  | ||||||
|   <script src="network_spec.js"></script> |  | ||||||
|   <script src="dom_utils_spec.js"></script> |  | ||||||
|   <script src="murmurhash3_spec.js"></script> |  | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
| </body> | </body> | ||||||
|  | |||||||
| @ -1,7 +1,33 @@ | |||||||
| /* globals stringToPDFString, removeNullCharacters */ | /* 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'; | '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('util', function() { | ||||||
|   describe('stringToPDFString', function() { |   describe('stringToPDFString', function() { | ||||||
|     it('handles ISO Latin 1 strings', function() { |     it('handles ISO Latin 1 strings', function() { | ||||||
| @ -37,3 +63,4 @@ describe('util', function() { | |||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | })); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user