Statistiques
| Révision :

root / pobysoC-4.0 / src / test-pobyso-is-polynomial-term.sh

Historique | Voir | Annoter | Télécharger (3,24 ko)

1
#! /bin/sh
2
#
3
#
4
TEST_BIN=./test-pobyso-is-polynomial-term
5

    
6
echo
7
## Functions
8
ok_if_fail() {
9
  echo "$@"
10
  eval "$TEST_BIN $ARGUMENTS"
11
if [ $? -eq 0 ] ; then 
12
  echo "Succeeded (but should not have) for $ARGUMENTS"
13
  exit 1
14
fi
15
echo "Correctly failing$WHY."
16
echo
17
}
18
##
19
ok_if_ok() {
20
  echo "$@"
21
  eval "$TEST_BIN $ARGUMENTS"
22
if [ $? -ne 0 ] ; then
23
  echo "Failed for $ARGUMENTS" 
24
  exit 1 
25
fi
26
echo
27
}
28
##
29
ARGUMENTS="\"x\""
30
ok_if_ok "Testing: $ARGUMENTS"
31

    
32
ARGUMENTS="\"1\""
33
ok_if_ok "Testing: $ARGUMENTS"
34

    
35
ARGUMENTS="\"-1\""
36
WHY=" ($ARGUMENTS is not a monomial)"
37
ok_if_ok "Testing: $ARGUMENTS"
38

    
39
ARGUMENTS="\"2\""
40
WHY=" ($ARGUMENTS is not a monomial)"
41
ok_if_ok "Testing: $ARGUMENTS"
42

    
43
ARGUMENTS="\"(x^0)\""
44
ok_if_ok "Testing: $ARGUMENTS"
45

    
46
ARGUMENTS="\"(x^63)\""
47
ok_if_ok "Testing: $ARGUMENTS"
48

    
49
ARGUMENTS="\"x^-2\""
50
WHY=" ($ARGUMENTS is has negative integer exponent)"
51
ok_if_fail "Testing: $ARGUMENTS"
52

    
53
ARGUMENTS="\"x^((2^63)-2)\""
54
ok_if_ok "Testing: $ARGUMENTS"
55

    
56
ARGUMENTS="\"x^((2^63)-1)\""
57
WHY=" (\"2^63-1\" is a too large integer)"
58
ok_if_fail "Testing: $ARGUMENTS"
59

    
60
ARGUMENTS="\"(x^(2))*3\""
61
ok_if_ok "Testing: $ARGUMENTS"
62

    
63
ARGUMENTS="\"cos(pi)\""
64
WHY=" ($ARGUMENTS is a negative integer)"
65
ok_if_ok "Testing: $ARGUMENTS"
66

    
67
ARGUMENTS="\"cos(pi)*x^exp(0)\""
68
WHY=" ($ARGUMENTS is a negative integer)"
69
ok_if_ok "Testing: $ARGUMENTS"
70

    
71
ARGUMENTS="\"x^(2*exp(0))*cos(pi)*4\""
72
WHY=" ($ARGUMENTS is a negative integer)"
73
ok_if_ok "Testing: $ARGUMENTS"
74

    
75
ARGUMENTS="\"x^exp(0)*cos(pi)\""
76
WHY=" ($ARGUMENTS is a negative integer)"
77
ok_if_ok "Testing: $ARGUMENTS"
78

    
79
ARGUMENTS="\"x^sin(pi)\""
80
#WHY=" ($ARGUMENTS is not an integer)"
81
ok_if_ok "Testing: $ARGUMENTS"
82

    
83
##
84
ARGUMENTS="\"x^1.1\""
85
WHY=" ($ARGUMENTS is not an integer)"
86
ok_if_fail "Testing: $ARGUMENTS"
87

    
88
ARGUMENTS="\"x^ceil(1.1)\""
89
WHY=" ($ARGUMENTS is not an integer)"
90
ok_if_ok "Testing: $ARGUMENTS"
91

    
92
ARGUMENTS="\"-1.1\""
93
WHY=" ($ARGUMENTS is not a positive integer)"
94
ok_if_ok "Testing: $ARGUMENTS"
95

    
96
ARGUMENTS="\"x^floor(-1.1)\""
97
WHY=" (\"floor(-1.1)\" is not a positive integer)"
98
ok_if_fail "Testing: $ARGUMENTS"
99

    
100
ARGUMENTS="\"x+2\""
101
WHY=" ($ARGUMENTS is not a monomial)"
102
ok_if_fail "Testing: $ARGUMENTS"
103

    
104
ARGUMENTS="\"x^(2/3)\""
105
WHY=" (\"2/3\" is not an integer)"
106
ok_if_fail "Testing: $ARGUMENTS"
107

    
108
ARGUMENTS="\"x^(2)*(2/3)\""
109
WHY=" ($ARGUMENTS is not an integer)"
110
ok_if_ok "Testing: $ARGUMENTS"
111

    
112
##
113
ARGUMENTS="\"4-2*x+4*x^2\""
114
WHY=" (expression not a polynomial term)"
115
ok_if_fail "Testing: $ARGUMENTS"
116

    
117
##
118
ARGUMENTS="\"yx+\""
119
WHY=" ($ARGUMENTS not expression)"
120
ok_if_fail "Testing: $ARGUMENTS"
121

    
122
##
123
ARGUMENTS="\"1/0\""
124
WHY=" ($ARGUMENTS not a number)"
125
ok_if_fail "Testing: $ARGUMENTS"
126

    
127
##
128
ARGUMENTS="\"exp(1000000)\""
129
WHY=" ($ARGUMENTS is too large)"
130
ok_if_ok "Testing: $ARGUMENTS"
131

    
132
ARGUMENTS="\"-exp(1000000)\""
133
WHY=" ($ARGUMENTS is too small)"
134
ok_if_ok "Testing: $ARGUMENTS"
135

    
136
ARGUMENTS="\"+infty\""
137
WHY=" ($ARGUMENTS is infinity)"
138
ok_if_fail "Testing: $ARGUMENTS"
139

    
140
ARGUMENTS="\"infty\""
141
WHY=" ($ARGUMENTS is infinity)"
142
ok_if_fail "Testing: $ARGUMENTS"
143

    
144
ARGUMENTS="\"-infty\""
145
WHY=" ($ARGUMENTS is infinity)"
146
ok_if_fail "Testing: $ARGUMENTS"
147

    
148
ARGUMENTS="\"-infty*x^2\""
149
WHY=" ($ARGUMENTS has infinity)"
150
ok_if_fail "Testing: $ARGUMENTS"
151

    
152
ARGUMENTS="\"2*x^infty\""
153
WHY=" ($ARGUMENTS has infinity)"
154
ok_if_fail "Testing: $ARGUMENTS"
155

    
156

    
157
##
158
echo "Tests terminated without error."
159
echo