1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
//go:build !integration
// +build !integration
package windows
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestVersion(t *testing.T) {
tests := []struct {
operatingSystem string
expectedVersion string
expectedErr error
}{
{
operatingSystem: "Windows Server 2019 Datacenter Evaluation Version 1809 (OS Build 17763.316)",
expectedVersion: V1809,
expectedErr: nil,
},
{
operatingSystem: "Windows Server Datacenter Version 1809 (OS Build 1803.590)",
expectedVersion: V1809,
expectedErr: nil,
},
{
operatingSystem: "Windows 10 Pro Version 2004 (OS Build 19041.329)",
expectedVersion: V2004,
expectedErr: nil,
},
{
operatingSystem: "Windows Server Datacenter Version 2009 (OS Build 19042.985)",
expectedVersion: V20H2,
expectedErr: nil,
},
{
operatingSystem: "some random string",
expectedErr: NewUnsupportedWindowsVersionError("some random string"),
},
}
for _, tt := range tests {
t.Run(tt.operatingSystem, func(t *testing.T) {
version, err := Version(tt.operatingSystem)
assert.Equal(t, tt.expectedVersion, version)
assert.ErrorIs(t, err, tt.expectedErr)
})
}
}
|