talos
68 строк · 1.1 Кб
1// This Source Code Form is subject to the terms of the Mozilla Public
2// License, v. 2.0. If a copy of the MPL was not distributed with this
3// file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5package nethelpers_test
6
7import (
8"fmt"
9"testing"
10
11"github.com/stretchr/testify/assert"
12
13"github.com/siderolabs/talos/pkg/machinery/nethelpers"
14)
15
16func TestVLANLinkName(t *testing.T) {
17t.Parallel()
18
19for _, test := range []struct {
20base string
21vlanID uint16
22
23expected string
24}{
25{
26base: "eth0",
27vlanID: 1,
28
29expected: "eth0.1",
30},
31{
32base: "en9s0",
33vlanID: 4095,
34
35expected: "en9s0.4095",
36},
37{
38base: "0123456789",
39vlanID: 4095,
40
41expected: "0123456789.4095",
42},
43{
44base: "enx12545f8c99cd",
45vlanID: 25,
46
47expected: "enx1ee6413.25",
48},
49{
50base: "enx12545f8c99cd",
51vlanID: 4095,
52
53expected: "enx1ee6413.4095",
54},
55{
56base: "enx12545f8c99ce",
57vlanID: 4095,
58
59expected: "enx1ef972f.4095",
60},
61} {
62t.Run(fmt.Sprintf("%s.%d", test.base, test.vlanID), func(t *testing.T) {
63t.Parallel()
64
65assert.Equal(t, test.expected, nethelpers.VLANLinkName(test.base, test.vlanID))
66})
67}
68}
69