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") } }) }