mirror of
https://github.com/docker/metadata-action.git
synced 2025-06-23 19:27:58 +02:00
attribute to enable/disable images
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
82
__tests__/image.test.ts
Normal file
82
__tests__/image.test.ts
Normal file
@ -0,0 +1,82 @@
|
||||
import {describe, expect, test} from '@jest/globals';
|
||||
import {Transform, Image} from '../src/image';
|
||||
|
||||
describe('transform', () => {
|
||||
// prettier-ignore
|
||||
test.each([
|
||||
[
|
||||
[
|
||||
`name/foo`
|
||||
],
|
||||
[
|
||||
{
|
||||
name: `name/foo`,
|
||||
enable: true,
|
||||
}
|
||||
] as Image[],
|
||||
false
|
||||
],
|
||||
[
|
||||
[
|
||||
`name/foo`,
|
||||
`name/bar`
|
||||
],
|
||||
[
|
||||
{
|
||||
name: `name/foo`,
|
||||
enable: true,
|
||||
},
|
||||
{
|
||||
name: `name/bar`,
|
||||
enable: true,
|
||||
}
|
||||
] as Image[],
|
||||
false
|
||||
],
|
||||
[
|
||||
[
|
||||
`name=name/bar`,
|
||||
`name/foo,enable=false`,
|
||||
`name=ghcr.io/name/foo,enable=true`
|
||||
],
|
||||
[
|
||||
{
|
||||
name: `name/bar`,
|
||||
enable: true,
|
||||
},
|
||||
{
|
||||
name: `name/foo`,
|
||||
enable: false,
|
||||
},
|
||||
{
|
||||
name: `ghcr.io/name/foo`,
|
||||
enable: true,
|
||||
},
|
||||
] as Image[],
|
||||
false
|
||||
],
|
||||
[
|
||||
[`value=name/foo`], undefined, true
|
||||
],
|
||||
[
|
||||
[`name/foo,enable=bar`], undefined, true
|
||||
],
|
||||
[
|
||||
[`name/foo,bar=baz`], undefined, true
|
||||
],
|
||||
[
|
||||
[`name=,enable=true`], undefined, true
|
||||
]
|
||||
])('given %p', async (l: string[], expected: Image[], invalid: boolean) => {
|
||||
try {
|
||||
const images = Transform(l);
|
||||
expect(images).toEqual(expected);
|
||||
} catch (err) {
|
||||
if (!invalid) {
|
||||
console.error(err);
|
||||
}
|
||||
// eslint-disable-next-line jest/no-conditional-expect
|
||||
expect(true).toBe(invalid);
|
||||
}
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user