1# Before `make install' is performed this script should be runnable with
2# `make test'.
3
4##################### We start with some black magic to print on failure.
5
6BEGIN { $| = 1; print "1..18\n"; }
7END {print "not ok 1\n" unless $loaded;}
8use Text::NSP::Measures::4D::MI::ll;
9$loaded = 1;
10print "ok 1\n";
11print "ok 2\n";
12
13######################### End of black magic.
14
15
16############ Computing TMI value for some count values.
17
18$ll_value = calculateStatistic(
19                                  n1111=>8,
20                                  n1ppp=>306,
21                                  np1pp=>83,
22                                  npp1p=>83,
23                                  nppp1=>57,
24                                  n11pp=>8,
25                                  n1p1p=>8,
26                                  n1pp1=>8,
27                                  np11p=>83,
28                                  np1p1=>56,
29                                  npp11=>56,
30                                  n111p=>8,
31                                  n11p1=>8,
32                                  n1p11=>8,
33                                  np111=>56,
34                                  npppp=>15180);
35
36if($ll_value >= 2221.772069 && $ll_value <=  2221.773000)
37{
38    print "ok 3\n";
39}
40else
41{
42    print "not ok 3\n";
43}
44
45############Error Code check for missing values
46
47%count_values = (n1ppp=>306,
48                 np1pp=>83,
49                 npp1p=>83,
50                 nppp1=>57,
51                 n11pp=>8,
52                 n1p1p=>8,
53                 n1pp1=>8,
54                 np11p=>83,
55                 np1p1=>56,
56                 npp11=>56,
57                 n111p=>8,
58                 n11p1=>8,
59                 n1p11=>8,
60                 np111=>56,
61                 npppp=>15180);
62
63$value = calculateStatistic(%count_values);
64
65$err = getErrorCode();
66if($err == 200)
67{
68  print "ok 4\n";
69}
70else
71{
72  print"not ok 4\n";
73}
74
75############Error Code check for missing values
76
77%count_values = (n1111=>8,
78                 np1pp=>83,
79                 npp1p=>83,
80                 nppp1=>57,
81                 n11pp=>8,
82                 n1p1p=>8,
83                 n1pp1=>8,
84                 np11p=>83,
85                 np1p1=>56,
86                 npp11=>56,
87                 n111p=>8,
88                 n11p1=>8,
89                 n1p11=>8,
90                 np111=>56,
91                 npppp=>15180);
92
93$value = calculateStatistic(%count_values);
94
95$err = getErrorCode();
96if($err == 200)
97{
98  print "ok 5\n";
99}
100else
101{
102  print"not ok 5\n";
103}
104############Error Code check for missing values
105
106%count_values = (n1111=>8,
107	         n1ppp=>306,
108                 npp1p=>83,
109                 nppp1=>57,
110                 n11pp=>8,
111                 n1p1p=>8,
112                 n1pp1=>8,
113                 np11p=>83,
114                 np1p1=>56,
115                 npp11=>56,
116                 n111p=>8,
117                 n11p1=>8,
118                 n1p11=>8,
119                 np111=>56,
120                 npppp=>15180);
121
122$value = calculateStatistic(%count_values);
123
124$err = getErrorCode();
125if($err == 200)
126{
127  print "ok 6\n";
128}
129else
130{
131  print"not ok 6\n";
132}
133
134############Error Code check for missing values
135
136%count_values = (n1111=>8,
137	         n1ppp=>306,
138                 np1pp=>83,
139                 npp1p=>83,
140                 n11pp=>8,
141                 n1p1p=>8,
142                 n1pp1=>8,
143                 np11p=>83,
144                 np1p1=>56,
145                 npp11=>56,
146                 n111p=>8,
147                 n11p1=>8,
148                 n1p11=>8,
149                 np111=>56,
150                 npppp=>15180);
151
152$value = calculateStatistic(%count_values);
153
154$err = getErrorCode();
155if($err == 200)
156{
157  print "ok 7\n";
158}
159else
160{
161  print"not ok 7\n";
162}
163
164############Error Code check for missing values
165%count_values = (n1111=>8,
166	         n1ppp=>306,
167                 np1pp=>83,
168                 npp1p=>83,
169                 nppp1=>57,
170                 n11pp=>8,
171                 n1p1p=>8,
172                 n1pp1=>8,
173                 np11p=>83,
174                 np1p1=>56,
175                 n111p=>8,
176                 n11p1=>8,
177                 n1p11=>8,
178                 np111=>56,
179                 npppp=>15180);
180
181$value = calculateStatistic(%count_values);
182
183$err = getErrorCode();
184if($err == 200)
185{
186  print "ok 8\n";
187}
188else
189{
190  print"not ok 8\n";
191}
192
193
194############Error Code check for missing values
195%count_values = (n1111=>8,
196	         n1ppp=>306,
197                 np1pp=>83,
198                 npp1p=>83,
199                 nppp1=>57,
200                 n11pp=>8,
201                 n1p1p=>8,
202                 n1pp1=>8,
203                 np11p=>83,
204                 np1p1=>56,
205                 npp11=>56,
206                 n111p=>8,
207                 n1p11=>8,
208                 np111=>56,
209                 npppp=>15180);
210
211$value = calculateStatistic(%count_values);
212
213$err = getErrorCode();
214if($err == 200)
215{
216  print "ok 9\n";
217}
218else
219{
220  print"not ok 9\n";
221}
222
223
224############Error Code check for missing values
225%count_values = (n1111=>8,
226	         n1ppp=>306,
227                 np1pp=>83,
228                 npp1p=>83,
229                 nppp1=>57,
230                 n11pp=>8,
231                 n1p1p=>8,
232                 n1pp1=>8,
233                 np11p=>83,
234                 np1p1=>56,
235                 npp11=>56,
236                 n111p=>8,
237                 n11p1=>8,
238                 n1p11=>8,
239                 npppp=>15180);
240
241$value = calculateStatistic(%count_values);
242
243$err = getErrorCode();
244if($err == 200)
245{
246  print "ok 10\n";
247}
248else
249{
250  print"not ok 10\n";
251}
252
253############Error Code check for missing values
254%count_values = (n1111=>8,
255	         n1ppp=>306,
256                 np1pp=>83,
257                 npp1p=>83,
258                 nppp1=>57,
259                 n11pp=>8,
260                 n1p1p=>8,
261                 n1pp1=>8,
262                 np11p=>83,
263                 np1p1=>56,
264                 npp11=>56,
265                 n111p=>8,
266                 n11p1=>8,
267                 n1p11=>8,
268                 np111=>56);
269
270$value = calculateStatistic(%count_values);
271
272$err = getErrorCode();
273if($err == 200)
274{
275  print "ok 11\n";
276}
277else
278{
279  print"not ok 11\n";
280}
281
282
283############Error Code check for -ve values
284%count_values = (n1111=>-8,
285	         n1ppp=>306,
286                 np1pp=>83,
287                 npp1p=>83,
288                 nppp1=>57,
289                 n11pp=>8,
290                 n1p1p=>8,
291                 n1pp1=>8,
292                 np11p=>83,
293                 np1p1=>56,
294                 npp11=>56,
295                 n111p=>8,
296                 n11p1=>8,
297                 n1p11=>8,
298                 np111=>56,
299                 npppp=>15180);
300
301$value = calculateStatistic(%count_values);
302
303$err = getErrorCode();
304if($err == 201)
305{
306  print "ok 12\n";
307}
308else
309{
310  print"not ok 12\n";
311}
312
313############Error Code check for -ve values
314%count_values = (n1111=>8,
315	         n1ppp=>-306,
316                 np1pp=>83,
317                 npp1p=>83,
318                 nppp1=>57,
319                 n11pp=>8,
320                 n1p1p=>8,
321                 n1pp1=>8,
322                 np11p=>83,
323                 np1p1=>56,
324                 npp11=>56,
325                 n111p=>8,
326                 n11p1=>8,
327                 n1p11=>8,
328                 np111=>56,
329                 npppp=>15180);
330
331$value = calculateStatistic(%count_values);
332$err = getErrorCode();
333if($err == 202)
334{
335  print "ok 13\n";
336}
337else
338{
339  print"not ok 13\n";
340}
341
342
343############Error Code check for -ve values
344%count_values = (n1111=>8,
345	         n1ppp=>306,
346                 np1pp=>83,
347                 npp1p=>83,
348                 nppp1=>57,
349                 n11pp=>8,
350                 n1p1p=>8,
351                 n1pp1=>8,
352                 np11p=>83,
353                 np1p1=>56,
354                 npp11=>56,
355                 n111p=>8,
356                 n11p1=>8,
357                 n1p11=>8,
358                 np111=>56,
359                 npppp=>-15180);
360
361$value = calculateStatistic(%count_values);
362$err = getErrorCode();
363if($err == 201)
364{
365  print "ok 14\n";
366}
367else
368{
369  print"not ok 14\n";
370}
371
372
373############Error Code check invalid values
374%count_values = (n1111=>80,
375	         n1ppp=>306,
376                 np1pp=>83,
377                 npp1p=>83,
378                 nppp1=>57,
379                 n11pp=>8,
380                 n1p1p=>8,
381                 n1pp1=>8,
382                 np11p=>83,
383                 np1p1=>56,
384                 npp11=>56,
385                 n111p=>8,
386                 n11p1=>8,
387                 n1p11=>8,
388                 np111=>56,
389                 npppp=>15180);
390
391$value = calculateStatistic(%count_values);
392$err = getErrorCode();
393if($err == 202)
394{
395  print "ok 15\n";
396}
397else
398{
399  print"not ok 15\n";
400}
401
402
403############Error Code check invalid values
404%count_values = (n1111=>8,
405	         n1ppp=>30,
406                 np1pp=>830,
407                 npp1p=>83,
408                 nppp1=>57,
409                 n11pp=>8,
410                 n1p1p=>8,
411                 n1pp1=>8,
412                 np11p=>83,
413                 np1p1=>56,
414                 npp11=>56,
415                 n111p=>8,
416                 n11p1=>8,
417                 n1p11=>8,
418                 np111=>560,
419                 npppp=>15180);
420
421$value = calculateStatistic(%count_values);
422
423$err = getErrorCode();
424if($err == 202)
425{
426  print "ok 16\n";
427}
428else
429{
430  print"not ok 16\n";
431}
432
433
434############Error Code check invalid values
435%count_values = (n1111=>8,
436	         n1ppp=>306,
437                 np1pp=>83,
438                 npp1p=>83,
439                 nppp1=>57000,
440                 n11pp=>8,
441                 n1p1p=>8,
442                 n1pp1=>8,
443                 np11p=>83,
444                 np1p1=>56,
445                 npp11=>56,
446                 n111p=>8,
447                 n11p1=>8,
448                 n1p11=>8,
449                 np111=>56,
450                 npppp=>15180);
451
452$value = calculateStatistic(%count_values);
453
454$err = getErrorCode();
455if($err == 201)
456{
457  print "ok 17\n";
458}
459else
460{
461  print"not ok 17\n";
462}
463
464
465############## Checking Error code for -ve observed frequency
466%count_values = (n1111=>8,
467	         n1ppp=>306,
468                 np1pp=>83,
469                 npp1p=>83,
470                 nppp1=>57,
471                 n11pp=>8,
472                 n1p1p=>8,
473                 n1pp1=>8,
474                 np11p=>83,
475                 np1p1=>56,
476                 npp11=>56,
477                 n111p=>8,
478                 n11p1=>8,
479                 n1p11=>8,
480                 np111=>5600,
481                 npppp=>15180);
482$value = calculateStatistic(%count_values);
483$err = getErrorCode();
484if($err==202)
485{
486    print "ok 18\n";
487}
488else
489{
490    print "not ok 18\n";
491}
492