-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomptemax_test.go
47 lines (40 loc) · 1.39 KB
/
comptemax_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package comptemax
import "testing"
func TestUn(t *testing.T) {
val, nombre := compteMax([]int{1, 2, 3})
if val != 3 {
t.Error("Vous dites que le plus grand entier apparaissant dans le tableau [1 2 3] est", val, "alors que c'est 3")
} else if nombre != 1 {
t.Error("Vous dites que le plus grande entier (3) dans le tableau [1 2 3] apparaît", nombre, "fois alors qu'il apparaît 1 fois")
}
}
func TestPlusieurs(t *testing.T) {
val, nombre := compteMax([]int{1, 1, 2, 2, 3, 3})
if val != 3 {
t.Error("Vous dites que le plus grand entier apparaissant dans le tableau [1 1 2 2 3 3] est", val, "alors que c'est 3")
} else if nombre != 2 {
t.Error("Vous dites que le plus grande entier (3) dans le tableau [1 1 2 2 3 3] apparaît", nombre, "fois alors qu'il apparaît 2 fois")
}
}
// Ajouté après le DS
type test struct {
t []int
val int
nombre int
}
var testSet []test = []test{
{t: nil, nombre: 0},
{t: []int{}, nombre: 0},
{t: []int{1, 2, 3}, val: 3, nombre: 1},
{t: []int{1, 1, 2, 2, 3, 3}, val: 3, nombre: 2},
{t: []int{3, 2, 1, 3, 2, 1, 3, 2, 1, 3}, val: 3, nombre: 4},
{t: []int{3, 2, 1, 4, 3, 2, 1, 4, 3, 2, 1}, val: 4, nombre: 2},
}
func TestGeneral(t *testing.T) {
for numTest, aTester := range testSet {
val, nombre := compteMax(aTester.t)
if nombre != aTester.nombre || (nombre > 0 && val != aTester.val) {
t.Error("Erreur sur l'entrée", numTest, "de testSet")
}
}
}