first version in go
This commit is contained in:
1 parent
cbe79afd1f
commit
a8d34856b2
2 files changed
+260
No files matched your search
@@ -0,0 +1,47 @@
|
||||
package glicko2
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"math"
|
||||
)
|
||||
|
||||
func inRange(want float64, have float64, delta float64) bool {
|
||||
return math.Abs(want-have) <= delta
|
||||
}
|
||||
|
||||
func TestGlicko2(t *testing.T) {
|
||||
a := NewGlicko2(1500.0, 200.0, 0.06)
|
||||
b := NewGlicko2(1400.0, 30.0, 0.06)
|
||||
c := NewGlicko2(1550.0, 100.0, 0.06)
|
||||
d := NewGlicko2(1700.0, 300.0, 0.06)
|
||||
|
||||
a.AddWin(b)
|
||||
a.AddLoss(c)
|
||||
a.AddLoss(d)
|
||||
|
||||
if a.Rating() != 1500.0 {
|
||||
t.Error()
|
||||
}
|
||||
if a.Deviation() != 200.0 {
|
||||
t.Error()
|
||||
}
|
||||
|
||||
a.Update()
|
||||
|
||||
if !inRange(a.Rating(),1464.05,0.01) {
|
||||
t.Error()
|
||||
}
|
||||
if !inRange(a.Deviation(),151.516,0.01) {
|
||||
t.Error()
|
||||
}
|
||||
|
||||
a.Update()
|
||||
|
||||
if !inRange(a.Rating(),1464.05,0.01) {
|
||||
t.Error()
|
||||
}
|
||||
if !inRange(a.Deviation(),151.875,0.01) {
|
||||
t.Error()
|
||||
}
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user