diff --git a/package.json b/package.json index 1d5a398..9eaf054 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pdfbox", - "version": "0.1.3", + "version": "0.1.4", "description": "A BaseX interface to Apache Pdfbox version 3", "main": "src/Pdfbox3.xqm", "homepage": "https://github.com/npm/example#readme", diff --git a/src/Pdfbox3.xqm b/src/Pdfbox3.xqm index 8f32111..22e159a 100644 --- a/src/Pdfbox3.xqm +++ b/src/Pdfbox3.xqm @@ -190,11 +190,10 @@ as map(*){ (:~ outline as xml :) declare function pdfbox:outline-xml($pdf as item()) as element(outline)?{ - element outline { - let $outline:=pdfbox:outline($pdf) - return if(exists($outline)) - then {$outline!pdfbox:bookmark-xml(.)} - } + let $outline:=pdfbox:outline($pdf) + return if(exists($outline)) + then {$outline!pdfbox:bookmark-xml(.)} + else () }; declare %private function pdfbox:bookmark-xml($outline as map(*)*) diff --git a/src/test/test.xqm b/src/test/test.xqm index 3e58034..6b3050d 100644 --- a/src/test/test.xqm +++ b/src/test/test.xqm @@ -15,42 +15,42 @@ function test:pdfbox-version(){ declare %unit:test function test:specification(){ - let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") + let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $spec:=pdfbox:specification($pdf) return unit:assert-equals($spec,"1.4") }; declare %unit:test function test:page-count(){ - let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") + let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $pages:=pdfbox:page-count($pdf) return unit:assert-equals($pages,521) }; declare %unit:test function test:outline-none(){ -let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") +let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $outline:=pdfbox:outline($pdf) return unit:assert(empty($outline)) }; declare %unit:test function test:outline-present(){ - let $pdf:=test:pdf("samples.pdf/icelandic-dictionary.pdf") + let $pdf:=test:open("samples.pdf/icelandic-dictionary.pdf") let $outline:=pdfbox:outline($pdf) return unit:assert(exists($outline)) }; declare %unit:test function test:outline-xml(){ - let $pdf:=test:pdf("samples.pdf/icelandic-dictionary.pdf") + let $pdf:=test:open("samples.pdf/icelandic-dictionary.pdf") let $outline:=pdfbox:outline-xml($pdf) return unit:assert-equals(count($outline/bookmark),31) }; declare %unit:test function test:labels(){ - let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") + let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $labels:=pdfbox:labels($pdf) return ( @@ -62,7 +62,7 @@ function test:labels(){ declare %unit:test function test:extract-save(){ - let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") + let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $dest:=file:create-temp-file("test",".pdf")=>trace("DEST: ") let $outline:=pdfbox:extract($pdf,2,12,$dest) return unit:assert(true()) @@ -70,26 +70,31 @@ function test:extract-save(){ declare %unit:test function test:page-text(){ -let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") +let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $text:=pdfbox:page-text($pdf,1) return unit:assert(starts-with($text,"BaseX Documentation")) }; declare %unit:test function test:page-image(){ - let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") + let $pdf:=test:open("samples.pdf/BaseX100.pdf") let $image:=pdfbox:page-image($pdf,0,map{}) return unit:assert(true()) }; declare %unit:test function test:pdf-with(){ - let $path:=test:pdf("samples.pdf/BaseX100.pdf") + let $path:=test:resolve("samples.pdf/BaseX100.pdf") let $txt:=pdfbox:with-pdf($path,pdfbox:page-text(?,101)) - return unit:assert-equals($txt,"Options") + return unit:assert(starts-with($txt,"Options")) }; -declare function test:pdf($file as xs:string) +declare function test:open($file as xs:string) as item(){ - file:resolve-path($file,$test:base)=>pdfbox:open() + test:resolve($file)=>pdfbox:open() }; + +declare function test:resolve($file as xs:string) +as item(){ + file:resolve-path($file,$test:base) +}; \ No newline at end of file