summaryrefslogtreecommitdiff
path: root/testing/resources/javascript/document_props.in
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-02-13 12:08:44 -0800
committerTom Sepez <tsepez@chromium.org>2015-02-13 12:08:44 -0800
commit58985096a7852263df68e87d9bfc335a3e2759bf (patch)
treeec32924d809dcb02f0c233b4fe21b5b2e2c469b3 /testing/resources/javascript/document_props.in
parent254360730190cc6d6e3de325ee101948b78c1e32 (diff)
downloadpdfium-chromium/2312.tar.xz
Along the way, I rename some functions in pdfium_test.cc to match the style guide's FunctionName() syntax, adding "Example" to make them obviously different from the PDF internal code with similar name fragments. The purpose is to at least have some coverage for the setter/getter macros from JS_Define.h R=thestig@chromium.org Review URL: https://codereview.chromium.org/928573002
Diffstat (limited to 'testing/resources/javascript/document_props.in')
-rw-r--r--testing/resources/javascript/document_props.in143
1 files changed, 143 insertions, 0 deletions
diff --git a/testing/resources/javascript/document_props.in b/testing/resources/javascript/document_props.in
new file mode 100644
index 0000000000..8ab7e3d566
--- /dev/null
+++ b/testing/resources/javascript/document_props.in
@@ -0,0 +1,143 @@
+{{header}}
+{{object 1 0}} <<
+ /Type /Catalog
+ /Pages 2 0 R
+ /OpenAction 10 0 R
+>>
+endobj
+{{object 2 0}} <<
+ /Type /Pages
+ /Count 4
+ /Kids [
+ 3 0 R
+ 4 0 R
+ 5 0 R
+ 6 0 R
+ ]
+>>
+endobj
+% Page number 0.
+{{object 3 0}} <<
+ /Type /Page
+ /Parent 2 0 R
+ /Resources <<
+ /Font <</F1 15 0 R>>
+ >>
+ /MediaBox [0 0 612 792]
+>>
+% Page number 1.
+{{object 4 0}} <<
+ /Type /Page
+ /Parent 2 0 R
+ /Resources <<
+ /Font <</F1 15 0 R>>
+ >>
+ /MediaBox [0 0 612 792]
+>>
+% Page number 2.
+{{object 5 0}} <<
+ /Type /Page
+ /Parent 2 0 R
+ /Resources <<
+ /Font <</F1 15 0 R>>
+ >>
+ /MediaBox [0 0 612 792]
+>>
+% Page number 3.
+{{object 6 0}} <<
+ /Type /Page
+ /Parent 2 0 R
+ /Resources <<
+ /Font <</F1 15 0 R>>
+ >>
+ /MediaBox [0 0 612 792]
+>>
+
+% Info
+{{object 9 0}} <<
+ /Author (Joe Random Author)
+ /Creator (Joe Random Creator)
+>>
+endobj
+% OpenAction action
+{{object 10 0}} <<
+ /Type /Action
+ /S /JavaScript
+ /JS 11 0 R
+>>
+endobj
+% JS program to exexute
+{{object 11 0}} <<
+>>
+stream
+var document_props = [
+ 'ADBE',
+ 'author',
+ 'baseURL',
+ 'bookmarkRoot',
+ 'calculate',
+ 'Collab',
+ 'creationDate',
+ 'creator',
+ 'delay',
+ 'dirty',
+ 'documentFileName',
+ 'external',
+ 'filesize',
+ 'icons',
+ 'info',
+ 'keywords',
+ 'layout',
+ 'media',
+ 'modDate',
+ 'mouseX',
+ 'mouseY',
+ 'numFields',
+ 'numPages',
+ 'pageNum',
+ 'pageWindowRect',
+ 'path',
+ 'producer',
+ 'subject',
+ 'title',
+ 'zoom',
+ 'zoomType',
+];
+
+function testGetProps(props) {
+ try {
+ app.alert('*** Getting properties ***');
+ for (var i = 0; i < props.length; ++i) {
+ var expr1 = "this." + props[i];
+ var expr2 = "typeof " + expr1;
+ app.alert(expr1 + " is " + eval(expr2) + ' ' + eval(expr1));
+ }
+ } catch (e) {
+ app.alert("ERROR: " + e.toString());
+ }
+}
+
+function testSetProps(props) {
+ try {
+ app.alert('*** Setting properties ***');
+ for (var i = 0; i < props.length; ++i) {
+ var expr1 = "this." + props[i] + ' = 3;'
+ app.alert(expr1 + " yields " + eval(expr1));
+ }
+ } catch (e) {
+ app.alert("ERROR: " + e.toString());
+ }
+}
+
+testGetProps(document_props);
+testSetProps(document_props);
+testGetProps(document_props);
+endstream
+endobj
+{{xref}}
+trailer <<
+ /Root 1 0 R
+ /Info 9 0 R
+>>
+{{startxref}}
+%%EOF