Statistiques
| Révision :

root / pobysoC-4.0 / src / test-pobyso-is-monomial.sh @ 144

Historique | Voir | Annoter | Télécharger (2,58 ko)

1
#! /bin/sh
2
#
3
#
4
TEST_BIN=./test-pobyso-is-monomial
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_fail "Testing: $ARGUMENTS"
38

    
39
ARGUMENTS="\"2\""
40
WHY=" ($ARGUMENTS is not a monomial)"
41
ok_if_fail "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="\"cos(pi)\""
61
WHY=" ($ARGUMENTS is a negative integer)"
62
ok_if_fail "Testing: $ARGUMENTS"
63

    
64
ARGUMENTS="\"x^sin(pi)\""
65
#WHY=" ($ARGUMENTS is not an integer)"
66
ok_if_ok "Testing: $ARGUMENTS"
67

    
68
##
69
ARGUMENTS="\"x^1.1\""
70
WHY=" ($ARGUMENTS is not an integer)"
71
ok_if_fail "Testing: $ARGUMENTS"
72

    
73
ARGUMENTS="\"x^ceil(1.1)\""
74
WHY=" ($ARGUMENTS is not an integer)"
75
ok_if_ok "Testing: $ARGUMENTS"
76

    
77
ARGUMENTS="\"x^(2/3)\""
78
WHY=" ($ARGUMENTS is not an integer)"
79
ok_if_fail "Testing: $ARGUMENTS"
80

    
81
ARGUMENTS="\"-1.1\""
82
WHY=" ($ARGUMENTS is not a positive integer)"
83
ok_if_fail "Testing: $ARGUMENTS"
84

    
85
ARGUMENTS="\"x^floor(-1.1)\""
86
WHY=" (\"floor(-1.1)\" is not a positive integer)"
87
ok_if_fail "Testing: $ARGUMENTS"
88

    
89
ARGUMENTS="\"x+2\""
90
WHY=" ($ARGUMENTS is not a monomial)"
91
ok_if_fail "Testing: $ARGUMENTS"
92

    
93
##
94
ARGUMENTS="\"4-2*x+4*x^2\""
95
WHY=" (expression not a monomial)"
96
ok_if_fail "Testing: $ARGUMENTS"
97

    
98
##
99
ARGUMENTS="\"yx+\""
100
WHY=" ($ARGUMENTS not expression)"
101
ok_if_fail "Testing: $ARGUMENTS"
102

    
103
##
104
ARGUMENTS="\"1/0\""
105
WHY=" ($ARGUMENTS not a number)"
106
ok_if_fail "Testing: $ARGUMENTS"
107

    
108
##
109
ARGUMENTS="\"exp(1000000)\""
110
WHY=" ($ARGUMENTS is too large)"
111
ok_if_fail "Testing: $ARGUMENTS"
112

    
113
ARGUMENTS="\"-exp(1000000)\""
114
WHY=" ($ARGUMENTS is too small)"
115
ok_if_fail "Testing: $ARGUMENTS"
116

    
117
ARGUMENTS="\"+infty\""
118
WHY=" ($ARGUMENTS is infinity)"
119
ok_if_fail "Testing: $ARGUMENTS"
120

    
121
ARGUMENTS="\"infty\""
122
WHY=" ($ARGUMENTS is infinity)"
123
ok_if_fail "Testing: $ARGUMENTS"
124

    
125
ARGUMENTS="\"-infty\""
126
WHY=" ($ARGUMENTS is infinity)"
127
ok_if_fail "Testing: $ARGUMENTS"
128

    
129
##
130
echo "Tests terminated without error."
131
echo