Browse Source

Add tests and documentation for the annotation border style class

This patch adds:
- Unit tests for the annotation border style class
- Regression test (self-made) for the annotation border style class
- Documentation generation using JSDoc
Tim van der Meij 10 years ago
parent
commit
6007a57291
  1. 3
      make.js
  2. 1
      test/pdfs/.gitignore
  3. BIN
      test/pdfs/annotation-border-styles.pdf
  4. 6
      test/test_manifest.json
  5. 84
      test/unit/annotation_layer_spec.js
  6. 1
      test/unit/unit_test.html

3
make.js

@ -199,7 +199,8 @@ target.jsdoc = function() { @@ -199,7 +199,8 @@ target.jsdoc = function() {
var JSDOC_FILES = [
'src/doc_helper.js',
'src/display/api.js',
'src/shared/util.js'
'src/shared/util.js',
'src/core/annotation.js'
];
if (test('-d', JSDOC_DIR)) {

1
test/pdfs/.gitignore vendored

@ -130,6 +130,7 @@ @@ -130,6 +130,7 @@
!issue5334.pdf
!issue5549.pdf
!issue5475.pdf
!annotation-border-styles.pdf
!issue5481.pdf
!issue5567.pdf
!issue5701.pdf

BIN
test/pdfs/annotation-border-styles.pdf

Binary file not shown.

6
test/test_manifest.json

@ -2201,6 +2201,12 @@ @@ -2201,6 +2201,12 @@
"type": "eq",
"about": "Free image obtained from www.unsplash.com"
},
{ "id": "annotation-border-styles.pdf",
"file": "pdfs/annotation-border-styles.pdf",
"md5": "22930fc09c7386e1131b14d936e554af",
"rounds": 1,
"type": "eq"
},
{ "id": "issue5481.pdf",
"file": "pdfs/issue5481.pdf",
"md5": "cf00bd25b15b7e23542b48a626585c36",

84
test/unit/annotation_layer_spec.js

@ -0,0 +1,84 @@ @@ -0,0 +1,84 @@
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
/* globals expect, it, describe, Dict, AnnotationBorderStyle,
AnnotationBorderStyleType */
'use strict';
describe('Annotation layer', function() {
describe('AnnotationBorderStyle', function() {
it('should set and get a valid width', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setWidth(3);
expect(borderStyle.width).toEqual(3);
});
it('should not set and get an invalid width', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setWidth('three');
expect(borderStyle.width).toEqual(1);
});
it('should set and get a valid style', function() {
var borderStyle = new AnnotationBorderStyle();
var dict = new Dict();
dict.name = 'D';
borderStyle.setStyle(dict);
expect(borderStyle.style).toEqual(AnnotationBorderStyleType.DASHED);
});
it('should not set and get an invalid style', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setStyle('Dashed');
expect(borderStyle.style).toEqual(AnnotationBorderStyleType.SOLID);
});
it('should set and get a valid dash array', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setDashArray([1, 2, 3]);
expect(borderStyle.dashArray).toEqual([1, 2, 3]);
});
it('should not set and get an invalid dash array', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setDashArray([0, 0]);
expect(borderStyle.dashArray).toEqual([3]);
});
it('should set and get a valid horizontal corner radius', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setHorizontalCornerRadius(3);
expect(borderStyle.horizontalCornerRadius).toEqual(3);
});
it('should not set and get an invalid horizontal corner radius',
function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setHorizontalCornerRadius('three');
expect(borderStyle.horizontalCornerRadius).toEqual(0);
});
it('should set and get a valid vertical corner radius', function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setVerticalCornerRadius(3);
expect(borderStyle.verticalCornerRadius).toEqual(3);
});
it('should not set and get an invalid horizontal corner radius',
function() {
var borderStyle = new AnnotationBorderStyle();
borderStyle.setVerticalCornerRadius('three');
expect(borderStyle.verticalCornerRadius).toEqual(0);
});
});
});

1
test/unit/unit_test.html

@ -56,6 +56,7 @@ @@ -56,6 +56,7 @@
<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>
'use strict';

Loading…
Cancel
Save