Able to check submission
This commit is contained in:
parent
a9f35d224b
commit
e3f7cce80a
4 changed files with 51 additions and 3 deletions
|
@ -1,6 +1,7 @@
|
|||
package fic
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"time"
|
||||
)
|
||||
|
||||
|
@ -109,3 +110,27 @@ func (e Exercice) Solved(t Team) error {
|
|||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
func (e Exercice) CheckResponse(response string, t Team) (bool, error) {
|
||||
if t.HasSolved(e) {
|
||||
return true, nil
|
||||
}
|
||||
|
||||
if err := e.NewTry(t); err != nil {
|
||||
return false, err
|
||||
} else if keys, err := e.GetKeys(); err != nil {
|
||||
return false, err
|
||||
} else {
|
||||
if len(keys) < 1 {
|
||||
return true, errors.New("Exercice with no key registered")
|
||||
}
|
||||
|
||||
for _, k := range keys {
|
||||
if !k.Check(response) {
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
}
|
||||
|
|
Reference in a new issue