system_setup_tool/flatpak_test.go

44 lines
1,020 B
Go

// flatpak_test.go
package main
import (
"os/exec"
"testing"
)
func TestFlatpakManager_Name(t *testing.T) {
fm := &FlatpakManager{}
if name := fm.Name(); name != "Flatpak" {
t.Errorf("Expected name to be 'Flatpak', got %s", name)
}
}
func TestFlatpakManager_InstallManager(t *testing.T) {
fm := &FlatpakManager{
OS: &OS{PackageManager: "apt"},
SudoPassword: "testpass",
Config: FlatpakConfig{
Remotes: []Remote{{Name: "test", URL: "http://test.com"}},
},
}
// Mock exec.LookPath and other functions as needed
if err := fm.InstallManager(); err != nil {
t.Errorf("Expected no error, got %v", err)
}
}
func TestFlatpakManager_InstallPackage(t *testing.T) {
fm := &FlatpakManager{}
// Mock exec.Command
execCommand = func(name string, arg ...string) *exec.Cmd {
return exec.Command("echo", "mocked flatpak install")
}
defer func() { execCommand = exec.Command }()
if err := fm.InstallPackage("test-package"); err != nil {
t.Errorf("Expected no error, got %v", err)
}
}