mirror of
https://github.com/safedep/pmg.git
synced 2026-08-03 07:24:09 +02:00
refactor: Event log use audit event as SSOT (#350)
This commit is contained in:
@@ -3,36 +3,36 @@ package audit
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/safedep/pmg/internal/eventlog"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestEventlogSinkTranslatesAllEventTypes(t *testing.T) {
|
||||
// TestEventTypeOnDiskValues pins the event_type strings written to the on-disk
|
||||
// event log. The audit package is the single owner of this vocabulary; the
|
||||
// eventlog sink writes string(event.Type) verbatim, so these values are the
|
||||
// file-format contract and must not change without a migration.
|
||||
func TestEventTypeOnDiskValues(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
input EventType
|
||||
expected eventlog.EventType
|
||||
expected string
|
||||
}{
|
||||
{"malware_blocked", EventTypeMalwareBlocked, eventlog.EventTypeMalwareBlocked},
|
||||
{"malware_confirmed", EventTypeMalwareConfirmed, eventlog.EventTypeMalwareConfirmed},
|
||||
{"install_allowed", EventTypeInstallAllowed, eventlog.EventTypeInstallAllowed},
|
||||
{"install_trusted_allowed", EventTypeInstallTrustedAllowed, eventlog.EventTypeInstallTrustedAllowed},
|
||||
{"install_started", EventTypeInstallStarted, eventlog.EventTypeInstallStarted},
|
||||
{"dependency_resolved", EventTypeDependencyResolved, eventlog.EventTypeDependencyResolved},
|
||||
{"install_insecure_bypass", EventTypeInstallInsecureBypass, eventlog.EventTypeInstallInsecureBypass},
|
||||
{"proxy_host_observed", EventTypeProxyHostObserved, eventlog.EventTypeProxyHostObserved},
|
||||
{"dependency_cooldown", EventTypeDependencyCooldown, eventlog.EventTypeDependencyCooldown},
|
||||
{"dependency_cooldown_skipped", EventTypeCooldownSkipped, eventlog.EventTypeCooldownSkipped},
|
||||
{"sandbox_override", EventTypeSandboxOverride, eventlog.EventTypeSandboxOverride},
|
||||
{"error", EventTypeError, eventlog.EventTypeError},
|
||||
{"session_complete", EventTypeSessionComplete, eventlog.EventType("session_complete")},
|
||||
{"unknown_type", EventType("custom_event"), eventlog.EventType("custom_event")},
|
||||
{EventTypeMalwareBlocked, "malware_blocked"},
|
||||
{EventTypeMalwareConfirmed, "malware_confirmed"},
|
||||
{EventTypeInstallAllowed, "install_allowed"},
|
||||
{EventTypeInstallTrustedAllowed, "install_trusted_allowed"},
|
||||
{EventTypeInstallStarted, "install_started"},
|
||||
{EventTypeDependencyResolved, "dependency_resolved"},
|
||||
{EventTypeInstallInsecureBypass, "install_insecure_bypass"},
|
||||
{EventTypeProxyHostObserved, "proxy_host_observed"},
|
||||
{EventTypeDependencyCooldown, "dependency_cooldown"},
|
||||
{EventTypeCooldownSkipped, "dependency_cooldown_skipped"},
|
||||
{EventTypeSandboxOverride, "sandbox_override"},
|
||||
{EventTypeError, "error"},
|
||||
{EventTypeSessionComplete, "session_complete"},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
result := mapEventType(tt.input)
|
||||
assert.Equal(t, tt.expected, result)
|
||||
t.Run(tt.expected, func(t *testing.T) {
|
||||
assert.Equal(t, tt.expected, string(tt.input))
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user