package main

import "testing"

// Sunucu basarili girisi dogrudan belge olarak da, zarf icinde de dondurebilir.
func TestKullaniciKimligiCevapta(t *testing.T) {
	const id = "65f1a2b3c4d5e6f708192a3b"
	durumlar := map[string]map[string]any{
		"duz metin": {"_id": id},
		"$oid":      {"_id": map[string]any{"$oid": id}},
		"zarf":      {"durum": map[string]any{"hata": false}, "sonuc": map[string]any{"_id": id}},
		"zarf-body": {"sonuc": map[string]any{"body": map[string]any{"_id": id}}},
		"zarf-oid":  {"sonuc": map[string]any{"_id": map[string]any{"$oid": id}}},
	}
	for ad, cevap := range durumlar {
		if got := kullaniciKimligiCevapta(cevap); got != id {
			t.Errorf("%s: kimlik %q, beklenen %q", ad, got, id)
		}
	}
	if got := kullaniciKimligiCevapta(map[string]any{"durum": map[string]any{}, "sonuc": nil}); got != "" {
		t.Errorf("kimlik yokken bos donmeliydi, %q geldi", got)
	}
}
