Update testtool change detection
This commit is contained in:
parent
bcaec6acb1
commit
b4aab678fa
1 changed files with 23 additions and 4 deletions
|
@ -15,8 +15,9 @@ const timeFormat = "02-01-2006 15:04"
|
|||
|
||||
type (
|
||||
Task struct {
|
||||
Name string `yaml:"task"`
|
||||
Score int `yaml:"score"`
|
||||
Name string `yaml:"task"`
|
||||
Score int `yaml:"score"`
|
||||
Watch []string `yaml:"watch"`
|
||||
}
|
||||
|
||||
Group struct {
|
||||
|
@ -34,6 +35,16 @@ func (g Group) IsOpen() bool {
|
|||
return time.Until(t) < 0
|
||||
}
|
||||
|
||||
func (d Deadlines) Tasks() []*Task {
|
||||
var tasks []*Task
|
||||
for _, g := range d {
|
||||
for i := range g.Tasks {
|
||||
tasks = append(tasks, &g.Tasks[i])
|
||||
}
|
||||
}
|
||||
return tasks
|
||||
}
|
||||
|
||||
func (d Deadlines) FindTask(name string) (*Group, *Task) {
|
||||
for _, g := range d {
|
||||
for _, t := range g.Tasks {
|
||||
|
@ -80,11 +91,19 @@ func findChangedTasks(d Deadlines, files []string) []string {
|
|||
}
|
||||
|
||||
_, task := d.FindTask(components[0])
|
||||
if task == nil {
|
||||
if task != nil {
|
||||
tasks[task.Name] = struct{}{}
|
||||
continue
|
||||
}
|
||||
|
||||
tasks[task.Name] = struct{}{}
|
||||
for _, task := range d.Tasks() {
|
||||
for _, path := range task.Watch {
|
||||
if components[0] == path {
|
||||
tasks[task.Name] = struct{}{}
|
||||
continue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var l []string
|
||||
|
|
Loading…
Reference in a new issue