Files
shields/services/docker/docker-size.tester.js
Amir Zarrinkafsh 0e3b521ac7 Add [Docker] image size and version badges (#4562)
* Add [Docker] image size badge

* Add [Docker] version/tag badge

* [Docker] allow version badge to retrieve results from multiple pages

* [Docker] allow size badge to retrieve results from multiple pages

* [Docker] clean up size and version badges before squash

* [Docker] Size badge change API call to explicit tag

* [Docker] Conditionally include tag route param for badges

* [Docker] Implement feedback for size and version badges

* [Docker] Implement feedback round 2 for size and version badges

* [Docker] Optimise API lookups and remove date sorting on tag badge

* [Docker] Implement feedback round 3 for version badge

* [Docker] Implement feedback round 4 for version badge

* [Docker] Adjust unit and service tests for version badge

* [Docker] Move unit test data into fixtures

* [Docker] Fix Docker version badge route prefix

* [Docker] Add date and semver lookup for size badge

* [Docker] Implement feedback round 5 for version badge

* [Docker] Implement feedback round 6

* [Docker] Tweak error messaging for consistent wording

* [Docker] Adjust badge titles

* [Docker] Guard and treat images with missing digest

* [Docker] Guard and treat images with missing digest
2020-02-13 15:17:55 -06:00

47 lines
1.1 KiB
JavaScript

'use strict'
const { isFileSize } = require('../test-validators')
const t = (module.exports = require('../tester').createServiceTester())
t.create('docker image size (valid, library)')
.get('/_/alpine.json')
.expectBadge({
label: 'image size',
message: isFileSize,
})
t.create('docker image size (valid, library with tag)')
.get('/_/alpine/latest.json')
.expectBadge({
label: 'image size',
message: isFileSize,
})
t.create('docker image size (valid, user)')
.get('/jrottenberg/ffmpeg.json')
.expectBadge({
label: 'image size',
message: isFileSize,
})
t.create('docker image size (valid, user with tag)')
.get('/jrottenberg/ffmpeg/3.2-alpine.json')
.expectBadge({
label: 'image size',
message: isFileSize,
})
t.create('docker image size (invalid, incorrect tag)')
.get('/_/alpine/wrong-tag.json')
.expectBadge({
label: 'image size',
message: 'repository or tag not found',
})
t.create('docker image size (invalid, unknown repository)')
.get('/_/not-a-real-repo.json')
.expectBadge({
label: 'image size',
message: 'repository not found',
})