1
0
Fork 0

[fix] tests

This commit is contained in:
Andy Bunce 2025-02-09 21:34:13 +00:00
parent 9ff9005a96
commit 4aeafeb034
3 changed files with 23 additions and 19 deletions

View file

@ -1,6 +1,6 @@
{ {
"name": "pdfbox", "name": "pdfbox",
"version": "0.1.3", "version": "0.1.4",
"description": "A BaseX interface to Apache Pdfbox version 3", "description": "A BaseX interface to Apache Pdfbox version 3",
"main": "src/Pdfbox3.xqm", "main": "src/Pdfbox3.xqm",
"homepage": "https://github.com/npm/example#readme", "homepage": "https://github.com/npm/example#readme",

View file

@ -190,11 +190,10 @@ as map(*){
(:~ outline as xml :) (:~ outline as xml :)
declare function pdfbox:outline-xml($pdf as item()) declare function pdfbox:outline-xml($pdf as item())
as element(outline)?{ as element(outline)?{
element outline {
let $outline:=pdfbox:outline($pdf) let $outline:=pdfbox:outline($pdf)
return if(exists($outline)) return if(exists($outline))
then <outline>{$outline!pdfbox:bookmark-xml(.)}</outline> then <outline>{$outline!pdfbox:bookmark-xml(.)}</outline>
} else ()
}; };
declare %private function pdfbox:bookmark-xml($outline as map(*)*) declare %private function pdfbox:bookmark-xml($outline as map(*)*)

View file

@ -15,42 +15,42 @@ function test:pdfbox-version(){
declare %unit:test declare %unit:test
function test:specification(){ function test:specification(){
let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") let $pdf:=test:open("samples.pdf/BaseX100.pdf")
let $spec:=pdfbox:specification($pdf) let $spec:=pdfbox:specification($pdf)
return unit:assert-equals($spec,"1.4") return unit:assert-equals($spec,"1.4")
}; };
declare %unit:test declare %unit:test
function test:page-count(){ 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) let $pages:=pdfbox:page-count($pdf)
return unit:assert-equals($pages,521) return unit:assert-equals($pages,521)
}; };
declare %unit:test declare %unit:test
function test:outline-none(){ 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) let $outline:=pdfbox:outline($pdf)
return unit:assert(empty($outline)) return unit:assert(empty($outline))
}; };
declare %unit:test declare %unit:test
function test:outline-present(){ 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) let $outline:=pdfbox:outline($pdf)
return unit:assert(exists($outline)) return unit:assert(exists($outline))
}; };
declare %unit:test declare %unit:test
function test:outline-xml(){ 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) let $outline:=pdfbox:outline-xml($pdf)
return unit:assert-equals(count($outline/bookmark),31) return unit:assert-equals(count($outline/bookmark),31)
}; };
declare %unit:test declare %unit:test
function test:labels(){ function test:labels(){
let $pdf:=test:pdf("samples.pdf/BaseX100.pdf") let $pdf:=test:open("samples.pdf/BaseX100.pdf")
let $labels:=pdfbox:labels($pdf) let $labels:=pdfbox:labels($pdf)
return ( return (
@ -62,7 +62,7 @@ function test:labels(){
declare %unit:test declare %unit:test
function test:extract-save(){ 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 $dest:=file:create-temp-file("test",".pdf")=>trace("DEST: ")
let $outline:=pdfbox:extract($pdf,2,12,$dest) let $outline:=pdfbox:extract($pdf,2,12,$dest)
return unit:assert(true()) return unit:assert(true())
@ -70,26 +70,31 @@ function test:extract-save(){
declare %unit:test declare %unit:test
function test:page-text(){ 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) let $text:=pdfbox:page-text($pdf,1)
return unit:assert(starts-with($text,"BaseX Documentation")) return unit:assert(starts-with($text,"BaseX Documentation"))
}; };
declare %unit:test declare %unit:test
function test:page-image(){ 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{}) let $image:=pdfbox:page-image($pdf,0,map{})
return unit:assert(true()) return unit:assert(true())
}; };
declare %unit:test declare %unit:test
function test:pdf-with(){ 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)) 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(){ 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)
}; };