32 lines
1.4 KiB
Go
32 lines
1.4 KiB
Go
|
package buildah
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
"github.com/stretchr/testify/assert"
|
||
|
)
|
||
|
|
||
|
func TestMapContainerNameToHostname(t *testing.T) {
|
||
|
cases := [][2]string{
|
||
|
{"trivial", "trivial"},
|
||
|
{"Nottrivial", "Nottrivial"},
|
||
|
{"0Nottrivial", "0Nottrivial"},
|
||
|
{"0Nottrivi-al", "0Nottrivi-al"},
|
||
|
{"-0Nottrivi-al", "0Nottrivi-al"},
|
||
|
{".-0Nottrivi-.al", "0Nottrivi-.al"},
|
||
|
{".-0Nottrivi-.al0123456789", "0Nottrivi-.al0123456789"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789", "0Nottrivi-.al01234567890123456789"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789/0123456789", "0Nottrivi-.al012345678901234567890123456789"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789/0123456789%0123456789", "0Nottrivi-.al0123456789012345678901234567890123456789"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789/0123456789%0123456789_0123456789", "0Nottrivi-.al01234567890123456789012345678901234567890123456789"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789/0123456789%0123456789_0123456789:0123456", "0Nottrivi-.al012345678901234567890123456789012345678901234567890"},
|
||
|
{".-0Nottrivi-.al0123456789+0123456789/0123456789%0123456789_0123456789:0123456789", "0Nottrivi-.al012345678901234567890123456789012345678901234567890"},
|
||
|
}
|
||
|
for i := range cases {
|
||
|
t.Run(cases[i][0], func(t *testing.T) {
|
||
|
sanitized := mapContainerNameToHostname(cases[i][0])
|
||
|
assert.Equalf(t, cases[i][1], sanitized, "mapping container name %q to a valid hostname", cases[i][0])
|
||
|
})
|
||
|
}
|
||
|
}
|