-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMouli_106
executable file
·120 lines (108 loc) · 3.92 KB
/
Mouli_106
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#!/usr/bin/env bash
cyanclair='\e[1;36m'
vertclair='\e[1;32m'
rougefonce='\e[0;31m'
violetclair='\e[1;35m'
rose='\e[1;31m'
bleufonce='\e[0;34m'
bleuclair='\e[1;34m'
grisclair='\e[0;37m'
jaune='\e[1;33m'
blanc='\e[1;37m'
neutre='\e[0;39m'
testrigor()
{
./106bombyx $1 &> saveres
if [ "$?" -eq $3 ]
then
echo -e "${violetclair}TEST : ${cyanclair}$2\t\e[32mPASSED\e[39m"
EXIT=0
else
echo -e "${violetclair}TEST : ${cyanclair}$2\t\e[91mFAIL\e[39m"
EXIT=1
fi
}
test()
{
EXIT=0
./106bombyx $1 &> saveres
if [ $4 -eq "1" ]
then
diff Mouli_106/result_output/$2 saveres &> /dev/null
if [ "$?" -eq $3 ]
then
echo -e "${violetclair}TEST : ${cyanclair}$2\t\e[32mPASSED\e[39m"
else
echo -e "${violetclair}TEST : ${cyanclair}$2\t\e[91mFAIL\e[39m"
diff Mouli_106/result_output/$2 saveres &> Mouli_106/diff_result/$5
EXIT=1
echo -e "${jaune}Do you Want to see diff (y/n)${blanc}"
read see_diff
if [ $see_diff == "y" ]
then
cat Mouli_106/diff_result/$5
echo "" >> Mouli_106/diff_result/$5
diff -y Mouli_106/result_output/$2 saveres >> Mouli_106/diff_result/$5
echo -e "${jaune}Result save in Mouli_106/diff_result/$5"
fi
fi
fi
}
echo -e "${rose}Debut des tests rigor."
testrigor "10 0.0" "invalid argument if 1" "84"
testrigor "10 4.1" "invalid argument if 2" "84"
testrigor "2 -2" "invalid argument ii 1" "84"
testrigor "4 5" "invalid argument ii 2" "84"
testrigor "-10 1000 1010" "invalid argument k 1" "84"
testrigor "-1 2" "invalid argument k 2" "84"
testrigor "0 3.3" "invalid argument n" "0"
testrigor "" "no argument" "84"
testrigor "10 -10 -166" "nonsensical arguments 1" "84"
testrigor "-1 -1 -1" "nonsensical arguments 2" "84"
testrigor "10 -10 13" "nonsensical arguments 3" "84"
testrigor "1 0" "not enough arguments 1" "84"
testrigor "1 2 3 4" "not enough arguments 2" "84"
echo -e "${rose}Fin des tests basic."
echo -e ""
echo -e "${rose}Debut des tests basic."
test "10 3.3" "1a-number_of_individuals" "0" "1" "diff_test_1a"
test "10 10000 10010" "trivial_number_of_individuals" "0" "1" "diff_test_1b"
echo -e "${rose}Fin des tests basic."
echo -e ""
echo -e "${rose}Debut des tests de mathematical rigor."
testrigor "0 0" "2a-rigor1" "84"
test "0 0 0" "2b-rigor1" "0" "1" "diff_test_2b"
test "1000 1 2" "2c-rigor1" "0" "1" "diff_test_2c"
test "2000 1 2" "2d-rigor1" "0" "1" "diff_test_2d"
echo -e "${rose}Fin des tests de mathematical rigor."
echo -e ""
echo -e "${rose}Debut des tests des number of individuals."
test "1 1.1" "3a-nbindiv" "0" "1" "diff_test_3a"
test "2 1.1" "3b-nbindiv" "0" "1" "diff_test_3b"
test "3 1.1" "3c-nbindiv" "0" "1" "diff_test_3c"
test "4 1.1" "3d-nbindiv" "0" "1" "diff_test_3d"
test "1 3.4" "3e-nbindiv" "0" "1" "diff_test_3b"
test "2 3.4" "3f-nbindiv" "0" "1" "diff_test_3c"
test "3 3.4" "3g-nbindiv" "0" "1" "diff_test_3d"
test "4 3.4" "3h-nbindiv" "0" "1" "diff_test_3b"
test "1 2.5" "3i-nbindiv" "0" "1" "diff_test_3c"
test "1 2.15" "3j-nbindiv" "0" "1" "diff_test_3d"
echo -e "${rose}Fin des tests de number of individuals."
echo -e ""
echo -e "${rose}Debut des tests de trivial."
test "10 10 155" "4a-nbindiv" "0" "1" "diff_test_4a"
test "20 20 350" "4b-nbindiv" "0" "1" "diff_test_4b"
test "1000 1000 4000" "4c-nbindiv" "0" "1" "diff_test_4c"
test "4000 5000 6000" "4d-nbindiv" "0" "1" "diff_test_4d"
test "7000 6000 8000" "4e-nbindiv" "0" "1" "diff_test_4b"
test "4000 6500 9845" "4f-nbindiv" "0" "1" "diff_test_4c"
test "845 956 8451" "4g-nbindiv" "0" "1" "diff_test_4d"
test "8451 9562 10522" "4h-nbindiv" "0" "1" "diff_test_4b"
test "1 1 2" "4i-nbindiv" "0" "1" "diff_test_4c"
test "1 1 6" "4j-nbindiv" "0" "1" "diff_test_4d"
echo -e "${rose}Fin des tests de trivial."
echo -e ""
echo -e "${violetclair}By Yoel Enjoy <3"
echo -e "${neutre}"
rm -f saveres
exit $EXIT