summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ms/ms.go4
-rw-r--r--ms/ms_test.go16
2 files changed, 20 insertions, 0 deletions
diff --git a/ms/ms.go b/ms/ms.go
index da2d201..fc0fe95 100644
--- a/ms/ms.go
+++ b/ms/ms.go
@@ -137,3 +137,7 @@ func (ma *MathematicalSeries[T]) IsNormallyDistributed() bool {
func (ma *MathematicalSeries[T]) Values() []T {
return ma.elements
}
+
+func (ma *MathematicalSeries[T]) Size() int {
+ return len(ma.elements)
+}
diff --git a/ms/ms_test.go b/ms/ms_test.go
index 3eb3b4f..86a5488 100644
--- a/ms/ms_test.go
+++ b/ms/ms_test.go
@@ -99,3 +99,19 @@ func Test_RotatingValues(test *testing.T) {
test.Fatalf("Adding values does not properly erase earlier values.")
}
}
+func Test_Size(test *testing.T) {
+ series := NewMathematicalSeries[int](5)
+
+ series.AddElement(1)
+ series.AddElement(2)
+ series.AddElement(3)
+ series.AddElement(4)
+ series.AddElement(5)
+
+ series.AddElement(6)
+ series.AddElement(7)
+
+ if series.Size() != 5 {
+ test.Fatalf("Series size calculations failed.")
+ }
+}