package main

import (
	"io"
	"log/slog"
	"testing"
	"time"
)

func TestSessionTTL(t *testing.T) {
	log := slog.New(slog.NewTextHandler(io.Discard, nil))
	cases := []struct {
		in   string
		want time.Duration
	}{
		{"", 0},
		{"   ", 0},
		{"24h", 24 * time.Hour},
		{" 720h ", 720 * time.Hour},
		{"90m", 90 * time.Minute},
		{"abc", 0}, // geçersiz → varsayılan
		{"0s", 0},  // sıfır → varsayılan
		{"-5h", 0}, // negatif → varsayılan
		{"30", 0},  // birimsiz → varsayılan (yazım hatası oturumu öldürmesin)
	}
	for _, c := range cases {
		if got := sessionTTL(c.in, log); got != c.want {
			t.Errorf("sessionTTL(%q) = %v, istenen %v", c.in, got, c.want)
		}
	}
}
