Files
api-antrian-operasi/internal/domain/reference/dokter/dokter_test.go
T
2026-02-06 09:47:53 +07:00

53 lines
1.3 KiB
Go

package dokter
import (
"database/sql"
"testing"
)
func TestParsingDokter(t *testing.T) {
testData := []struct {
data DokterModel
expected string
}{
{
data: DokterModel{NamaDepan: "Agus", NamaBelakang: "Bayu"},
expected: "AGUS BAYU",
},
{
data: DokterModel{NamaDepan: "Chandra", NamaBelakang: "Dinata"},
expected: "CHANDRA DINATA",
},
{
data: DokterModel{NamaDepan: "Eka", NamaBelakang: "Fahmi"},
expected: "EKA FAHMI",
},
}
t.Run("test parsing nama lengkap dokter", func(t *testing.T) {
for _, tt := range testData {
response := tt.data.ToResponse()
if response.NamaLengkap != tt.expected {
t.Fatalf("expected %v got %v", tt.expected, response.NamaLengkap)
}
}
})
}
func TestParsingListDokter(t *testing.T) {
listModel := ListDokterModel{
DokterModel{"test-id-1", "test-nip-1", "A", "B", sql.NullString{}, "test-ksm-1"},
DokterModel{"test-id-2", "test-nip-2", "C", "D", sql.NullString{}, "test-ksm-2"},
DokterModel{"test-id-3", "test-nip-3", "E", "F", sql.NullString{}, "test-ksm-3"},
}
t.Run("test length model list and list response", func(t *testing.T) {
response := listModel.ToResponseList()
if len(listModel) != len(response) {
t.Fatalf("length difference between model and response")
}
})
}