1
0
Fork 0
This repository has been archived on 2025-08-23. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
mareshq-backoffice-v3-api/internal/faker/faker.go

71 lines
1.5 KiB
Go

package faker
import (
"context"
"github.com/shopspring/decimal"
"gitlab.mareshq.com/hq/backoffice/backoffice-api/internal/currency"
"gitlab.mareshq.com/hq/backoffice/backoffice-api/internal/training"
)
type Faker struct {
trainingRepository training.Repository
}
func NewFaker(trainingRepository training.Repository) *Faker {
return &Faker{
trainingRepository: trainingRepository,
}
}
func (f *Faker) GenerateFakeData() error {
var t *training.Training
oneDayPricing := []training.Price{
{
Currency: currency.CZK,
Amount: decimal.NewFromInt(5900),
Type: training.OpenTrainingPriceType,
},
{
Currency: currency.CZK,
Amount: decimal.NewFromInt(24000),
Type: training.CorporateTrainingPriceType,
},
}
twoDayPricing := []training.Price{
{
Currency: currency.CZK,
Amount: decimal.NewFromInt(9900),
Type: training.OpenTrainingPriceType,
},
{
Currency: currency.CZK,
Amount: decimal.NewFromInt(44000),
Type: training.CorporateTrainingPriceType,
},
}
t = training.NewTraining("Kubernetes v1", 1, nil)
err := f.trainingRepository.Create(context.Background(), t)
if err != nil {
return err
}
t = training.NewTraining("Kubernetes", 2, twoDayPricing)
err = f.trainingRepository.Create(context.Background(), t)
if err != nil {
return err
}
t = training.NewTraining("Terraform", 1, oneDayPricing)
err = f.trainingRepository.Create(context.Background(), t)
if err != nil {
return err
}
return nil
}