Documentation ¶
Overview ¶
Generating data for tests is always cumbersome. To make it easier this package should be a single source of truth for generating Jobs data.
This package provides a builder that can generate Jobs with: - preset fields, - randomly generated fields, - fields set on demand.
It can be extended by needs.
Index ¶
- type JobBuilder
- func (b JobBuilder) Build() *models.Job
- func (b JobBuilder) ClientID(clientID string) JobBuilder
- func (b JobBuilder) ClientName(clientName string) JobBuilder
- func (b JobBuilder) Cwd(cwd string) JobBuilder
- func (b JobBuilder) FinishedAt(finishedAt time.Time) JobBuilder
- func (b JobBuilder) IsSudo() JobBuilder
- func (b JobBuilder) JID(jid string) JobBuilder
- func (b JobBuilder) MultiJobID(multiJobID string) JobBuilder
- func (b JobBuilder) Result(result *models.JobResult) JobBuilder
- func (b JobBuilder) StartedAt(startedAt time.Time) JobBuilder
- func (b JobBuilder) Status(status string) JobBuilder
- type MultiJobBuilder
- func (b MultiJobBuilder) AbortOnErr(abortOnErr bool) MultiJobBuilder
- func (b MultiJobBuilder) Build() *models.MultiJob
- func (b MultiJobBuilder) ClientIDs(clientIDs ...string) MultiJobBuilder
- func (b MultiJobBuilder) Concurrent(concurrent bool) MultiJobBuilder
- func (b MultiJobBuilder) JID(jid string) MultiJobBuilder
- func (b MultiJobBuilder) ScheduleID(scheduleID string) MultiJobBuilder
- func (b MultiJobBuilder) StartedAt(startedAt time.Time) MultiJobBuilder
- func (b MultiJobBuilder) WithCwd(cwd string) MultiJobBuilder
- func (b MultiJobBuilder) WithJobs() MultiJobBuilder
- func (b MultiJobBuilder) WithSudo() MultiJobBuilder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type JobBuilder ¶
type JobBuilder struct {
// contains filtered or unexported fields
}
func New ¶
func New(t *testing.T) JobBuilder
New returns a builder to generate a job that can be used in tests.
func (JobBuilder) Build ¶
func (b JobBuilder) Build() *models.Job
func (JobBuilder) ClientID ¶
func (b JobBuilder) ClientID(clientID string) JobBuilder
func (JobBuilder) ClientName ¶
func (b JobBuilder) ClientName(clientName string) JobBuilder
func (JobBuilder) Cwd ¶
func (b JobBuilder) Cwd(cwd string) JobBuilder
func (JobBuilder) FinishedAt ¶
func (b JobBuilder) FinishedAt(finishedAt time.Time) JobBuilder
func (JobBuilder) IsSudo ¶
func (b JobBuilder) IsSudo() JobBuilder
func (JobBuilder) JID ¶
func (b JobBuilder) JID(jid string) JobBuilder
func (JobBuilder) MultiJobID ¶
func (b JobBuilder) MultiJobID(multiJobID string) JobBuilder
func (JobBuilder) Result ¶
func (b JobBuilder) Result(result *models.JobResult) JobBuilder
func (JobBuilder) StartedAt ¶
func (b JobBuilder) StartedAt(startedAt time.Time) JobBuilder
func (JobBuilder) Status ¶
func (b JobBuilder) Status(status string) JobBuilder
type MultiJobBuilder ¶
type MultiJobBuilder struct {
// contains filtered or unexported fields
}
func NewMulti ¶
func NewMulti(t *testing.T) MultiJobBuilder
NewMulti returns a builder to generate a multi-client job that can be used in tests.
func (MultiJobBuilder) AbortOnErr ¶
func (b MultiJobBuilder) AbortOnErr(abortOnErr bool) MultiJobBuilder
func (MultiJobBuilder) Build ¶
func (b MultiJobBuilder) Build() *models.MultiJob
func (MultiJobBuilder) ClientIDs ¶
func (b MultiJobBuilder) ClientIDs(clientIDs ...string) MultiJobBuilder
func (MultiJobBuilder) Concurrent ¶
func (b MultiJobBuilder) Concurrent(concurrent bool) MultiJobBuilder
func (MultiJobBuilder) JID ¶
func (b MultiJobBuilder) JID(jid string) MultiJobBuilder
func (MultiJobBuilder) ScheduleID ¶
func (b MultiJobBuilder) ScheduleID(scheduleID string) MultiJobBuilder
func (MultiJobBuilder) StartedAt ¶
func (b MultiJobBuilder) StartedAt(startedAt time.Time) MultiJobBuilder
func (MultiJobBuilder) WithCwd ¶
func (b MultiJobBuilder) WithCwd(cwd string) MultiJobBuilder
func (MultiJobBuilder) WithJobs ¶
func (b MultiJobBuilder) WithJobs() MultiJobBuilder
func (MultiJobBuilder) WithSudo ¶
func (b MultiJobBuilder) WithSudo() MultiJobBuilder
Click to show internal directories.
Click to hide internal directories.