* Bump github.com/golangci/golangci-lint from 1.55.2 to 1.62.0 Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.55.2 to 1.62.0. - [Release notes](https://github.com/golangci/golangci-lint/releases) - [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md) - [Commits](https://github.com/golangci/golangci-lint/compare/v1.55.2...v1.62.0) --- updated-dependencies: - dependency-name: github.com/golangci/golangci-lint dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Linter fixes --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Josh Spence <jspence@anduril.com>
91 lines
2.5 KiB
Go
91 lines
2.5 KiB
Go
package main
|
|
|
|
import (
|
|
"encoding/json"
|
|
"net/http"
|
|
"net/http/httptest"
|
|
"net/url"
|
|
"testing"
|
|
|
|
"github.com/hashicorp/go-version"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestLatestUnifiVersion(t *testing.T) {
|
|
assert := assert.New(t)
|
|
require := require.New(t)
|
|
|
|
fwVersion, err := version.NewVersion("7.3.83+atag-7.3.83-19645")
|
|
require.NoError(err)
|
|
|
|
fwDownload, err := url.Parse("https://fw-download.ubnt.com/data/unifi-controller/c31c-debian-7.3.83-c9249c913b91416693b869b9548850c3.deb")
|
|
require.NoError(err)
|
|
|
|
respData := firmwareUpdateApiResponse{
|
|
Embedded: firmwareUpdateApiResponseEmbedded{
|
|
Firmware: []firmwareUpdateApiResponseEmbeddedFirmware{
|
|
{
|
|
Channel: releaseChannel,
|
|
Created: "2023-02-06T08:55:31+00:00",
|
|
Id: "c9249c91-3b91-4166-93b8-69b9548850c3",
|
|
Platform: debianPlatform,
|
|
Product: unifiControllerProduct,
|
|
Version: fwVersion,
|
|
Links: firmwareUpdateApiResponseEmbeddedFirmwareLinks{
|
|
Data: firmwareUpdateApiResponseEmbeddedFirmwareDataLink{
|
|
Href: fwDownload,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Channel: releaseChannel,
|
|
Created: "2023-02-06T08:51:36+00:00",
|
|
Id: "2a600108-7f79-4b3e-b6e0-4dd262460457",
|
|
Platform: "document",
|
|
Product: unifiControllerProduct,
|
|
Version: fwVersion,
|
|
Links: firmwareUpdateApiResponseEmbeddedFirmwareLinks{
|
|
Data: firmwareUpdateApiResponseEmbeddedFirmwareDataLink{
|
|
Href: nil,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Channel: releaseChannel,
|
|
Created: "2023-02-06T08:51:37+00:00",
|
|
Id: "9d2d413d-36ce-4742-a10d-4351aac6f08d",
|
|
Platform: "windows",
|
|
Product: unifiControllerProduct,
|
|
Version: fwVersion,
|
|
Links: firmwareUpdateApiResponseEmbeddedFirmwareLinks{
|
|
Data: firmwareUpdateApiResponseEmbeddedFirmwareDataLink{
|
|
Href: nil,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
server := httptest.NewServer(http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
|
|
query := req.URL.Query()
|
|
assert.Contains(query["filter"], firmwareUpdateApiFilter("channel", releaseChannel))
|
|
assert.Contains(query["filter"], firmwareUpdateApiFilter("product", unifiControllerProduct))
|
|
|
|
resp, err := json.Marshal(respData)
|
|
assert.NoError(err)
|
|
|
|
_, err = rw.Write(resp)
|
|
assert.NoError(err)
|
|
}))
|
|
defer server.Close()
|
|
|
|
firmwareUpdateApi = server.URL
|
|
gotVersion, gotDownload, err := latestUnifiVersion()
|
|
require.NoError(err)
|
|
|
|
assert.Equal(fwVersion.Core(), gotVersion)
|
|
assert.Equal(fwDownload, gotDownload)
|
|
}
|