software tests
This commit is contained in:
parent
d6b1b90034
commit
6c94a8653f
4 changed files with 38 additions and 8 deletions
|
|
@ -1,7 +1,37 @@
|
||||||
package software_test
|
package software_test
|
||||||
|
|
||||||
import "testing"
|
import (
|
||||||
|
"errors"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/amidaware/rmmagent/agent/software"
|
||||||
|
)
|
||||||
|
|
||||||
func TestGetInstalledSoftware(t *testing.T) {
|
func TestGetInstalledSoftware(t *testing.T) {
|
||||||
|
testTable := []struct {
|
||||||
|
name string
|
||||||
|
expected []software.Software
|
||||||
|
atLeast int
|
||||||
|
expectedError error
|
||||||
|
}{
|
||||||
|
{
|
||||||
|
name: "Get Installed Software",
|
||||||
|
expected: []software.Software{},
|
||||||
|
atLeast: 1,
|
||||||
|
expectedError: nil,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, tt := range testTable {
|
||||||
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
result, err := software.GetInstalledSoftware()
|
||||||
|
if len(result) < tt.atLeast {
|
||||||
|
t.Errorf("expected at least %d, got %d", tt.atLeast, len(result))
|
||||||
|
}
|
||||||
|
|
||||||
|
if !errors.Is(tt.expectedError, err) {
|
||||||
|
t.Errorf("expected (%v), got (%v)", tt.expectedError, err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ import (
|
||||||
wapi "github.com/iamacarpet/go-win64api"
|
wapi "github.com/iamacarpet/go-win64api"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetInstalledSoftware() ([]WinSoftwareList, error) {
|
func GetInstalledSoftware() ([]Software, error) {
|
||||||
ret := make([]WinSoftwareList, 0)
|
ret := make([]Software, 0)
|
||||||
sw, err := installedSoftwareList()
|
sw, err := installedSoftwareList()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return ret, err
|
return ret, err
|
||||||
|
|
@ -16,7 +16,7 @@ func GetInstalledSoftware() ([]WinSoftwareList, error) {
|
||||||
|
|
||||||
for _, s := range sw {
|
for _, s := range sw {
|
||||||
t := s.InstallDate
|
t := s.InstallDate
|
||||||
ret = append(ret, WinSoftwareList{
|
ret = append(ret, SoftwareList{
|
||||||
Name: utils.CleanString(s.Name()),
|
Name: utils.CleanString(s.Name()),
|
||||||
Version: utils.CleanString(s.Version()),
|
Version: utils.CleanString(s.Version()),
|
||||||
Publisher: utils.CleanString(s.Publisher),
|
Publisher: utils.CleanString(s.Publisher),
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ import (
|
||||||
wapi "github.com/iamacarpet/go-win64api"
|
wapi "github.com/iamacarpet/go-win64api"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetInstalledSoftware() ([]SoftwareList, error) {
|
func GetInstalledSoftware() ([]Software, error) {
|
||||||
ret := make([]SoftwareList, 0)
|
ret := make([]Software, 0)
|
||||||
sw, err := wapi.InstalledSoftwareList()
|
sw, err := wapi.InstalledSoftwareList()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return ret, err
|
return ret, err
|
||||||
|
|
@ -16,7 +16,7 @@ func GetInstalledSoftware() ([]SoftwareList, error) {
|
||||||
|
|
||||||
for _, s := range sw {
|
for _, s := range sw {
|
||||||
t := s.InstallDate
|
t := s.InstallDate
|
||||||
ret = append(ret, SoftwareList{
|
ret = append(ret, Software{
|
||||||
Name: utils.CleanString(s.Name()),
|
Name: utils.CleanString(s.Name()),
|
||||||
Version: utils.CleanString(s.Version()),
|
Version: utils.CleanString(s.Version()),
|
||||||
Publisher: utils.CleanString(s.Publisher),
|
Publisher: utils.CleanString(s.Publisher),
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package software
|
package software
|
||||||
|
|
||||||
type SoftwareList struct {
|
type Software struct {
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Version string `json:"version"`
|
Version string `json:"version"`
|
||||||
Publisher string `json:"publisher"`
|
Publisher string `json:"publisher"`
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue