MCPcopy Create free account
hub / github.com/TheAlgorithms/Go / TestMean

Function TestMean

math/mean_test.go:8–52  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

6)
7
8func TestMean(t *testing.T) {
9 testCases := []struct {
10 name string
11 testValues []float64
12 average float64
13 }{
14 {
15 name: "All 0s",
16 testValues: []float64{0, 0, 0, 0, 0},
17 average: 0,
18 },
19 {
20 name: "With integer values",
21 testValues: []float64{1, 2, 3, 4, 5},
22 average: 3.0,
23 },
24 {
25 name: "With negative values",
26 testValues: []float64{-1, 2, -3, 4, 5},
27 average: 1.4,
28 },
29 {
30 name: "With floating values",
31 testValues: []float64{1.1, 2.2, 3.3, 4.4, 5.5},
32 average: 3.3,
33 },
34 {
35 name: "With no values",
36 testValues: []float64{},
37 average: 0,
38 },
39 }
40
41 for _, test := range testCases {
42 t.Run(test.name, func(t *testing.T) {
43 returnedAverage := math.Mean(test.testValues)
44 if returnedAverage != test.average {
45 t.Errorf("\nFailed test: %s\ntestValues: %v\naverage: %v\nbut received: %v\n",
46 test.name, test.testValues, test.average, returnedAverage)
47 }
48
49 })
50 }
51
52}

Callers

nothing calls this directly

Calls 1

MeanFunction · 0.92

Tested by

no test coverage detected