big refactor and testing

This commit is contained in:
redanthrax 2022-06-20 16:51:00 -07:00
parent a2ed11b2fb
commit d6b1b90034
26 changed files with 908 additions and 70 deletions

View file

@ -4,7 +4,7 @@ import (
trmm "github.com/wh1te909/trmm-shared"
)
func GetInstalledSoftware() []trmm.WinSoftwareList { return []trmm.WinSoftwareList{} }
func GetInstalledSoftware() []SoftwareList { return []WinSoftwareList{} }
func InstallChoco() {}

View file

@ -0,0 +1,7 @@
package software_test
import "testing"
func TestGetInstalledSoftware(t *testing.T) {
}

View file

@ -5,20 +5,18 @@ import (
"github.com/amidaware/rmmagent/agent/utils"
wapi "github.com/iamacarpet/go-win64api"
trmm "github.com/wh1te909/trmm-shared"
)
func GetInstalledSoftware() []trmm.WinSoftwareList {
ret := make([]trmm.WinSoftwareList, 0)
func GetInstalledSoftware() ([]WinSoftwareList, error) {
ret := make([]WinSoftwareList, 0)
sw, err := installedSoftwareList()
if err != nil {
return ret
return ret, err
}
for _, s := range sw {
t := s.InstallDate
ret = append(ret, trmm.WinSoftwareList{
ret = append(ret, WinSoftwareList{
Name: utils.CleanString(s.Name()),
Version: utils.CleanString(s.Version()),
Publisher: utils.CleanString(s.Publisher),
@ -29,5 +27,6 @@ func GetInstalledSoftware() []trmm.WinSoftwareList {
Uninstall: utils.CleanString(s.UninstallString),
})
}
return ret
return ret, nil
}

View file

@ -5,20 +5,18 @@ import (
"github.com/amidaware/rmmagent/agent/utils"
wapi "github.com/iamacarpet/go-win64api"
trmm "github.com/wh1te909/trmm-shared"
)
func GetInstalledSoftware() []trmm.WinSoftwareList {
ret := make([]trmm.WinSoftwareList, 0)
func GetInstalledSoftware() ([]SoftwareList, error) {
ret := make([]SoftwareList, 0)
sw, err := wapi.InstalledSoftwareList()
if err != nil {
return ret
return ret, err
}
for _, s := range sw {
t := s.InstallDate
ret = append(ret, trmm.WinSoftwareList{
ret = append(ret, SoftwareList{
Name: utils.CleanString(s.Name()),
Version: utils.CleanString(s.Version()),
Publisher: utils.CleanString(s.Publisher),
@ -29,5 +27,6 @@ func GetInstalledSoftware() []trmm.WinSoftwareList {
Uninstall: utils.CleanString(s.UninstallString),
})
}
return ret
return ret, nil
}

12
agent/software/structs.go Normal file
View file

@ -0,0 +1,12 @@
package software
type SoftwareList struct {
Name string `json:"name"`
Version string `json:"version"`
Publisher string `json:"publisher"`
InstallDate string `json:"install_date"`
Size string `json:"size"`
Source string `json:"source"`
Location string `json:"location"`
Uninstall string `json:"uninstall"`
}