@@ -2,10 +2,56 @@ import { describe, expect, test } from 'vitest';
22import { parseImageServiceRequest } from '../src/utility/parse-image-service-request' ;
33import { imageServiceRequestToString } from '../src/utility/image-service-request-to-string' ;
44import { createImageServiceRequest } from '../src/utility/create-image-service-request' ;
5+ import { ImageServiceImageRequest } from '../src' ;
6+ import { ImageService } from '@iiif/presentation-3' ;
57
68describe ( 'IIIF Image API Parameters' , ( ) => {
79 /// {scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}
810
11+ describe ( 'SI JPCA image service examples' , ( ) => {
12+ test ( 'image service without explicit context' , ( ) => {
13+ const parsed = {
14+ scheme : 'https' ,
15+ server : 'iiif.jpcarchive.org' ,
16+ prefix : '' ,
17+ identifier : 'iiif/v2.0/media/JPC-b0a2d4ca692a34ef465ff5b5c736391d_0009_001' ,
18+ originalPath : '' ,
19+ type : 'image' ,
20+ region : {
21+ full : true ,
22+ } ,
23+ size : {
24+ max : false ,
25+ upscaled : false ,
26+ confined : false ,
27+ width : 550 ,
28+ height : 600 ,
29+ } ,
30+ rotation : {
31+ angle : 0 ,
32+ mirror : false ,
33+ } ,
34+ format : 'jpg' ,
35+ quality : 'default' ,
36+ } as ImageServiceImageRequest ;
37+
38+ const service = {
39+ sizes : [ ] ,
40+ width : 550 ,
41+ height : 600 ,
42+ maxWidth : 550 ,
43+ maxHeight : 600 ,
44+ id : 'https://iiif.jpcarchive.org/iiif/v2.0/media/JPC-b0a2d4ca692a34ef465ff5b5c736391d_0009_001' ,
45+ type : 'ImageService2' ,
46+ profile : 'level2' ,
47+ } as ImageService ;
48+
49+ expect ( imageServiceRequestToString ( parsed , service ) ) . toEqual (
50+ 'https://iiif.jpcarchive.org/iiif/v2.0/media/JPC-b0a2d4ca692a34ef465ff5b5c736391d_0009_001/full/full/0/default.jpg'
51+ ) ;
52+ } ) ;
53+ } ) ;
54+
955 describe ( 'munch.emuseum.com examples' , ( ) => {
1056 // https://munch.emuseum.com/apis/iiif/image/v2/17261/full/max/0/default.jpg
1157 // https://munch.emuseum.com/apis/iiif/image/v2/17261/90,0,350,220/max/0/default.jpg
0 commit comments