wstempl/mock/mockv2.go
2025-05-23 18:35:45 +07:00

50 lines
1.0 KiB
Go

package mock
import (
"fmt"
"git.proximination.com/pclatihan/wstempl/model"
"github.com/brianvoe/gofakeit/v7"
)
type MockV2 struct{}
func NewMockV2() *MockV2 {
return &MockV2{}
}
func (m MockV2) GetBarang(nama string) (model.Barang, error) {
model := model.Barang{
Nama: nama,
Merk: gofakeit.Name(),
Panjang: gofakeit.Numerify("#"),
Lebar: gofakeit.Numerify("#"),
Tinggi: gofakeit.Numerify("#"),
Unit: gofakeit.AppName(),
Status: gofakeit.RandomString([]string{"Sehat", "Rusak", "Dicuri Orang"}),
}
return model, nil
}
func (m MockV2) GetDaftarBarang() (model.DaftarBarang, error) {
daftar := model.DaftarBarang{
Items: DaftarBoongan(25),
}
return daftar, nil
}
func DaftarBoongan(num int) []model.BarangDalamList {
result := []model.BarangDalamList{}
for i := 0; i < num; i++ {
nama := gofakeit.Word()
data := model.BarangDalamList{
Nama: nama,
Merk: gofakeit.ProductCategory(),
Url: fmt.Sprintf("barang/%s", nama),
}
result = append(result, data)
}
return result
}