root / pobysoC-4.0 / src / test-pobyso-is-polynomial-term.sh @ 150
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 |