summaryrefslogtreecommitdiff
path: root/series/series_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'series/series_test.go')
-rw-r--r--series/series_test.go37
1 files changed, 35 insertions, 2 deletions
diff --git a/series/series_test.go b/series/series_test.go
index 5d2ab57..3ed752d 100644
--- a/series/series_test.go
+++ b/series/series_test.go
@@ -95,6 +95,25 @@ func Test_ForeverValues(test *testing.T) {
}
}
+func Test_WindowOnly_no_values_getvalues(test *testing.T) {
+ expectedLen := 5
+ series := newWindowSeriesWindowOnlyImpl[float64, int](5)
+ result := series.GetValues()
+ allZeros := true
+ for _, v := range result {
+ if utilities.IsSome(v) {
+ allZeros = false
+ break
+ }
+ }
+ if len(result) != expectedLen {
+ test.Fatalf("GetValues of empty window-only series returned list with incorrect size.")
+ }
+ if !allZeros {
+ test.Fatalf("GetValues of empty window-only series returned list with some values.")
+ }
+}
+
func Test_WindowOnlySequentialIncreasesAlwaysLessThan(test *testing.T) {
series := newWindowSeriesWindowOnlyImpl[float64, int](10)
previous := float64(1.0)
@@ -154,11 +173,18 @@ func Test_Forever_degenerate_percentile_too_high(test *testing.T) {
func Test_Forever_degenerate_percentile_too_low(test *testing.T) {
series := newWindowSeriesForeverImpl[int, int]()
- if complete, result := Percentile[int, int](series, -1); !complete || result != 0.0 {
+ if complete, result := Percentile[int, int](series, 0); !complete || result != 0.0 {
test.Fatalf("(infinite) Series percentile of -1 failed.")
}
}
+func Test_Forever_degenerate_percentile_no_values(test *testing.T) {
+ series := newWindowSeriesForeverImpl[int, int]()
+ if complete, p := Percentile[int, int](series, 50); !complete || p != 0 {
+ test.Fatalf("empty series percentile of 50 failed.")
+ }
+}
+
///////////
func Test_Forever90_percentile(test *testing.T) {
@@ -557,11 +583,18 @@ func Test_WindowOnly_degenerate_percentile_too_high(test *testing.T) {
func Test_WindowOnly_degenerate_percentile_too_low(test *testing.T) {
series := newWindowSeriesWindowOnlyImpl[int, int](21)
- if complete, p := Percentile[int, int](series, -1); complete != false || p != 0 {
+ if complete, p := Percentile[int, int](series, 0); complete != false || p != 0 {
test.Fatalf("Series percentile of -1 failed.")
}
}
+func Test_WindowOnly_degenerate_percentile_no_values(test *testing.T) {
+ series := newWindowSeriesWindowOnlyImpl[int, int](0)
+ if complete, p := Percentile[int, int](series, 50); !complete || p != 0 {
+ test.Fatalf("empty series percentile of 50 failed.")
+ }
+}
+
func Test_WindowOnly90_percentile(test *testing.T) {
var expected int = 10
series := newWindowSeriesWindowOnlyImpl[int, int](10)