| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  | #!/bin/bash | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Run test cases using the media files and the js8 cli decoder | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | JS8=~/js8call-prefix/build/js8 | 
					
						
							| 
									
										
										
										
											2020-05-02 14:47:09 -04:00
										 |  |  | #JS8_ALT=/opt/js8call/bin/js8 | 
					
						
							| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | PWD=$(pwd) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | declare -i pass=0 | 
					
						
							|  |  |  | declare -i fail=0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for f in *.wav  | 
					
						
							|  |  |  | do | 
					
						
							|  |  |  |     MODE=$(echo $f | cut -f 1 -d '_') | 
					
						
							|  |  |  |     DEPTH=$(echo $f | cut -f 2 -d '_') | 
					
						
							|  |  |  |     EXPECTED=$(echo $f | cut -f 3 -d '_' | cut -f 1 -d '.') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     OUT=$($JS8 -8 -b $MODE -d $DEPTH $PWD/$f | tail -n 1 | awk '{print $(NF)}' | sed -E 's/\s//g') | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-02 14:47:09 -04:00
										 |  |  |     if [ "$JS8_ALT" != "" ]; then | 
					
						
							|  |  |  |         OUT_ALT=$($JS8_ALT -8 -b $MODE -d $DEPTH $PWD/$f | tail -n 1 | awk '{print $(NF)}' | sed -E 's/\s//g') | 
					
						
							|  |  |  |     fi | 
					
						
							| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-02 14:47:09 -04:00
										 |  |  |     echo -n $f... | 
					
						
							| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  |     if [ "$OUT" == "$EXPECTED" ]; then | 
					
						
							|  |  |  |         echo PASS. | 
					
						
							|  |  |  |         pass=$((pass+1)) | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |         echo FAIL got $OUT expected $EXPECTED; | 
					
						
							|  |  |  |         fail=$((fail+1)) | 
					
						
							| 
									
										
										
										
											2020-05-02 14:47:09 -04:00
										 |  |  |     fi | 
					
						
							| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-02 14:47:09 -04:00
										 |  |  |     if [ "$JS8_ALT" != "" ]; then | 
					
						
							|  |  |  |         echo "--> js8 alt got $OUT_ALT expected $EXPECTED" | 
					
						
							|  |  |  |         echo | 
					
						
							| 
									
										
										
										
											2020-05-02 14:14:16 -04:00
										 |  |  |     fi | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo --- | 
					
						
							|  |  |  | echo $((pass+fail)) total tests run | 
					
						
							|  |  |  | echo $pass passed | 
					
						
							|  |  |  | echo $fail failed | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | rm timer.out jt9_wisdom.dat |