parent
34f16f3259
commit
fa4dd1a518
|
|
@ -92,13 +92,21 @@ func (fe FastExact) setHeaders(req *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (fe FastExact) search(states []config.State) ([]Job, error) {
|
func (fe FastExact) search(states []config.State) ([]Job, error) {
|
||||||
var result []Job
|
var jobs []Job
|
||||||
for _, state := range states {
|
for _, state := range states {
|
||||||
jobs, err := fe.searchOne(state)
|
subjobs, err := fe.searchOne(state)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
result = append(result, jobs...)
|
jobs = append(jobs, subjobs...)
|
||||||
|
}
|
||||||
|
dedupeJobs := map[string]Job{}
|
||||||
|
for _, job := range jobs {
|
||||||
|
dedupeJobs[job.UID()] = job
|
||||||
|
}
|
||||||
|
result := []Job{}
|
||||||
|
for _, job := range dedupeJobs {
|
||||||
|
result = append(result, job)
|
||||||
}
|
}
|
||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -65,8 +65,8 @@ func TestFastExactSearch(t *testing.T) {
|
||||||
_ = db
|
_ = db
|
||||||
if jobs, err := fe.search([]config.State{config.State("NC"), config.State("SC")}); err != nil {
|
if jobs, err := fe.search([]config.State{config.State("NC"), config.State("SC")}); err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
} else if len(jobs) != 20 {
|
} else if len(jobs) != 10 {
|
||||||
t.Fatal(jobs)
|
t.Fatal(len(jobs))
|
||||||
} else {
|
} else {
|
||||||
for _, job := range jobs {
|
for _, job := range jobs {
|
||||||
if job.ID == "" {
|
if job.ID == "" {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue