35 lines
1.0 KiB
Go
35 lines
1.0 KiB
Go
package tindakan
|
|
|
|
import "testing"
|
|
|
|
func TestTindakanResponse(t *testing.T) {
|
|
dataSet := []struct {
|
|
model TindakanModel
|
|
expected TindakanResponse
|
|
}{
|
|
{
|
|
model: TindakanModel{KodeTindakan: "XXX", Keterangan: "Tindakan X"},
|
|
expected: TindakanResponse{Kode: "XXX", Keterangan: "Tindakan X", Select: "XXX | Tindakan X"},
|
|
},
|
|
{
|
|
model: TindakanModel{KodeTindakan: "YYY", Keterangan: "Tindakan Y"},
|
|
expected: TindakanResponse{Kode: "YYY", Keterangan: "Tindakan Y", Select: "YYY | Tindakan Y"},
|
|
},
|
|
{
|
|
model: TindakanModel{KodeTindakan: "ZZZ", Keterangan: "Tindakan Z"},
|
|
expected: TindakanResponse{Kode: "ZZZ", Keterangan: "Tindakan Z", Select: "ZZZ | Tindakan Z"},
|
|
},
|
|
}
|
|
|
|
t.Run("test parsing tindakan", func(t *testing.T) {
|
|
for _, tt := range dataSet {
|
|
response := tt.model.ToResponse()
|
|
|
|
if response.Kode != tt.expected.Kode || response.Keterangan != tt.expected.Keterangan || response.Select != tt.expected.Select {
|
|
t.Fatalf("expected %v got %v", tt.expected, response)
|
|
}
|
|
}
|
|
|
|
})
|
|
}
|