2025-02-08 23:02:51 +00:00
|
|
|
package experiments
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
2025-02-23 10:51:59 +01:00
|
|
|
"strconv"
|
2025-02-08 23:02:51 +00:00
|
|
|
"strings"
|
2025-02-23 10:51:59 +01:00
|
|
|
|
|
|
|
"github.com/go-task/task/v3/internal/slicesext"
|
2025-02-08 23:02:51 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
type InvalidValueError struct {
|
|
|
|
Name string
|
2025-02-23 10:51:59 +01:00
|
|
|
AllowedValues []int
|
|
|
|
Value int
|
2025-02-08 23:02:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func (err InvalidValueError) Error() string {
|
|
|
|
return fmt.Sprintf(
|
|
|
|
"task: Experiment %q has an invalid value %q (allowed values: %s)",
|
|
|
|
err.Name,
|
|
|
|
err.Value,
|
2025-02-23 10:51:59 +01:00
|
|
|
strings.Join(slicesext.Convert(err.AllowedValues, strconv.Itoa), ", "),
|
2025-02-08 23:02:51 +00:00
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
type InactiveError struct {
|
|
|
|
Name string
|
|
|
|
}
|
|
|
|
|
|
|
|
func (err InactiveError) Error() string {
|
|
|
|
return fmt.Sprintf(
|
|
|
|
"task: Experiment %q is inactive and cannot be enabled",
|
|
|
|
err.Name,
|
|
|
|
)
|
|
|
|
}
|