The following is a suggested checklist for testing by humans.
...
For additional how-to information, see CDS2 Developer Guide.
Ingest of contents via TMAN
Proceed with the usual ingest procedure with additional parameters for cds2 – cds_access_master
, cds_access_tiff
, cds_access_jpeg
, cds_maxsize_tiff
, cds_maxsize_jpeg
. This does not include the ingest of object data by metadata harvester.
Test for each action
Create
TMAN/Activity StreamUpdate access level
from TMAN/Activity Stream
from NetX UI
Update metadata
from TMAN/Activity Stream
from NetX UI
Delete
Check for
completion status of the action –
cds2_status
andcds2_error
in theassetstatus
table.existence/absence of the content according to the action and the access parameters. For retrieving contents, see “IIIF Images” and “Non-IIIF contents” below.
correct size according to
cds_maxsize_jpeg
andcds_maxsize_tiff
correct ICC profile
IIIIF images:
sRGB IEC61966-2.1
Stock TIFF images:
Adobe RGB 1998
FYI
TMAN
/Activity Streamdatabase
production:
traffic-manager-prd.cnh4zslmvwh7.us-east-1.rds.amazonaws.com:1433
development:
traffic-manager-dev.c7exm1chla3f.us-east-1.rds.amazonaws.com:1433
NetX
production: https://yalemuseums01.netx.net
development: https://yalemuseums01-test.netx.net
Manifests
Pick an object that you know has been ingested via the metadata activity stream, and retrieve the manifest its unit code, CMS type, and CMS ID:
e.g.
https://manifests-dev.collections.yale.edu/ycba/obj/38803 (V3)
https://manifests-dev.collections.yale.edu/v2/ycba/obj/38803 (V2)
...
Check for
conformance to the IIIF presentation API version 3?Does it contain the correct list
presence/absence of canvases and images according to the access level (
cds_acces_master
,cds_access_tiff
,cds_access_jpeg
)?Do the canvas and image items have correctorder of canvases (images) – is it correct a la
cdsrank
andcdsprimary
?conformance of width and height values that conforms to the size limits (
cds_maxsize_tiff
andcds_maxsize_jpeg
)?Does it contain the correct metadata?
Does it contain metadata ingested from activity streams
links to stock TIFFs and/or master media files as “rendering” elements when applicable ?
IIIF images
From a manifest, pick an image, construct a URL(s), and retrieve the image.
e.g. https://images-dev.collections.yale.edu/iiif/2/ycba:c5bad9c0-24f7-482c-9852-f6a554a4314a.tif/full/full/0/default.jpg (full size)
https://images-dev.collections.yale.edu/iiif/2/ycba:c5bad9c0-24f7-482c-9852-f6a554a4314a.tif/full/250,/0/default.jpg (width = 250px)
Check the image for its quality.
Is the The full-size image should conform to the size limit set by
cds_maxsize_jpeg
?.The color profile should be
sRGB IEC61966-2.1
.
Non-IIIF contents
e.g.
https://media-dev.collections.yale.edu/printtiff/ycba/c5bad9c0-24f7-482c-9852-f6a554a4314a.tif
Is the The full-size image conform to the size limit set by
cds_maxsize_tiff
?
...
.
The color profile should be
Adobe RGB 1998
.
See in viewers
Pass the manifest to a test viewer and test.
...
http://spinup-000bcd.spinup.yale.edu/mirador3?manifest=https://manifests-dev.collections.yale.edu/v2/ycba/obj/38803 (Mirador 3, manifest V2)
⚠ Mirador2 does not support V3 manifests.
http://spinup-000bcd.spinup.yale.edu/mirador?manifest=https://manifests-dev.collections.yale.edu/v2/ycba/obj/38803 (Mirador 2, manifest V3V2)
⚠ Mirador2 does not support V3 manifests.
http://spinup-000bcd.spinup.yale.edu/uv3?manifest=https://manifests-dev.collections.yale.edu/ycba/obj/38803 (Universal Viewer 3, manifest V3)
...
It is recommended that the units also test using additional viewers (link for Universal Viewer will be added above).
Metadata activity stream
Currently, no units implement the activity stream strictly according to the spec. Therefore instead of testing individual activities, we probably have to consider it a one-time bulk upload and only check for the consistency of CDS2 API with the source data.
Hints for locating elements in a manifest
V3
Canvas:
items[n]
URL of image service (location of info.json):
items[[n].items[0].items[0].body.service[“@id”]
URL of full size image:
items[n].items[0].items[0].body.id
URL of stock PDF or master media file:
items[n].rendering[0].id
V2
Canvas:
sequences[0].canvases[n]
URL of image service (location of info.json):
sequences[0].canvases[n].images[0].resource[‘@id’]
URL of full size image:
sequences[0].canvases[n].images[0].resource[‘@id’]
Displaying thumbnails
Units to test displaying hundreds of thumbnails
...