Merge pull request #1440 from dydysy/fix_dot_calc

FIX: [indicator] Possibly incorrect assignment
This commit is contained in:
c9s 2023-12-08 09:51:30 +08:00 committed by GitHub
commit c74ba4f406
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 10 deletions

View File

@ -327,29 +327,29 @@ func Dot(a interface{}, b interface{}, limit ...int) float64 {
aas = tp
isaf = false
default:
panic("input should be either Series or float64")
panic("input should be either *Series or numbers")
}
switch tp := b.(type) {
case float64:
bbf = tp
isbf = true
case int32:
aaf = float64(tp)
isaf = true
bbf = float64(tp)
isbf = true
case int64:
aaf = float64(tp)
isaf = true
bbf = float64(tp)
isbf = true
case float32:
aaf = float64(tp)
isaf = true
bbf = float64(tp)
isbf = true
case int:
aaf = float64(tp)
isaf = true
bbf = float64(tp)
isbf = true
case Series:
bbs = tp
isbf = false
default:
panic("input should be either Series or float64")
panic("input should be either *Series or numbers")
}
l := 1

View File

@ -215,6 +215,10 @@ func TestDot(t *testing.T) {
assert.InDelta(t, out2, 3., 0.001)
out3 := Dot(3., &a, 2)
assert.InDelta(t, out2, out3, 0.001)
out4 := Dot(&a, 3, 2)
assert.InDelta(t, out2, 3., 0.001)
out5 := Dot(3, &a, 2)
assert.InDelta(t, out4, out5, 0.001)
}
func TestClone(t *testing.T) {