mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-04-30 17:42:06 -04:00
loginctl: simplify event handling
This commit is contained in:
@@ -35,12 +35,7 @@ type SessionState struct {
|
||||
type EventType string
|
||||
|
||||
const (
|
||||
EventStateChanged EventType = "state_changed"
|
||||
EventLock EventType = "lock"
|
||||
EventUnlock EventType = "unlock"
|
||||
EventPrepareForSleep EventType = "prepare_for_sleep"
|
||||
EventIdleHintChanged EventType = "idle_hint_changed"
|
||||
EventLockedHintChanged EventType = "locked_hint_changed"
|
||||
EventStateChanged EventType = "state_changed"
|
||||
)
|
||||
|
||||
type SessionEvent struct {
|
||||
|
||||
@@ -8,11 +8,6 @@ import (
|
||||
|
||||
func TestEventType_Constants(t *testing.T) {
|
||||
assert.Equal(t, EventType("state_changed"), EventStateChanged)
|
||||
assert.Equal(t, EventType("lock"), EventLock)
|
||||
assert.Equal(t, EventType("unlock"), EventUnlock)
|
||||
assert.Equal(t, EventType("prepare_for_sleep"), EventPrepareForSleep)
|
||||
assert.Equal(t, EventType("idle_hint_changed"), EventIdleHintChanged)
|
||||
assert.Equal(t, EventType("locked_hint_changed"), EventLockedHintChanged)
|
||||
}
|
||||
|
||||
func TestSessionState_Struct(t *testing.T) {
|
||||
@@ -40,11 +35,11 @@ func TestSessionEvent_Struct(t *testing.T) {
|
||||
}
|
||||
|
||||
event := SessionEvent{
|
||||
Type: EventLock,
|
||||
Type: EventStateChanged,
|
||||
Data: state,
|
||||
}
|
||||
|
||||
assert.Equal(t, EventLock, event.Type)
|
||||
assert.Equal(t, EventStateChanged, event.Type)
|
||||
assert.Equal(t, "1", event.Data.SessionID)
|
||||
assert.True(t, event.Data.Locked)
|
||||
}
|
||||
|
||||
@@ -2,12 +2,10 @@ package version
|
||||
|
||||
import (
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
mocks_version "github.com/AvengeMedia/DankMaterialShell/core/internal/mocks/version"
|
||||
"github.com/AvengeMedia/DankMaterialShell/core/internal/utils"
|
||||
)
|
||||
|
||||
func TestCompareVersions(t *testing.T) {
|
||||
@@ -150,76 +148,6 @@ func TestGetCurrentDMSVersion_NotInstalled(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetCurrentDMSVersion_GitTag(t *testing.T) {
|
||||
if !utils.CommandExists("git") {
|
||||
t.Skip("git not available")
|
||||
}
|
||||
|
||||
tempDir := t.TempDir()
|
||||
dmsPath := filepath.Join(tempDir, ".config", "quickshell", "dms")
|
||||
os.MkdirAll(dmsPath, 0o755)
|
||||
|
||||
originalHome := os.Getenv("HOME")
|
||||
defer os.Setenv("HOME", originalHome)
|
||||
os.Setenv("HOME", tempDir)
|
||||
|
||||
exec.Command("git", "init", dmsPath).Run()
|
||||
exec.Command("git", "-C", dmsPath, "config", "user.email", "test@test.com").Run()
|
||||
exec.Command("git", "-C", dmsPath, "config", "user.name", "Test User").Run()
|
||||
|
||||
testFile := filepath.Join(dmsPath, "test.txt")
|
||||
os.WriteFile(testFile, []byte("test"), 0o644)
|
||||
exec.Command("git", "-C", dmsPath, "add", ".").Run()
|
||||
exec.Command("git", "-C", dmsPath, "commit", "-m", "initial").Run()
|
||||
exec.Command("git", "-C", dmsPath, "tag", "v0.1.0").Run()
|
||||
|
||||
version, err := GetCurrentDMSVersion()
|
||||
if err != nil {
|
||||
t.Fatalf("GetCurrentDMSVersion() failed: %v", err)
|
||||
}
|
||||
|
||||
if version != "v0.1.0" {
|
||||
t.Errorf("Expected version v0.1.0, got %s", version)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetCurrentDMSVersion_GitBranch(t *testing.T) {
|
||||
if !utils.CommandExists("git") {
|
||||
t.Skip("git not available")
|
||||
}
|
||||
|
||||
tempDir := t.TempDir()
|
||||
dmsPath := filepath.Join(tempDir, ".config", "quickshell", "dms")
|
||||
os.MkdirAll(dmsPath, 0o755)
|
||||
|
||||
originalHome := os.Getenv("HOME")
|
||||
defer os.Setenv("HOME", originalHome)
|
||||
os.Setenv("HOME", tempDir)
|
||||
|
||||
exec.Command("git", "init", dmsPath).Run()
|
||||
exec.Command("git", "-C", dmsPath, "config", "user.email", "test@test.com").Run()
|
||||
exec.Command("git", "-C", dmsPath, "config", "user.name", "Test User").Run()
|
||||
exec.Command("git", "-C", dmsPath, "checkout", "-b", "master").Run()
|
||||
|
||||
testFile := filepath.Join(dmsPath, "test.txt")
|
||||
os.WriteFile(testFile, []byte("test"), 0o644)
|
||||
exec.Command("git", "-C", dmsPath, "add", ".").Run()
|
||||
exec.Command("git", "-C", dmsPath, "commit", "-m", "initial").Run()
|
||||
|
||||
version, err := GetCurrentDMSVersion()
|
||||
if err != nil {
|
||||
t.Fatalf("GetCurrentDMSVersion() failed: %v", err)
|
||||
}
|
||||
|
||||
if version == "" {
|
||||
t.Error("Expected non-empty version")
|
||||
}
|
||||
|
||||
if len(version) < 7 {
|
||||
t.Errorf("Expected version with branch@commit format, got %s", version)
|
||||
}
|
||||
}
|
||||
|
||||
func TestVersionInfo_IsGit(t *testing.T) {
|
||||
tests := []struct {
|
||||
current string
|
||||
|
||||
Reference in New Issue
Block a user