mirror of
https://github.com/danbulant/docker-compose
synced 2026-05-19 04:18:32 +00:00
58 lines
1.4 KiB
TypeScript
58 lines
1.4 KiB
TypeScript
import mapPorts from '../src/map-ports'
|
|
|
|
test('map ports for empty string', () => {
|
|
expect(mapPorts('')).toEqual([])
|
|
})
|
|
|
|
test('map ports for exposed tcp', () => {
|
|
expect(mapPorts('80/tcp')).toEqual([
|
|
{ exposed: { port: 80, protocol: 'tcp' } }
|
|
])
|
|
})
|
|
|
|
test('map ports for exposed tcp on ivp4 interface', () => {
|
|
expect(mapPorts('0.0.0.0:443->443/tcp')).toEqual([
|
|
{
|
|
exposed: { port: 443, protocol: 'tcp' },
|
|
mapped: { address: '0.0.0.0', port: 443 }
|
|
}
|
|
])
|
|
})
|
|
|
|
test('map multiple tcp ports exposed on ivp4 interfaces', () => {
|
|
expect(mapPorts('0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp')).toEqual([
|
|
{
|
|
exposed: { port: 443, protocol: 'tcp' },
|
|
mapped: { address: '0.0.0.0', port: 443 }
|
|
},
|
|
{
|
|
exposed: { port: 80, protocol: 'tcp' },
|
|
mapped: { address: '0.0.0.0', port: 80 }
|
|
}
|
|
])
|
|
})
|
|
|
|
test('map multiple tcp ports exposed on ipv4 and ipv6 interfaces', () => {
|
|
expect(
|
|
mapPorts(
|
|
'0.0.0.0:443->443/tcp,:::443->443/tcp, 0.0.0.0:80->80/tcp,:::80->80/tcp'
|
|
)
|
|
).toEqual([
|
|
{
|
|
exposed: { port: 443, protocol: 'tcp' },
|
|
mapped: { address: '0.0.0.0', port: 443 }
|
|
},
|
|
{
|
|
exposed: { port: 443, protocol: 'tcp' },
|
|
mapped: { address: '::', port: 443 }
|
|
},
|
|
{
|
|
exposed: { port: 80, protocol: 'tcp' },
|
|
mapped: { address: '0.0.0.0', port: 80 }
|
|
},
|
|
{
|
|
exposed: { port: 80, protocol: 'tcp' },
|
|
mapped: { address: '::', port: 80 }
|
|
}
|
|
])
|
|
})
|