ipapi/internal/log/log_test.go
sneak 2a1710cca8 Implement IP API daemon with GeoIP database support
- Create modular architecture with separate packages for config, database, HTTP, logging, and state management
- Implement Cobra CLI with daemon command
- Set up Uber FX dependency injection
- Add Chi router with health check and IP lookup endpoints
- Implement GeoIP database downloader with automatic updates
- Add state persistence for tracking database download times
- Include comprehensive test coverage for all components
- Configure structured logging with slog
- Add Makefile with test, lint, and build targets
- Support both IPv4 and IPv6 lookups
- Return country, city, ASN, and location data in JSON format
2025-07-27 18:15:38 +02:00

39 lines
662 B
Go

package log
import (
"testing"
"git.eeqj.de/sneak/ipapi/internal/config"
)
func TestNew(t *testing.T) {
tests := []struct {
name string
logLevel string
}{
{"debug level", "debug"},
{"info level", "info"},
{"warn level", "warn"},
{"warning level", "warning"},
{"error level", "error"},
{"invalid level", "invalid"},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
cfg := &config.Config{
LogLevel: tt.logLevel,
}
logger := New(cfg)
if logger == nil {
t.Fatal("expected logger, got nil")
}
})
}
}
func TestIsTerminal(t *testing.T) {
// Just test that it doesn't panic
_ = isTerminal()
}