feat: add GH workflow and example test

This commit is contained in:
2025-05-13 14:00:28 +02:00
parent 35c72b1e39
commit fbc42aca31
5 changed files with 63 additions and 1 deletions

22
.github/workflows/main.yaml vendored Normal file
View File

@@ -0,0 +1,22 @@
name: main
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
- name: Run build
run: go build -v ./...
- name: Run tests
run: go test -v ./...

View File

@@ -8,6 +8,9 @@ generate:
swagger generate server -f api/rcond.yaml -t api/
go mod tidy
test:
go test -v ./...
build:
mkdir -p bin
env GOOS=linux GOARCH=${ARCH} go build -o bin/rcond-${ARCH} ./cmd/rcond/main.go

7
go.mod
View File

@@ -10,8 +10,13 @@ require (
github.com/godbus/dbus/v5 v5.1.0
github.com/google/uuid v1.6.0
github.com/gorilla/mux v1.8.1
github.com/stretchr/testify v1.10.0
golang.org/x/crypto v0.37.0
gopkg.in/yaml.v3 v3.0.1
)
require golang.org/x/sys v0.32.0 // indirect
require (
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
golang.org/x/sys v0.32.0 // indirect
)

6
go.sum
View File

@@ -1,9 +1,15 @@
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk=
github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE=
golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc=
golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=

View File

@@ -0,0 +1,26 @@
package network
import (
"testing"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
)
func TestDefaultSTAConfig(t *testing.T) {
uuid := uuid.New()
cfg := DefaultSTAConfig(uuid, "test", "test", true)
assert.Equal(t, "802-11-wireless", cfg.Type)
assert.Equal(t, "test", cfg.ID)
assert.Equal(t, "test", cfg.SSID)
assert.Equal(t, true, cfg.AutoConnect)
}
func TestDefaultAPConfig(t *testing.T) {
uuid := uuid.New()
cfg := DefaultAPConfig(uuid, "test", "test", true)
assert.Equal(t, "802-11-wireless", cfg.Type)
assert.Equal(t, "test", cfg.ID)
assert.Equal(t, "test", cfg.SSID)
assert.Equal(t, true, cfg.AutoConnect)
}